🔓 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 + Claude: enrich leads with firmographics

Lisa Granqvist Partner Workflow Automation Expert

Your lead sheet starts clean, then slowly turns into a mess. Missing NAICS codes. “Revenue” guessed in random formats. Employee counts pasted from three different sources. And somehow, you’re the one expected to “just fix it.”

This Sheets Claude enrichment automation hits growth marketers first, but sales ops and agency owners feel it too. The outcome is simple: every new or updated company row gets firmographics filled in consistently, without you babysitting the sheet.

Below, you’ll see how the workflow runs, what it changes day-to-day, and what you need to get it live in n8n.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Google Sheets + Claude: enrich leads with firmographics

The Challenge: Keeping lead firmographics complete and consistent

“Enrich the list” sounds quick until you’re actually doing it. Someone drops 40 new companies into Google Sheets, half with only a name, some with a broken URL, and a few that are subsidiaries with confusing branding. Now you’re juggling lookups, copy-paste, and formatting rules while trying not to overwrite the wrong row. And even when you finish, the data isn’t uniform, which makes filters, routing, and outreach personalization shaky. Honestly, the real cost is the context switching. You lose momentum on work that actually drives pipeline.

The friction compounds. Here’s where it breaks down.

  • You end up re-checking the same companies every week because someone edits the name or swaps the website.
  • Firmographic fields get filled with mismatched formats, so the sheet looks “done” but can’t be segmented reliably.
  • Manual enrichment invites mistakes, like pasting data into the wrong row or mixing parent and child companies.
  • When you scale list building, enrichment becomes the bottleneck instead of outreach or analysis.

The Fix: Auto-enrich new Google Sheets rows with Claude + Explorium

This workflow watches your Google Sheet for changes, then enriches only the rows that actually need attention. When a new company is added (or when someone edits the company name or website), n8n validates that the essentials are present. After that, it processes companies one at a time, so a single “no data found” case won’t crash the whole run. The AI Agent uses Claude (Anthropic) with the Explorium MCP tool to pull structured firmographics like business ID, NAICS, employee range, and revenue range. Finally, the workflow formats the result and writes the values back into the exact same row, keeping your sheet as the system of record.

The workflow starts with a Google Sheets change trigger that polls about every minute. From there, rows are validated, enriched via Claude + Explorium MCP, and then updated in place in Google Sheets. You get a living lead list that stays “ready,” even when the input is messy.

What Changes: Before vs. After

Real-World Impact

Say your team adds 50 companies to a sheet each week. If manual enrichment takes about 10 minutes per company (find NAICS, revenue range, employee range, and a business ID, then paste carefully), that’s roughly 8 hours of busywork. With this workflow, adding the row takes the same time as always, then enrichment runs automatically within about a minute. You still spot-check edge cases, but the default state flips from “blank fields everywhere” to “mostly complete, consistently formatted.”

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store and update company rows.
  • Anthropic (Claude) for AI-driven enrichment with an agent.
  • Explorium MCP API key (get it from your Explorium account dashboard).

Skill level: Intermediate. You will connect credentials and verify your sheet columns match the expected names.

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

The Workflow Flow

A row changes in Google Sheets. The workflow polls your sheet about every minute and detects new rows or edits to the company name or website fields.

Only valid rows continue. An “If” check confirms the row has both a company name and a website, because enrichment without those basics is usually junk data.

Companies are handled one at a time. n8n loops through changed rows in batches, then the AI Agent uses Claude (Anthropic) plus the Explorium MCP client to fetch business ID, NAICS, employee range, and revenue range in a structured way.

The same row gets updated. A formatting script shapes the result, and Google Sheets writes the enriched fields back to the original row (using the row number), so your sheet stays the “source of truth.”

You can easily modify which columns trigger re-enrichment or which fields get written back 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

This workflow starts when a spreadsheet row changes, using the Spreadsheet Change Trigger node.

  1. Add the Spreadsheet Change Trigger node to your canvas.
  2. Set Document to the target spreadsheet with [YOUR_ID].
  3. Set Sheet to gid=0 (Sheet1).
  4. Set Poll Times to everyMinute for frequent monitoring.
  5. Credential Required: Connect your Google Sheets credentials.

Step 2: Connect Google Sheets

Configure the update action so the enriched data is written back to the same spreadsheet.

  1. Add the Modify Company Row node and connect it after Format Result Script.
  2. Set Operation to appendOrUpdate.
  3. Set Document to [YOUR_ID] and Sheet to gid=0.
  4. In Columns, keep Mapping Mode as autoMapInputData and Matching Columns to name.
  5. Credential Required: Connect your Google Sheets credentials.

Step 3: Set Up Row Validation and Batching

