🔓 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 + Hunter.io: cleaner email lists fast

Lisa Granqvist Partner Workflow Automation Expert

You finally get a fresh batch of leads, launch the campaign, and then the bounce notifications start rolling in. It’s not just annoying. It’s a slow leak that chips away at deliverability, wastes budget, and turns “new leads” into a cleanup project.

Email marketers feel this when campaigns underperform for no obvious reason. Agency owners deal with it when clients blame the platform instead of the list. And if you run a small team, email list automation is often the difference between scaling outreach and constantly playing defense.

This workflow watches your Google Sheet, checks new emails with Hunter.io (and a backup validator), then writes clear statuses back into the same row. You’ll see how it works, what you need, and where people usually get tripped up.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Google Sheets + Hunter.io: cleaner email lists fast

The Challenge: Keeping Email Lists Clean Without Slowing Down

Email validation always sounds simple until you’re staring at a sheet with a few hundred new rows and no time to babysit it. Someone pastes a list from a webinar, a VA adds leads from LinkedIn, a form pushes signups into Sheets, and suddenly your “source of truth” is full of unknowns. Some addresses are mistyped, some are role-based, some are disposable, and a few are just dead. The kicker is that you usually discover the problem after sending, when bounces and blocks are already hurting you.

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

  • Manual spot-checking turns into a recurring chore that steals about an hour whenever a new list lands.
  • People skip validation “just this once,” and that’s often the send that triggers spam-folder problems.
  • Lists get cleaned in one place but used in another, so the Sheet and your outreach tool drift out of sync.
  • When validation is inconsistent, teams argue about the data instead of improving messaging and offers.

The Fix: Auto-Verify New Sheet Emails and Write Back Status

This n8n workflow turns your Google Sheet into a self-cleaning intake system. The moment a new row shows up, it checks if an email is present, maps it into the right format, then sends it to an email verification API. Hunter.io handles the primary check, and the workflow can also use a second validator (EmailValidation.io) so you’re not stuck when one service is slow or returns unclear results. Once the response comes back, the workflow translates it into a human-friendly status like “deliverable,” “risky,” or “blocked,” and updates the original spreadsheet row automatically. No exporting. No copy-paste. No “I’ll validate later” backlog.

The workflow starts with a Google Sheets trigger that monitors for new rows every minute. From there it filters out blanks, validates the email via HTTP requests and Hunter’s check, then merges the results into a clean status field. Finally, Google Sheets gets updated in-place, so your list is always current.

What Changes: Before vs. After

Real-World Impact

Say your team adds 60 new leads a day into Google Sheets from forms, scraping, and manual research. Manually validating even 60 emails (copy, paste, check, record result) is usually about 2 minutes each, so roughly 2 hours a day goes to list hygiene. With this workflow, the “work” is adding the row, then waiting for the status to appear (often within a minute or two). You still review edge cases, but the grind disappears.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store leads and status fields.
  • Hunter.io for primary email verification checks.
  • EmailValidation.io API key (get it from your EmailValidation.io dashboard).

Skill level: Beginner. You’ll connect accounts, paste API keys, and map the right Sheet columns.

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

The Workflow Flow

A new row appears in Google Sheets. The workflow’s Sheets trigger watches for new entries on a short interval (about every minute), so new leads get picked up quickly.

Blank or useless rows get skipped. If the email cell is empty, the workflow filters it out so you don’t burn API calls validating nothing.

The email is prepared, then verified. n8n maps the email into a consistent field, calls a validation endpoint via HTTP Request, and also runs a Hunter email check node so you have a strong primary signal (with a backup option when needed).

Status is written back into the same spreadsheet. The workflow assembles a clear label (deliverable, risky, blocked) and updates the row, which means your Sheet stays the single source of truth.

You can easily modify the status labels to match your outreach rules based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Google Sheets Trigger

Set up the workflow to watch for new rows in your spreadsheet using Sheets Row Trigger.

  1. Add and open Sheets Row Trigger.
  2. Set Event to rowAdded.
  3. Set Document to [YOUR_ID] for the spreadsheet named Email Validation.
  4. Set Sheet Name to Sheet1 (gid 0).
  5. Keep the polling schedule at everyMinute as configured.

Credential Required: Connect your googleSheetsOAuth2Api credentials.

The trigger will not fire until Google Sheets credentials are connected, even though none are configured in the workflow.

Step 2: Connect Google Sheets

Ensure update access is in place for the spreadsheet using Update Sheet Status.

  1. Open Update Sheet Status.
  2. Verify Operation is set to update.
  3. Set Document to [YOUR_ID] and Sheet Name to Sheet1 (gid 0).
  4. Confirm the Columns mapping includes Email set to {{ $json.email }} and Deliverability set to {{ $json.status }}.
  5. Ensure Matching Columns includes Email so updates target existing rows.

