Automate Resume Screening with n8n and Google Gemini AI

This workflow automates resume screening by converting candidate PDFs into images and analyzing them with Google’s Gemini AI, preventing manipulation of applicant tracking systems and saving recruiting time.
googledrive
httpRequest
lmChatGoogleGemini
+6
Learn how to Build this Workflow with AI:
Workflow Identifier: 1532
NODES in Use: Manual Trigger, Sticky Note, Google Drive, HTTP Request, Edit Image, Langchain Google Gemini, Langchain Chain LLM, Langchain Output Parser Structured, IF

Press CTRL+F5 if the workflow didn't load.

Visit through Desktop for Best experience

Opening Problem Statement

Meet Sarah, a busy recruitment manager at a construction company looking to hire a skilled plumber. Every week, she faces the tedious task of sifting through dozens of candidate resumes submitted as PDFs. Some candidates cleverly embed hidden prompts in their resumes, aiming to trick automated Applicant Tracking Systems (ATS) into giving a false positive — making unqualified candidates appear suitable. This wastes Sarah’s time scheduling interviews with unfit applicants, costing her team hours weekly and risking poor hiring decisions.

Sarah needs an automated way to accurately evaluate resumes that goes beyond simple text parsing and can outsmart these hidden prompt manipulations. This is where the n8n workflow using Google Gemini AI’s vision capabilities shines.

What This Automation Does

This custom-built n8n workflow streamlines the candidate evaluation process by:

  • Automatically downloading the candidate’s resume PDF from Google Drive.
  • Converting the PDF into a high-quality image using the Stirling PDF API, making it suitable for vision-based AI analysis.
  • Resizing the image to optimize processing speed without losing critical detail.
  • Feeding the image to Google Gemini’s multimodal large language model that “reads” the resume like a human, detecting hidden tricks or manipulative content.
  • Parsing the AI’s structured response to decide if the candidate qualifies for the next hiring stage.
  • Automatically branching the workflow based on the AI’s recommendation, enabling further automation downstream.

This saves Sarah potentially hours every week by automating a highly complex screening task that traditional ATS tools struggle to handle, particularly with resumes designed to bypass automation.

Prerequisites ⚙️

  • n8n account (cloud-hosted or self-hosted) 🔌
  • Google Drive account with the candidate resumes stored (Google Drive node) 📁
  • Access to a Stirling PDF API instance for PDF-to-image conversion (HTTP Request node) 🔐
  • Google Gemini AI API credentials for advanced multimodal processing (Langchain Google Gemini node) 🔑

Optional: For privacy, you can self-host Stirling PDF and n8n (see hostinger guides for self-hosting).

Step-by-Step Guide

Step 1: Triggering the Workflow Manually

Navigate to your n8n dashboard, open this workflow, then click the Test Workflow button which triggers the Manual Trigger node named “When clicking ‘Test workflow’”. You should see the workflow run start in the executions panel.

Common mistake: Forgetting to start the test manually, which means no data flows through.

Step 2: Download Candidate Resume from Google Drive

Open the Download Resume (Google Drive node). Ensure the fileId matches the candidate resume PDF you want to evaluate. For example, in this workflow, it uses the file ID 1MORAdeev6cMcTJBV2EYALAwll8gCDRav which points to a sample resume injected with a hidden prompt.

Test the credentials and file access to confirm successful download. After running, you should get the raw PDF data.

Common mistake: Using an incorrect or expired Google Drive file ID leads to download failure.

Step 3: Convert PDF to Image using Stirling PDF HTTP API

Open the PDF-to-Image API node (HTTP Request). This node sends a POST request to Stirling PDF’s API endpoint https://stirlingpdf.io/api/v1/convert/pdf/img.

The body is multipart/form-data including:

  • fileInput – the binary PDF from the previous node
  • imageFormat set to jpg
  • singleOrMultiple set to single to convert only one image
  • dpi at 300 for good resolution

After execution, the node returns a high-quality image from the PDF suitable for vision AI.

Common mistake: Forgetting to set sendBody true or formatting the multipart form incorrectly blocks conversion.

Step 4: Resize Converted Image for Processing Efficiency

Open the Resize Converted Image (Edit Image node). Here you change image size using the resize option set to percent, specifically resizing down to 75% width and height.

This drastically speeds up AI processing while maintaining enough detail to evaluate.

Common mistake: Resizing too small causes loss of key info; too large slows workflow.

Step 5: Analyze Resume Image with Google Gemini AI

Review the Candidate Resume Analyser (Langchain ChainLLM node). This node is configured with a prompt instructing Google Gemini to assess if the candidate fits the plumber role and qualifies for an in-person interview.

The workflow uses the Gemini model models/gemini-1.5-pro-latest defined in the Google Gemini Chat Model node linked in the AI language model input.

The input to the AI is the resized image binary data representing the resume.

Common mistake: Missing valid API credentials for Google Gemini causes errors.

Step 6: Parse AI Response into Structured Data

The AI’s JSON response (like {"is_qualified": true, "reason": ""}) is passed to the Structured Output Parser (Langchain outputParserStructured node) which converts the chat response into structured JSON for workflow decision making.

