🔓 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 Sheets + Vapi.ai: pre-screen calls logged clean

Lisa Granqvist Partner Workflow Automation Expert

You finally get candidates flowing in, then your team stalls out on the same thing every time: chasing basic details, taking messy notes, and fixing spreadsheets after the fact. One missed “expected CTC” or “notice period” turns into another follow-up call and a pipeline you can’t trust.

This Sheets Vapi automation hits recruiters first. But HR ops and agency owners running high-volume roles feel it too, because the admin work grows faster than headcount. The outcome is simple: candidates get an automated pre-screen call, and your Google Sheet gets clean, structured answers in the right columns.

Below, you’ll see how the workflow runs, what it replaces, and what you’ll need to get it live without turning your hiring process into a science project.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Google Sheets + Vapi.ai: pre-screen calls logged clean

The Challenge: Pre-screening details end up scattered and wrong

Early-stage screening should be quick. In reality, it’s a constant loop of “Can you share your current CTC?”, “What’s your notice period?”, and “Are you open to relocating?” across calls, WhatsApp, and email threads. Someone writes notes in a hurry, another person later tries to interpret them, and the spreadsheet becomes a mix of blanks, guesses, and inconsistent formatting. After a week, you’re not sure which candidates are actually viable. Honestly, the worst part is the mental load of re-checking everything before sending candidates to the hiring manager.

It adds up fast. Here’s where it breaks down in day-to-day recruiting.

  • Call notes end up unstructured, so “notice period negotiable” becomes impossible to filter reliably later.
  • Follow-ups steal prime time because missing fields are discovered only after someone tries to schedule the next round.
  • Different recruiters capture different details, which means your pipeline reports are noisy and hard to compare across roles.
  • Manual copy-paste into Google Sheets invites simple errors like wrong numbers or swapped fields.

The Fix: Automated pre-screen calls that write back to your Sheet

This workflow turns your Google Sheet into the source of truth and uses Vapi.ai to do the repetitive first-touch pre-screening for you. When a new candidate row is added, the automation validates the basics (like phone number and required fields), fetches the right voice assistant configuration, then triggers an outbound call through Vapi.ai. After the call finishes, it pulls the transcript from Vapi and hands it to an AI analysis step (Google Gemini in the template). From that transcript, it extracts the exact fields recruiters typically chase: experience, current and expected CTC, notice period, negotiability, and preferences like location. Finally, it maps those structured results back into your existing columns and updates the same row, so your pipeline stays clean without anyone “doing admin later.”

The workflow starts with a new row in Google Sheets. Then Vapi.ai runs the call and returns a transcript. Gemini parses the conversation into structured data, and n8n writes the answers into the right Google Sheet fields so they’re searchable and consistent.

What Changes: Before vs. After

Real-World Impact

Say you pre-screen 20 candidates a week. Manually, you might spend about 10 minutes on the call, then another 5 minutes logging details into Google Sheets, and a few more minutes doing follow-ups when something is missing. That’s roughly 5 hours weekly in admin-heavy screening. With this workflow, adding the candidate row is the trigger, the call runs automatically, and the Sheet updates itself after transcript processing. You still review the results, but it’s closer to 30 seconds per candidate, not a mini project.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store candidates and results.
  • Vapi.ai for outbound calls and transcripts.
  • Google Gemini API key (get it from Google AI Studio / your Google Cloud project).

Skill level: Intermediate. You’ll be connecting credentials, matching Sheet columns, and pasting API keys into the right places.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A new candidate row appears in Google Sheets. That row is your single trigger, so your team doesn’t have to “remember to run” anything.

The workflow prepares the call details. It maps the candidate fields it needs, fetches the right Vapi.ai assistant settings, and ensures labels match the columns you want to fill (CTC, experience, notice period, and so on).

Vapi.ai calls the candidate, then returns the transcript. n8n initiates the call via HTTP Request, waits for completion on the Vapi side, and retrieves the conversation transcript for analysis.

Gemini turns the transcript into structured answers, and Google Sheets gets updated. The workflow parses the transcript into a predictable JSON structure, aligns the fields to your Sheet headers, then writes everything back into the same row so it’s ready for filtering and handoff.

You can easily modify the questions asked on the call to match your role requirements based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Sheets Row Trigger

Set up the workflow to start whenever a new row is added to your Google Sheet.

  1. Add the Sheets Row Trigger node and set Event to rowAdded.
  2. Select your spreadsheet in Document ID with [YOUR_ID] and choose Sheet Name as Sheet1 (gid=0).
  3. Set the polling schedule to Every Minute in Poll Times.
  4. Credential Required: Connect your googleSheetsTriggerOAuth2Api credentials.

Step 2: Connect Google Sheets

Prepare the input fields that will feed the call workflow and ensure your sheet structure matches.

  1. Add the Map Required Fields node after Sheets Row Trigger.
  2. In Map Required Fields, create assignments for each input field using expressions: First name to {{ $json['First Name'] }}, Last name to {{ $json['Last Name'] }}, Phone No to {{ $json['Phone No.'] }}, and Current Company to {{ $json['Current Company'] }}.
  3. Ensure your sheet has matching columns: First Name, Last Name, Phone No., and Current Company.

Step 3: Set Up Analyze Call Details

