Save Time Hiring with AI: Automate Screening, Assessments & Interviews
## AI Recruitment Automation Pipeline - Resume Parsing, GPT-4 Evaluation, Assessment Triggers & Interview Scheduling
This end-to-end **AI-powered recruitment automation workflow** helps HR and talent acquisition teams automate the complete hiring pipeline—from **resume intake and parsing** to **GPT-4-based evaluation**, **AI approvals**, **assessment delivery**, and **interview scheduling**.
Built using **n8n**, this template integrates with **OpenAI GPT-4**, **Google Sheets**, **Google Drive**, **Slack**, and **SMTP** to reduce time-to-hire, improve candidate quality, and eliminate repetitive manual tasks. The workflow enables scalable, consistent, and intelligent decision-making by automating resume evaluation, semantic fit analysis, and candidate communication.
This template is ideal for **recruiters**, **AI teams**, and **founders** looking to optimize hiring for tech, sales, support, and other roles with high applicant volume.
---
### Who is this for?
- HR and AI teams handling high-volume recruitment
- Startups and SMBs looking to reduce hiring time and cost
- Hiring managers seeking to automate CV parsing and candidate evaluation
---
### What problem does this solve?
- Eliminates manual resume screening
- Sends real-time updates to AI team on assessment completion
- Automates assessments, scoring, and interview scheduling
- Keeps candidate communication consistent and timely
---
### What this workflow does
#### Smart Resume Intake Form
- Collects candidate data: name, email, phone, LinkedIn, job role, and CV (PDF).
- Custom-designed UI with branding-ready CSS.
#### PDF Resume Parsing & Storage
- CV is uploaded to a dedicated **Google Drive** folder.
- Resume text is extracted for semantic analysis.
#### AI-Based Candidate Evaluation (GPT-4 via LangChain)
- Extracts: City, Education, Job History, Skills.
- Summarizes candidate profile (100 words).
- Retrieves and summarizes job description from **Google Sheets**.
- Performs detailed evaluation:
- Semantic fit scoring (0-100%)
- Key matches and skill gaps
- Soft skills extraction
- Red flag detection (job-hopping, missing info)
- Final score (1-10) with rationale
#### Google Sheets Integration
- Logs and updates candidate data at each stage: `CV Submitted → Scored → Shortlisted → Assessment Sent → Interview Scheduled → Rejected`
#### AI Approval via Email (Send & Wait)
- AI receives evaluation summary and gives one-click **approve/reject**.
- Approved → Status: Resume Selected
- Rejected → Status: Resume Rejected
#### Assessment Trigger (Post Approval)
- Sends assessment link to shortlisted candidates.
- Notifies AI via **Slack and Email** when assessment is submitted.
#### Interview Scheduling
- Sends **Calendly link** for self-scheduled interview booking.
- Candidate receives detailed next-step instructions.
#### Status-Based Candidate Emails
- Automatically sends:
- Shortlisting confirmation + interview setup
- Rejection email with branded message
---
### Business Benefits
- **Save 80%+ time** spent on manual resume reviews and coordination
- **Reduce cost-per-hire** by eliminating manual tasks
- **Improve hiring accuracy** with structured, AI-based decision-making
- **Scalable recruitment** for 100s of candidates per week
- **Enhance candidate experience** with instant status updates
- **Centralize data** in Google Sheets for full team visibility
---
### Setup Instructions
#### 1. Google Service Account Setup (One-time)
Before using Google Sheets or Google Drive in n8n:
- Go to [Google Cloud Console](https://console.cloud.google.com/).
- Create a **Service Account** under your project.
- Enable these APIs:
- Google Sheets API
- Google Drive API
- Download the **JSON credentials** for the service account.
- IMPORTANT: Share your target Google Sheets and Docs with the **service account email** (e.g., `your-service-account@your-project.iam.gserviceaccount.com`).
---
#### Add Applicants Details to Google Sheet
- **Document**: Select the `Profiles` Google Sheet document.
- **Sheet**: Select the `Applicants Details` sheet.
- **Fields to Map**:
- `EMAIL`: `{{ $(On form submission).item.json.Email }}`
- `DATE`: `{{ $now.format(dd-MM-yyyy) }}`
- `NAME`: `{{ $(On form submission).item.json.Name }}`
- `LINKEDIN URL`: `{{ $(On form submission).item.json[LinkedIn Profile URL] }}`
- `JOB PROFILE`: `{{ $(On form submission).item.json[Job Openings] }}`
- `STATUS`: `CV SUBMITTED`
- `LAST UPDATED DATE`: `{{ $now.format(dd-MM-yyyy hh:mm:ss) }}`
---
#### Extract Applicants Resume Text
- **Text**: `{{ $(Extract from File).item.json.text }}`
---
#### Get Job Description from Google Sheet
- **Document**: `Profiles`
- **Sheet**: `Job Openings`
- **Filter**:
- **Column**: `Job Profile`
- **Value**: `{{ $(On form submission).item.json[Job Openings] }}`
---
#### Save Evaluation Results in Google Sheets
- **Document**: `Profiles`
- **Sheet**: `Applicants Details`
n8nFree