Credential Required: Connect your googleSheetsOAuth2Api credentials.

Step 3: Set Up Data Filtering and Mapping

Filter out empty rows and normalize the email field before validation using Remove Blank Entries and Map Email Field.

  1. Open Remove Blank Entries and confirm the condition checks Email with Operator set to notEmpty.
  2. Make sure the Left Value uses the expression {{ $json.Email }}.
  3. Open Map Email Field and set the assignment Email to {{ $json.Email }}.
If your spreadsheet column is named differently than Email, update the expressions in Remove Blank Entries and Map Email Field to match.

Step 4: Configure the Validation API Request

Call the external validation API from Validate Email API Call to verify deliverability.

  1. Open Validate Email API Call.
  2. Set URL to =https://api.emailvalidation.io/v1/info?apikey={{api_key}}&email={{ $json.Email }}.
  3. Keep Send Body and Send Headers enabled.
⚠️ Common Pitfall: Replace {{api_key}} with your actual EmailValidation.io API key or add it as a credential/variable to prevent 401 errors.

Step 5: Assemble the Status Output

Normalize the response into fields the sheet update expects using Assemble Status Output.

  1. Open Assemble Status Output.
  2. Set status to {{ $json.state }}.
  3. Set email to {{ $json.email }}.

Step 6: Configure Output to Update the Sheet

Write the validation result back to your spreadsheet using Update Sheet Status.

  1. Confirm Assemble Status Output is connected to Update Sheet Status.
  2. Verify Deliverability is mapped to {{ $json.status }}.
  3. Ensure the Matching Columns setting uses Email for accurate row updates.
The workflow does not include Utility: Hunter Email Check in the execution path. Keep it disconnected for optional testing or remove it if unused.

Step 7: Test and Activate Your Workflow

Validate the end-to-end flow and enable it for production use.

  1. Click Execute Workflow and add a new row with an Email value in your sheet.
  2. Confirm Remove Blank Entries passes only non-empty emails.
  3. Verify Validate Email API Call returns a response and Assemble Status Output creates status and email fields.
  4. Check the spreadsheet to ensure Update Sheet Status writes the deliverability result to the Deliverability column.
  5. When satisfied, toggle the workflow to Active for continuous processing.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Google Sheets OAuth credentials can expire or need specific permissions. If things break, check the n8n credentials screen and the Google account’s access to the exact spreadsheet 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.
  • Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.

Common Questions

How quickly can I implement this email list automation automation?

About 30 minutes if your API keys and Sheet are ready.

Can non-technical teams implement this email list automation?

Yes. You’ll connect Google Sheets, paste API keys, and select which column holds the email.

Is n8n free to use for this email list 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 Hunter.io and EmailValidation.io API usage fees, which depend on how many emails you verify.

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 email list automation solution to my specific challenges?

You can swap which validator is “primary” by changing the HTTP Request validation step and keeping the Hunter email check as a fallback (or the other way around). Most teams customize the status labels in the “Assemble Status Output” step, add a separate column for a confidence note, and adjust the filter so internal emails or known domains skip verification.

Why is my Google Sheets connection failing in this workflow?

Usually it’s an expired Google OAuth token or the credential is connected to an account that no longer has access to the spreadsheet. Reconnect the Google Sheets credential in n8n, then confirm the Sheet ID and tab name still match. If it fails only on updates, check that the workflow is writing to a column that actually exists (renamed headers break mappings more often than people expect).

What’s the capacity of this email list automation solution?

Plenty for most small teams: it checks new rows every minute and processes what shows up. On n8n Cloud Starter you’re working within plan execution limits, while self-hosting has no execution cap (your server and the validator rate limits become the real constraint). If you upload a big list, use batching so you don’t hit Hunter.io or EmailValidation.io throttles. Honestly, validation services are usually the bottleneck, not n8n.

Is this email list automation automation better than using Zapier or Make?

Often, yes, especially if you want filtering, fallbacks, and bulk processing without the automation getting expensive. n8n handles branching logic cleanly, you can self-host for unlimited executions, and calling external APIs (like Hunter.io and EmailValidation.io) is straightforward. Zapier or Make can still be a fine choice for a simple “new row → one API call → update row” setup. The moment you add a backup validator, batching, or more rules, n8n tends to feel calmer to operate. Talk to an automation expert if you want a quick recommendation based on your volume and tools.

A clean sheet makes everything downstream easier: better segmentation, fewer bounces, and fewer awkward “why did this campaign tank?” post-mortems. Set it up once, then let the workflow keep your list honest.

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