🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Google Drive to Google Sheets, ranked CV shortlist

Lisa Granqvist Partner Workflow Automation Expert

CV screening breaks the moment volume shows up. One person skims faster, another person goes deep, and suddenly “top candidates” depends on who had time that day.

This CV screening automation hits HR teams first, but recruiters and hiring managers feel it too. You get a ranked shortlist in Google Sheets, so you’re not rereading the same resume three times or arguing about gut feel in Slack.

This workflow takes new CV uploads, extracts the text, evaluates job fit with AI, and keeps one sorted sheet you can trust. You’ll see how it works, what you need, and where teams usually get tripped up.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Google Drive to Google Sheets, ranked CV shortlist

The Problem: CV Screening Becomes Inconsistent (Fast)

When applications come in, the first pass is supposed to be quick. In reality, it turns into a messy mix of file downloads, copy-pasting, and “I’ll come back to this one later.” A CV might look strong, but the answers in the application form tell a different story, so you open two tabs and try to mentally reconcile them. Then someone else reviews the same candidate and scores them in a totally different way. It’s not just slow. It’s hard to defend.

The friction compounds, especially once you’re hiring for more than one role at a time.

  • Reviewers use different criteria, so “good” means something new every time.
  • PDF resumes aren’t easy to compare, and the key details get missed during skims.
  • Form answers and CVs live in separate places, which means context gets lost.
  • Even if you track candidates in a sheet, sorting and re-sorting becomes a weekly chore.

The Solution: Auto-Score Every CV and Maintain a Ranked Shortlist

This workflow turns your “first-pass screening” into something consistent and repeatable. When a candidate submits a form (including their CV upload), the file is stored in Google Drive, pulled back into the workflow, and converted from PDF into plain text you can actually evaluate. That resume text is then merged with the candidate’s form answers, so the workflow evaluates the whole picture instead of just scanning one document. Next, an AI scoring step reviews skills, experience, and responses against your criteria and returns structured scores (job-fit, consistency, plus a final score). Those results get parsed, formatted, and appended to Google Sheets. Finally, the sheet is reloaded and re-written in ranked order so the best candidates float to the top automatically.

The workflow starts with your form intake trigger and a Drive upload. AI handles the comparison and scoring using the combined form + CV payload. Google Sheets becomes the single shortlist you open every day, already ordered by score.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you get 25 applications for a role in a week. Manually, a “quick” first review is maybe 10 minutes per candidate once you download the PDF, skim it, cross-check the form answers, then type notes into a sheet (about 4 hours total). With this workflow, you’re mostly waiting on processing: the trigger fires instantly, extraction + AI scoring typically finishes in about 2 minutes per candidate, and the ranked sheet updates on its own. You still review humans like a human, but the tedious part is gone, which usually gives you a few hours back every hiring cycle.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Drive to store and retrieve uploaded CVs.
  • Google Sheets to keep a ranked shortlist for review.
  • Google Gemini API credentials (get it from Google AI Studio / your Google Cloud project).

Skill level: Intermediate. You’ll mostly be connecting accounts and adjusting the scoring prompt to match your role requirements.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

Form submission kicks everything off. When a candidate submits your form (with answers plus a CV upload), the workflow triggers immediately.

The CV gets stored, retrieved, and converted. n8n saves the uploaded file to Google Drive, pulls it back, then extracts the resume text from the PDF so it can be evaluated reliably.

AI scores the candidate against your criteria. The workflow merges resume text with the form responses, builds a clean comparison payload, and sends it into the AI evaluation step (Gemini chat model) to generate job-fit, consistency, and a final score with a short rationale.

Google Sheets becomes your live shortlist. The workflow appends the formatted summary to your sheet, fetches all rows, orders them by score, then rewrites the ranked list so the top candidates stay on top.

You can easily modify the scoring rubric to match different roles, so the same workflow works for sales hires, ops hires, or technical roles. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Form Trigger

Set up the form that captures candidate data and the CV file upload.

  1. Add the Form Intake Trigger node and set Form Title to Senior Software Engineer Application.
  2. Set Form Description to Fill out the details and upload your CV.
  3. Configure form fields: Name, Email, Skills (textarea), Job History (textarea), and Upload CV (file, .pdf only).
  4. Keep the Form Intake Trigger connected to Store CV in Drive and Combine Form and CV as parallel outputs.

Form Intake Trigger outputs to both Store CV in Drive and Combine Form and CV in parallel.

Step 2: Connect Google Drive for CV Storage and Retrieval

Store the uploaded CV and then download it for text extraction.

  1. In Store CV in Drive, set Name to ={{ $json['Upload CV'] }} and Input Data Field Name to Upload_CV.
  2. Choose the target Google Drive folder by setting Folder ID to your folder (replace [YOUR_ID]).
  3. Credential Required: Connect your googleDriveOAuth2Api credentials in Store CV in Drive.
  4. In Retrieve CV File, set Operation to download and File ID to ={{ $json.id }}.
  5. Credential Required: Connect your googleDriveOAuth2Api credentials in Retrieve CV File.

Step 3: Extract and Assemble CV + Form Data

Convert the PDF CV to text and merge it with form data into a unified payload.

  1. In Extract Resume Text, set Operation to pdf to extract text from the downloaded CV.
  2. In Combine Form and CV, set Mode to combine and Combine By to combineAll.
  3. In Assemble Comparison Payload, keep the provided JavaScript to output candidate_name, email_address, skills_claimed, job_history_claimed, and cv_actual_content.