Validate only rows with both name and website values, then process them one by one.

  1. Add Validate Filled Rows after Spreadsheet Change Trigger.
  2. Set the first condition leftValue to {{ $json.name }} and operator to notEmpty.
  3. Set the second condition leftValue to {{ $json.website }} and operator to notEmpty.
  4. Add Iterate Records and connect the true output of Validate Filled Rows to it.

Step 4: Set Up the AI Research Agent

The Research Agent uses Anthropic and Explorium tools to enrich company data and parse structured output.

  1. Add Research Agent and connect it to the second output of Iterate Records.
  2. Set Prompt Type to define and paste the full prompt from the node parameters, including {{ $json.name }} and {{ $json.website }} expressions.
  3. Attach Anthropic Dialogue Model as the language model for Research Agent.
  4. Credential Required: Connect your Anthropic credentials in Anthropic Dialogue Model.
  5. Attach Explorium MCP Client as the tool for Research Agent with SSE Endpoint set to https://mcp.explorium.ai/sse and Authentication set to bearerAuth.
  6. Credential Required: Connect your Explorium MCP credentials in Research Agent tool configuration (the tool is Explorium MCP Client).
  7. Attach Structured Output Parser as the output parser for Research Agent, using the provided JSON schema example.

The Explorium MCP Client and Structured Output Parser are AI sub-nodes connected to Research Agent. Configure their credentials and usage from the parent Research Agent settings, not on the sub-nodes themselves.

Step 5: Configure Output Formatting and Sheet Update

Format AI output consistently before updating the sheet.

  1. Add Format Result Script after Research Agent.
  2. Set JavaScript Code to the provided script that maps output fields like business_id, naics, and ranges.
  3. Connect Format Result Script to Modify Company Row.

⚠️ Common Pitfall: If the AI output doesn’t include the expected keys (like yearly_revenue_range), the script will return empty strings—make sure the prompt format is preserved in Research Agent.

Step 6: Test and Activate Your Workflow

Verify the workflow runs end-to-end and enriches your sheet correctly.

  1. Click Execute Workflow to run a manual test.
  2. Add or modify a row in your spreadsheet with valid name and website values.
  3. Confirm Validate Filled Rows passes only filled rows and Iterate Records sends one item at a time to Research Agent.
  4. Check that Modify Company Row updates the row with business_id, naics, number_of_employees_range, and yearly_revenue_range.
  5. When successful, switch the workflow Active to enable production polling.
🔒

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 n8n Google credential settings and confirm the connected account still has edit access to the sheet.
  • 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 Sheets Claude enrichment automation?

About an hour if your sheet columns are already set up.

Can non-technical teams implement this Sheets Claude enrichment?

Yes. You’ll mostly be connecting accounts and matching the Google Sheet columns the workflow expects.

Is n8n free to use for this Sheets Claude enrichment 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 Anthropic (Claude) token usage and your Explorium MCP plan.

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 Claude enrichment solution to my specific challenges?

You can customize the “Validate Filled Rows” logic to enforce stricter rules (like requiring a full https:// URL), then adjust the “Format Result Script” to write different output formats. If you want more fields, extend the structured output parser to include things like HQ country or a confidence note. And if you prefer a different provider, you can swap the Explorium MCP client tool inside the AI Agent while keeping the same Google Sheets trigger and update pattern.

Why is my Google Sheets connection failing in this workflow?

Usually it’s expired OAuth consent or missing write permissions on the Google account connected in n8n. Reconnect the credential, then confirm the “Modify Company Row” node is pointing at the correct spreadsheet and sheet tab. If it only fails on some rows, check that the workflow is matching on row_number and that your sheet hasn’t been re-sorted in a way that breaks assumptions.

What’s the capacity of this Sheets Claude enrichment solution?

On n8n Cloud, capacity mainly depends on your plan’s monthly executions, and this workflow can consume multiple executions when looping over batches. If you self-host, there’s no execution cap, but throughput depends on your server and API rate limits from Google, Anthropic, and Explorium. Practically, most small teams can enrich hundreds of rows a day without thinking about it, then tune batching if they push beyond that.

Is this Sheets Claude enrichment automation better than using Zapier or Make?

Often, yes, but it depends on how picky you are about structure and error handling. n8n is better when you need branching logic (like validating rows), looping through changes safely, and parsing structured AI output without duct-taping steps together. It’s also friendlier if you want self-hosting for unlimited runs. Zapier or Make can be quicker for a basic “new row → call enrichment API → update row” flow, but costs climb when you add logic and retries. If you want a second opinion, Talk to an automation expert and we’ll map the simplest option for your volume.

Once this is running, your sheet stops being a half-finished project and becomes a reliable asset. The workflow handles the repetitive enrichment, so you can focus on targeting and outreach.

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