# Automate Bulk Resume Screening and JD Matching

> Upload candidate resumes and let GPT-4 parse, score, and rank each one against a selected job description. Results log to Google Sheets and notify your team on Slack.

- URL: https://www.automongo.com/automations/bulk-resume-screening-jd-matching/
- Summary: Screen multiple resumes against job descriptions using GPT-4 and n8n with Slack alerts.
- Tools: n8n
- Difficulty: Advanced
- Category: HR
- Tags: resume-screening, gpt-4, google-sheets, google-drive, slack
- Published: 2026-11-13
- External resource: https://n8n.io/workflows/6680-bulk-resume-screening-and-jd-matching-with-gpt-4-for-hr-teams/?ref=ez5zfu33yh5f&utm_source=affiliate

## How It Works

HR or talent acquisition uploads multiple candidate resumes and selects a job role. The workflow stores each resume in Google Drive, parses it with GPT-4 to extract structured profile data, then retrieves the matching job description from Google Sheets and Drive. An AI agent compares the profile against the JD to produce a fit score, a strengths and gaps analysis, and a final recommendation. Results are appended to an evaluation tracking sheet and shared with the hiring team on Slack.

### Setup Steps

1. **Import the Workflow**: Clone or import the workflow into your n8n instance (self-hosted or cloud).
2. **Connect Google Services**: Link Google Sheets for position mapping and evaluation results, and Google Drive for CV and JD file storage.
3. **Configure OpenAI API**: Add your GPT-4 API credentials to the profile parser and JD evaluator agent nodes.
4. **Set Up Slack Notifications**: Connect your Slack workspace bot token to receive candidate evaluation alerts.
5. **Prepare Drive Folders**: Create a `/cv` folder for uploaded resumes and a `/jd` folder for job description PDFs.
6. **Update Sheets Structure**: Configure the Positions sheet to map job roles to JD file links, and the Evaluation form sheet to store screening results.

### Video Walkthrough

<div style="position:relative;padding-top:56.25%;margin:1.5rem 0;border:4px solid black;">
  <iframe
    src="https://www.youtube.com/embed/MD1krFvVKdU"
    title="Bulk Resume Screening and JD Matching walkthrough"
    style="position:absolute;inset:0;width:100%;height:100%;"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen></iframe>
</div>

### Automation Workflow

```
Upload Resumes → Google Drive Storage
                       ↓
               GPT-4 Resume Parser → Structured Profile Data
                       ↓
            Google Sheets → Retrieve Job Description
                       ↓
               JD Download and Parse from Drive
                       ↓
            AI Agent: Profile vs. JD Evaluation
              (Fit Score + Strengths + Gaps)
                       ↓
             ┌─────────┴──────────┐
       Candidate Qualified    Not Qualified
             ↓                      ↓
       Log to Sheets          Log to Sheets
       Notify on Slack        Send Rejection Email
       Send Invite Email
```

### Benefits

- **Time Savings**: Process dozens of resumes in minutes instead of hours of manual review.
- **Consistent Evaluation**: Every candidate is scored against the same criteria, reducing subjective bias in initial screening.
- **Structured Output**: Fit scores, strengths, and gaps are logged to Google Sheets for easy comparison and auditing.
- **Real-Time Team Updates**: Slack notifications keep hiring managers informed as evaluations complete.
- **Scalable Pipeline**: Handle multiple open positions by adding new job descriptions to the Positions sheet.

### Advanced Features

- Configurable fit score threshold in the Candidate qualified? node to control shortlisting sensitivity.
- Automatic email routing sends interview invitations to qualified candidates and polite rejections to others.
- Swap GPT-4 for Claude or Gemini without changing the workflow structure.
- Webhook trigger option for direct ATS or job board integration.
- Multi-position batch screening by expanding the Positions sheet with additional roles.

### Use Cases

- HR teams screening 50+ applicants per open role and needing a ranked shortlist within hours.
- Staffing agencies matching contractor profiles against multiple client job descriptions simultaneously.
- Startups without a dedicated recruiter that need AI-assisted first-pass candidate filtering.
- Talent acquisition leads who want auditable evaluation records for compliance or internal review.
- Remote-first companies processing international resumes across different formats and languages.
