Lead enrichment in Google Sheets means taking a list of companies or people and filling in the missing fields, firmographics, contact details, and technology signals directly in the sheet, using web enrichment plus AI extraction instead of a separate platform. You start with thin rows (a company name, domain, or LinkedIn URL) and end with rows complete enough to segment, score, and write to. Sorzio runs this pipeline from the Google Sheets sidebar, on Hosted Lists in your dashboard, or directly from Claude and ChatGPT via MCP (https://www.sorzio.com/api/mcp): Enrich pulls source websites and LinkedIn data, AI and Decision Mode extract and score fields, Verify checks emails, and you are only charged for rows that succeed. This guide explains what enrichment is, firmographic vs contact enrichment, waterfall logic, how to run the pipeline in one sheet, and what it costs against standalone tools.
What is lead enrichment?
Lead enrichment is the process of appending missing data to a lead record so a thin row becomes a usable one. A raw export from a form, a conference list, or a scraped directory usually carries a name and not much else. Enrichment fills the gaps: company size, industry, location, funding stage, job title, work email, phone, the tools the company runs. The point is to turn a list you cannot act on into one you can segment, prioritize, and personalize against.
There are two reasons this matters for outbound. First, you cannot target what you cannot see: without firmographics you cannot tell which rows match your ideal customer profile. Second, you cannot personalize on a blank field: an AI opener handed only a company name writes something true of any company, while one handed a funding stage and a recent hire writes something true of exactly one.
Firmographic vs contact enrichment
Enrichment splits into a few data types, and they answer different questions. Knowing which one you need keeps you from paying for fields you will not use.
- Firmographic enrichment describes the company: employee count, annual revenue, industry, headquarters location, ownership, and growth signals like funding rounds or hiring. Firmographics decide which accounts to target, because they are what your ICP is defined in. A typical filter reads "SaaS companies, 50 to 200 employees, North America, raised a Series A or B."
- Contact enrichment describes the person: job title, seniority, work email, direct phone, LinkedIn profile. Contact data decides who to reach inside an account you have already qualified.
- Technographic enrichment describes the stack: the CRM, analytics, or infrastructure a company runs. It is useful when your product complements or replaces a specific tool, for example "companies running HubSpot" or "sites on Shopify."
Most real workflows want firmographics first to cut the list down to fit, then contact data only for the rows that survive the cut. Spending on contact lookups for accounts that were never a fit is the most common way to waste an enrichment budget.
What is waterfall enrichment?
Waterfall enrichment is the practice of querying several data sources in sequence (or in parallel) for the same field and keeping the first or highest-confidence result. No single provider has complete coverage: one vendor typically finds a verified email for 60 to 75 percent of mid-market B2B contacts, so a single source leaves a quarter of your list blank. Stacking four to six sources pushes coverage past 90 percent because each provider fills a different slice of the gap.
There are two shapes. A sequential waterfall stops at the first source that returns a match, which keeps cost down because you only pay the next provider when the previous one came up empty. A parallel waterfall queries every source at once and picks the highest-confidence answer, which is faster but pays for every lookup. The trade-off is cost versus speed, and the right choice depends on how expensive your sources are.
The reason waterfall logic matters for cost is subtle: many standalone tools charge you even when a lookup fails, so a low-coverage source quietly drains credits on rows it never resolved. The honest version of a waterfall only bills for fields it actually filled.
Doing enrichment in Google Sheets with Enrich plus AI
You do not need a dedicated data platform to run a credible waterfall. Most firmographic and contact signals live across company websites and LinkedIn profiles, and Sorzio resolves both without leaving your spreadsheet or Hosted List.
First, enriching URLs in Google Sheets pulls clean text from a company domain at $0.006 per URL ($6.00 per 1,000) on Auto, including up to 6 pages per domain (homepage, about, products, case_studies, pricing, and careers) at $0 extra charge. You can also enrich Company LinkedIn /company/ URLs ($7.50 per 1,000 rows) and Personal LinkedIn /in/ profiles ($10 per 1,000 rows, $0 on #not_found) for job history, headline, and location. Second, an AI prompt or Live Web Search (perplexity/sonar or search-enabled OpenAI, Anthropic, Google, or xAI models) extracts structured fields from that grounded context into clean columns.
This is the part standalone tools hide behind a credit meter: enrichment is mostly enrich the source, extract the fields, verify the result. When you run it in a sheet or Hosted List, you can inspect every intermediate column and re-run only rows that came back thin.
The ICP Enrichment workflow
Sorzio ships a 4-stage Outbound ICP Flow that chains Verify, Enrich, Decision Mode, and AI into one pipeline:
- Verify email addresses first ($0.01 per email) and drop invalid contacts before spending enrichment budget.
- Enrich surviving company domains (up to 6 pages per site at $0 extra) plus Company or Personal LinkedIn URLs into structured columns.
- Score ICP fit with Decision Mode (
typesafe-ai/jev-1.14.0at $1.00 per 1,000 rows base fee) across up to 12 criteria, routing rows 3 ways (keep,reject, orunsurewhen confidence falls below threshold). - Extract and personalize with Generative AI (with optional self-healing output verification) only on qualified
keeprows.
Each stage feeds the next inside Google Sheets, Hosted Lists, or Claude and ChatGPT via MCP, with no CSV export-import loop between tools. Filtering out non-fits at $1.00/1k before generative AI keeps spend focused on real prospects ready for a cold email run from Google Sheets.
This multi-step shape, Verify plus Enrich plus Decision Mode plus AI in one chain, replaces stitching together three or four separate vendors.
How to run your first enrichment pass
The flow below works for any list that has at least a company name or domain.
- Open the sidebar with Extensions, Sorzio, Open sidebar, and select the rows you want to enrich.
- Run the Enrich step on the domain column to pull source text into a context column.
- In the AI tab, write an extraction prompt that references the enriched column by header, for example "From
{{Enriched text}}, return the industry and employee range. If the text does not say, returnUnknown." - Review the cost preview for your exact row count, then run. Output streams into new columns row by row.
- Filter to the rows that match your ICP, then run Verify on the email column for just those rows.
Two habits keep the output clean. Tell the model what to do with missing inputs ("return Unknown if the page does not say") so it never invents a revenue figure. And sample twenty rows before running the whole list, because a prompt that works on one clean row often needs tightening once it meets the messy ones.
What lead enrichment costs in Sheets vs standalone tools
Standalone enrichment platforms price on a credit system, and the headline number rarely matches the real one. On a typical credit-based platform the effective cost per enriched lead runs from roughly $0.14 to $0.67 depending on plan, and several charge for failed lookups, which can quietly consume 20 to 30 percent of an allocation on incomplete data. There are usually platform seat fees on top, plus top-up markups when you run out mid-month.
Sorzio prices each operation transparently and charges only for rows that succeed:
- Website Enrich is $0.006 per URL ($6.00 per 1,000 domains) on Auto, including up to 6 subpages per site (
about,products,case_studies,pricing,careers) at $0 extra charge. Jina is $0.005 per URL and Firecrawl is $0.0075 per URL. - LinkedIn Enrich is $0.0075 per succeeded row ($7.50 per 1,000) for Company
/company/pages and $0.01 per succeeded row ($10 per 1,000, $0 on#not_found) for Personal/in/profiles. - Decision Mode ICP scoring (
typesafe-ai/jev-1.14.0) runs at a $0.0010 per row ($1.00 per 1,000 rows) base fee plus 1.25x input tokens (~$1.01 per 1,000 rows). - Generative AI & Live Web Search runs across 300+ models and 16+ providers at 1.65x provider token cost plus a $0.0035 per row ($3.50 per 1,000) base fee (~$3.90 per 1,000 rows on budget models like GPT-4o-mini at the unified 1,000 input / 150 output token baseline, or ~$8.78 per 1,000 on
perplexity/sonar). - Verify is $0.01 per email ($10 per 1,000), billed only when a verdict returns.
You see the exact price for your row count before running, and failed or skipped rows cost $0. New accounts get up to $20 in welcome credit ($5 at signup plus $15 when you verify a payment card or make your first deposit). On Pro ($39/month, 1 seat) you can bring your own AI keys at 0% markup and $0 base fee, and Scale ($99/month, 3 seats included + $19/month per extra seat) extends BYOK to No2Bounce, Jina, and Firecrawl. To model a specific run, use the AI cost calculator.
For a like-for-like breakdown against the best-known credit-based platform, see how to enrich leads without Clay and the Clay alternative comparison.
When a standalone enrichment platform is the better fit
Honesty matters here, so it is worth saying where a dedicated platform wins. If you need direct-dial mobile numbers at high coverage, a deep technographic database across thousands of tools, or a 15-source parallel waterfall that resolves a list in minutes, a specialist data vendor will out-cover a scrape-and-extract approach. Those tools buy and license data you cannot scrape from the open web.
The Enrich-plus-AI approach in Sheets wins when your enrichment is mostly firmographic and lives on company websites, when you want to see and audit every field, when you do not want a per-seat platform contract, and when the AI step (scoring, summarizing, personalizing) is as important to you as the raw data. For most outbound teams enriching company-level fields and writing personalized copy, that is the common case.
Common questions
What is the difference between lead enrichment and lead generation?
Lead generation finds new leads; lead enrichment fills in the missing data on leads you already have. Generation gives you a name; enrichment turns that name into a row you can segment and write to.
Can I enrich leads in Google Sheets without a separate tool?
Yes. A sidebar add-on that scrapes a company's pages and extracts fields with AI covers most firmographic enrichment without leaving the sheet. See lead enrichment in Google Sheets for the full pipeline, and enrich URLs in Google Sheets for the Enrich step.
What does enriched lead data actually include?
Firmographics (company size, revenue, industry, location, growth signals), contact data (title, work email, phone), and technographics (the tools a company runs). Most workflows use firmographics to qualify accounts and contact data only for the ones that pass.
Do I pay for rows that fail to enrich?
In Sorzio, no. Every step charges only for rows that return a result, so failed or blank lookups cost nothing. Many credit-based platforms do charge for failed lookups, which is a common hidden cost.
How accurate is AI extraction for enrichment?
It is as accurate as the source you feed it. Because the AI reads scraped page text rather than guessing from a company name, the output is grounded in real content. Telling the model to return Unknown when the page does not state a field stops it from inventing data.