Common mistake: Mismatch between AI output format and JSON schema breaks parsing.

Step 7: Conditional Branching Based on Qualification

The Should Proceed To Stage 2? (IF node) evaluates the structured data. It checks if is_qualified is true. If yes, the workflow continues to the next automation stage—perhaps scheduling interviews or notifying HR.

Common mistake: Incorrect condition logic in the IF node skips qualified candidates.

Customizations ✏️

  • Change Candidate Role: Edit the prompt in the Candidate Resume Analyser node to assess for roles other than plumber by replacing “the role of Plumber” with your target job title.
  • Use Multiple Pages: Adjust the Stirling PDF API to set singleOrMultiple to “multiple” if your resumes have more than one page to convert all pages to images for thorough analysis.
  • Integrate Email Input: Replace the Manual Trigger with a Gmail trigger node to process resumes received by email automatically.
  • Set Custom Image Resize: Modify the Resize Converted Image node to change the percentage to balance resolution and speed as needed.
  • Outputs for Reporting: Add nodes like Google Sheets or Slack to report candidate qualification results in real time.

Troubleshooting 🔧

Problem: “Download Resume node fails to get file”
Cause: Incorrect Google Drive file ID or permissions.
Solution: Verify fileId parameter, ensure OAuth credentials have read access, and test connectivity.

Problem: “PDF-to-Image API returns 400 Bad Request”
Cause: Malformed multipart form data or missing PDF binary.
Solution: Check HTTP request body parameters, make sure ‘fileInput’ is set correctly as binary input data.

Problem: “AI node returns parsing errors”
Cause: AI response does not match JSON schema in output parser.
Solution: Make sure the AI prompt is framed to return the expected structured JSON, and update JSON schema if needed.

Pre-Production Checklist ✅

  • Confirm Google Drive credentials and access to the candidate resume PDF.
  • Verify Stirling PDF API endpoint availability and your API key or instance setup.
  • Test Google Gemini API credentials and connectivity.
  • Run a full test workflow with the included sample resume containing the hidden prompt to confirm correct handling.
  • Backup your workflow and document your API keys securely.

Deployment Guide

Once tested, activate your workflow from the n8n editor. You may schedule this to run on a cron trigger or attach other triggers like email or ATS webhooks for automated real-time candidate screening.

Monitor executions in n8n’s dashboard to track success or catch errors.

FAQs

Q: Can I replace Google Gemini with another AI?
A: Yes, as long as the alternative supports multimodal inputs (images) and integrates with Langchain in n8n.

Q: Will this workflow consume a lot of API credits?
A: Google Gemini and Stirling PDF API calls are billable, so monitor usage carefully especially at scale.

Q: Is my data safe when using public Stirling PDF?
A: For sensitive data, self-hosting the Stirling PDF instance is recommended to maintain privacy.

Conclusion

By implementing this intelligent resume screening workflow, you’ve equipped yourself to handle tricky candidate PDFs that might otherwise manipulate ATS systems. With automated PDF conversion, image-based AI analysis, and smart decision branches, you save valuable recruiting time and improve hiring accuracy. Next, consider automating interview scheduling or integrating with your HRIS for a complete end-to-end recruitment automation pipeline. Keep iterating, and happy automating!

Related Workflows

Automate Viral UGC Video Creation Using n8n + Degaus (Beginner-Friendly Guide)

Learn how to automate viral UGC video creation using n8n, AI prompts, and Degaus. This beginner-friendly guide shows how to import, configure, and run the workflow without technical complexity.
Form Trigger
Google Sheets
Gmail
+37
Free

AI SEO Blog Writer Automation in n8n (Beginner Guide)

A complete beginner guide to building an AI-powered SEO blog writer automation using n8n.
AI Agent
Google Sheets
httpRequest
+5
Free

Automate CrowdStrike Alerts with VirusTotal, Jira & Slack

This workflow automates processing of CrowdStrike detections by enriching threat data via VirusTotal, creating Jira tickets for incident tracking, and notifying teams on Slack for quick response. Save hours daily by transforming complex threat data into actionable alerts effortlessly.
scheduleTrigger
httpRequest
jira
+5
Free

Automate Telegram Invoices to Notion with AI Summaries & Reports

Save hours on financial tracking by automating invoice extraction from Telegram photos to Notion using Google Gemini AI. This workflow extracts data, records transactions, and generates detailed spending reports with charts sent on schedule via Telegram.
lmChatGoogleGemini
telegramTrigger
notion
+9
Free

Automate Email Replies with n8n and AI-Powered Summarization

Save hours managing your inbox with this n8n workflow that uses IMAP email triggers, AI summarization, and vector search to draft concise replies requiring minimal review. Automate business email processing efficiently with AI guidance and Gmail integration.
emailReadImap
vectorStoreQdrant
emailSend
+12
Free

Automate Email Campaigns Using n8n with Gmail & Google Sheets

This n8n workflow automates personalized email outreach campaigns by integrating Gmail and Google Sheets, saving hours of manual follow-up work and reducing errors in email sequences. It ensures timely follow-ups based on previous email interactions, optimizing communication efficiency.
googleSheets
gmail
code
+5
Free