Configure the AI pipeline to parse the call transcript and return structured fields.

  1. Add the Analyze Call Details node and set Text to the full prompt with the transcript expression: =Parse the incoming call trascipt to extract the details such as ... from the following input data:{{ $json.transcript }}.
  2. Connect Gemini Chat Engine as the language model for Analyze Call Details and set Model Name to models/gemini-2.5-flash-preview-05-20.
  3. Credential Required: Connect your googlePalmApi credentials in Gemini Chat Engine.
  4. Attach Structured Result Parser as the output parser for Analyze Call Details and keep Schema Type set to manual with the provided JSON schema.
  5. For the AI tool node, add credentials to the parent node only: Structured Result Parser uses the model in Gemini Chat Engine.

Step 4: Configure Output and Action Nodes

Wire the call actions and write structured results back to the spreadsheet.

  1. Set up Fetch Voice Assistant with URL https://api.vapi.ai/assistant/<ID> and send an Authorization header Bearer [CONFIGURE_YOUR_TOKEN].
  2. Configure Initiate Phone Call with URL https://api.vapi.ai/call, Method POST, and JSON Body set to: { "assistantId": "[YOUR_ID]", "phoneNumberId": "[YOUR_ID]", "customer": { "numberE164CheckEnabled": true, "number": "[YOUR_PHONE]" } }
  3. In Initiate Phone Call, add the Authorization header Bearer [CONFIGURE_YOUR_TOKEN] and enable Send Headers and Send Body.
  4. Set Retrieve Call Transcript to URL https://api.vapi.ai/call/<ID> and include the same Authorization header.
  5. Add Align Field Labels and set an assignment with Name output and Value {{ $json.output }}.
  6. Configure Modify Sheet Row with Operation update, map each column to expressions like {{ $json.output['Current CTC'] }}, and set Matching Columns to Phone No..
  7. Credential Required: Connect your googleSheetsOAuth2Api credentials in Modify Sheet Row.

⚠️ Common Pitfall: The Vapi API calls in Fetch Voice Assistant, Initiate Phone Call, and Retrieve Call Transcript require valid tokens and IDs. Replace [YOUR_ID], [YOUR_PHONE], and [CONFIGURE_YOUR_TOKEN] before testing.

Step 5: Test and Activate Your Workflow

Verify the end-to-end flow from sheet row creation to call analysis and update.

  1. Manually add a new row in HR Calling Data with values for First Name, Last Name, Phone No., and Current Company.
  2. Click Execute Workflow and confirm the flow: Sheets Row TriggerMap Required FieldsFetch Voice AssistantInitiate Phone CallRetrieve Call TranscriptAnalyze Call DetailsAlign Field LabelsModify Sheet Row.
  3. Check the updated row to verify fields like Current CTC, Expected CTC, and Calling Status are filled from Analyze Call Details.
  4. Once successful, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Google Sheets credentials can expire or need specific permissions. If things break, check the Google credential in n8n and confirm the Sheet is shared with the connected Google account first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Vapi.ai calls can fail silently if your API key, phone number ID, or assistant ID is wrong. Check the HTTP Request node response and Vapi call logs before you troubleshoot Gemini.

Common Questions

How quickly can I implement this Sheets Vapi automation?

Usually about an hour once your API keys and Sheet columns are ready.

Can non-technical teams implement this pre-screen call automation?

Yes, but you will need someone comfortable with connecting accounts and testing API calls. No coding, just careful setup and column mapping.

Is n8n free to use for this Sheets Vapi 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 Vapi.ai usage plus your LLM costs (Gemini or OpenAI), which can be small per transcript but adds up with high volume.

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.

How do I adapt this Sheets Vapi automation solution to my specific challenges?

Start with the questions your team always asks and make sure the assistant script in Vapi.ai matches them. In n8n, the easiest customizations are in “Align Field Labels” and “Map Required Fields” because those determine what gets written back to Google Sheets. You can also swap the “Gemini Chat Engine” for an OpenAI Chat Model if that’s what your org already uses. Common tweaks include adding new fields (work authorization, shift preference), skipping rows with missing phone numbers, or routing edge cases to Gmail for manual review.

Why is my Google Sheets connection failing in this workflow?

Usually it’s a permissions issue or the connected Google account lost access to the Sheet. Re-check the Google Sheets credential in n8n, confirm the Sheet ID/tab name, and make sure the spreadsheet is shared correctly.

What’s the capacity of this Sheets Vapi automation solution?

On a typical n8n Cloud plan you can run thousands of executions per month, and self-hosting removes execution caps (your server becomes the limit). In practice, capacity is usually constrained by call throughput on Vapi.ai and how long each call takes, not by Google Sheets.

Is this Sheets Vapi automation better than using Zapier or Make?

Often, yes. You’re dealing with multi-step logic, HTTP calls, transcript parsing, and structured output mapping, which is exactly where n8n tends to be more flexible (and cheaper at volume, especially if you self-host). Zapier or Make can still work if your flow is basic and you don’t mind paying more as tasks climb. The sticking point is usually transcript parsing and field alignment: you want control there. Talk to an automation expert if you’re not sure which fits.

Once this is set up, the spreadsheet stops being a “best effort” log and becomes your system. The workflow handles the repetitive pre-screen work so your team can focus on judgment calls, not data cleanup.

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