This workflow automatically detects duplicate job applicants by checking incoming emails from Gmail against existing records in Google Sheets.
If a candidate's email is already found in the sheet, it sends an alert to Slack; otherwise, it adds the candidate to the sheet.
Label candidate emails in Gmail with a label like applicant
Connect Gmail, Google Sheets, and Slack credentials in n8n
Create a Google Sheet with these columns:
candidate_name
, candidate_email
, candidate_phone
, role_applied
, years_of_experience
, recruiter
, resume_url
, source_email
Import the workflow JSON
Update:
Activate the workflow
chat:write
scopeUse Case | Description |
---|---|
Resume deduplication | Avoid processing the same applicant twice |
Auto Slack alert | Instantly notify recruiter of repeat candidates |
Centralized tracking | Keep candidate records in Sheets for filtering/export |
Passive sourcing | Run hourly checks on labeled Gmail inboxes |
Issue | Possible Cause | Solution |
---|---|---|
Slack message not sent | Invalid Slack token / channel not selected | Reauthorize Slack connection and select correct user/channel |
Google Sheet not updated | Sheet ID or tab name is incorrect | Double-check the Sheet URL and worksheet tab |
Email data not extracted | Email body format doesn’t match regex | Adjust regex in the "Code" node |
Nothing happens | Gmail label or date filter is too strict | Ensure emails exist with the right label in the last X minutes |
Need help setting it up or tweaking regex for your custom email format? We’re happy to help — just ask!
Want to add phone number duplication checks or auto-resume upload to Google Drive? Our Automation team at WeblineIndia can guide you step-by-step.