Extract Resume Text outputs into Combine Form and CV, which then outputs to Assemble Comparison Payload.

Step 4: Set Up AI Evaluation and Parsing

Send the assembled data to the AI evaluator, then parse and format the results.

  1. In AI Evaluation & Scoring, keep Prompt Type as define and use the provided prompt text, which references {{ $json.candidate_name }}, {{ $json.email_address }}, {{ $json.skills_claimed }}, {{ $json.job_history_claimed }}, and {{ $json.cv_actual_content }}.
  2. Ensure Gemini Chat Model is connected as the language model for AI Evaluation & Scoring.
  3. Credential Required: Connect your googlePalmApi credentials in Gemini Chat Model (AI credentials are added to the model node, not the agent).
  4. In Parse AI Output, keep the JavaScript that extracts JSON from the AI response.
  5. In Format Score Summary, keep the JavaScript that maps fields to Candidate, Answer Quality, CV Match, Fit Summary, and Final Score.

Step 5: Configure Google Sheets Output and Ranking

Append scores to the sheet, then re-rank all rows by final score.

  1. In Append Score to Sheet, set Operation to append, Document ID to your sheet (replace [YOUR_ID]), and Sheet Name to Sheet1.
  2. Map the columns exactly as configured: candidate_name, email_address, Answers Quality, CV match, Fit Summary, and Final Score using the provided expressions like ={{ $json['Final Score'] }} and ={{ $('Assemble Comparison Payload').item.json.email_address }}.
  3. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Score to Sheet.
  4. In Fetch Sheet Rows, select the same Document ID and Sheet Name to retrieve all rows after appending.
  5. Credential Required: Connect your googleSheetsOAuth2Api credentials in Fetch Sheet Rows.
  6. In Order by Score, keep the JavaScript that sorts by final_score descending.
  7. In Reset Sheet Data, set Operation to clear to wipe existing rows before writing the ranked data.
  8. Credential Required: Connect your googleSheetsOAuth2Api credentials in Reset Sheet Data and Write Ranked Rows.

Append Score to Sheet outputs to Fetch Sheet Rows, then Order by Score outputs to Reset Sheet Data, which outputs to Write Ranked Rows.

Step 6: Test and Activate Your Workflow

Run a full test with a sample CV to validate the end-to-end scoring and ranking.

  1. Click Execute Workflow and submit the Form Intake Trigger with a PDF CV.
  2. Confirm that Store CV in Drive uploads the file and Retrieve CV File downloads it successfully.
  3. Check that AI Evaluation & Scoring returns JSON, Parse AI Output extracts scores, and Append Score to Sheet adds a new row.
  4. Verify that Write Ranked Rows rewrites the sheet in descending score order.
  5. Once successful, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Drive credentials can expire or need specific permissions. If things break, check the n8n credential connection status and the Drive folder access first.
  • If you add Wait nodes (or you’re processing large PDFs), timing can get weird. Increase the wait duration if the AI step runs before resume text extraction finishes.
  • Your AI prompt will decide whether scoring is useful or annoying. Default prompts are generic, so bake in the job requirements early or you will be editing every summary by hand.

Frequently Asked Questions

How long does it take to set up this CV screening automation automation?

About an hour if your form, Drive folder, and sheet are ready.

Do I need coding skills to automate CV screening automation?

No. You’ll connect Google accounts and paste in your evaluation criteria. The only “technical” part is tweaking the AI prompt so scoring matches the role.

Is n8n free to use for this CV screening automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Gemini API usage costs, which depend on how long the resumes are and how detailed your prompt is.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this CV screening automation workflow for different roles?

Yes, and you should. Update the rubric inside the AI Evaluation & Scoring step so it reflects the job description for each role. Common tweaks include weighting specific skills, adding an education category, and setting clear pass/fail rules for must-have requirements.

Why is my Google Drive connection failing in this workflow?

Most of the time it’s expired OAuth access or missing folder permissions. Reconnect Google Drive in n8n, then confirm the workflow can read the exact folder where uploads land. Also check that the trigger is passing the correct file ID; if it’s blank, the retrieve step will fail even though the file exists. If you’re processing a lot of candidates at once, rate limits can show up too, so spacing executions can help.

How many applications can this CV screening automation handle?

Plenty for most small teams. On n8n Cloud, your limit depends on the plan’s monthly executions, and self-hosting depends on your server. In practice, AI scoring is the bottleneck, so if you’re processing hundreds of long CVs in a short window, you may want to queue them or run off-hours.

Is this CV screening automation better than using Zapier or Make?

Often, yes, because this workflow isn’t just “send file here, write row there.” You need merging, parsing, sorting, and a multi-step AI evaluation that’s easier to control in n8n. n8n also gives you a self-hosted path when you want unlimited runs and tighter data control, which matters with candidate info. Zapier and Make can work, but the moment you add robust scoring logic, things get brittle and pricey. If you want a second opinion, Talk to an automation expert and we’ll help you pick the simplest option that still holds up.

Once this is running, your shortlist stays ranked without anyone babysitting a spreadsheet. Honestly, it makes hiring discussions calmer because you’re reacting to the same scoring logic, not whoever skimmed fastest.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal