Skip to main content

HubSpot data enrichment: native enrichment, waterfalls, and keeping the CRM clean

HubSpot data enrichment comes in two flavors. HubSpot has its own built-in enrichment, and most teams eventually add external providers on top of it, usually through a waterfall that tries several sources in order. This page covers where the native feature stops, how a waterfall works, which fields to enrich and when, and the rules that keep CRM data enrichment from making your database worse. It is one of the systems OneGTM builds.

By Garrett Wolfe, founder of OneGTM. Updated . HubSpot product details checked against HubSpot's knowledge base in November 2026.

Key takeaways

  • HubSpot's built-in enrichment is free on paid plans and good at company firmographics. It needs a work email or domain to start from.
  • Emails you don't have yet, mobile numbers, and niche fields come from outside providers, run as a waterfall.
  • Enrich on create, again when a record reaches a stage a rep acts on, and on a schedule for everything else.
  • Write rules before you write data: what may overwrite what, and which property is the source of truth.

What HubSpot's native enrichment does

HubSpot bought Clearbit in 2023 and turned its data into Breeze Intelligence, which HubSpot's help docs now simply call data enrichment. Clearbit's free standalone tools were retired in 2025, so for most teams this feature is how Clearbit data reaches them today. Here is how it works as of November 2026, per HubSpot's knowledge base (last updated July 10, 2026):

  • Which plans. Starter, Professional, and Enterprise editions of Marketing, Sales, Service, Data, and Content Hub, plus the Professional and Enterprise editions of HubSpot's platform bundles. The free CRM does not include it.
  • Cost. Data enrichment does not consume HubSpot Credits. Smart properties, the AI-filled custom fields, do.
  • Inputs. Contacts are matched on first name, last name, and work email. Companies are matched on domain. A contact with only a Gmail address and a name gets little.
  • Triggers. Automatic enrichment is off until you turn it on, separately for contacts and companies. You can also enrich one record, a bulk selection, or look things up in the Intelligence tab.
  • Refresh. With continuous enrichment on, records that were enriched before get updated monthly when HubSpot has newer data.
  • Overwrites. Existing values are kept unless you choose to overwrite during manual enrichment or turn on the setting that overwrites incorrect enrichment values.

That is a sensible default for a HubSpot-only team. Turn it on, fill the obvious firmographic gaps, and move on. The trouble starts when you need data HubSpot's dataset doesn't hold.

Native HubSpot enrichment vs. external enrichment

HubSpot data enrichmentExternal enrichment (waterfall)
Data sourcesHubSpot's own dataset (the Clearbit lineage)As many providers as you wire in, tried in order
Finds a missing work emailNo, it needs one to startYes, from a name plus a company domain or LinkedIn URL
Mobile numbersNot its strengthYes, from phone-focused providers
Custom fieldsFixed property list, plus credit-based smart propertiesAnything you can look up or scrape: tech stack, hiring, funding, licenses
Cost modelIncluded with paid plansPay per lookup or per match, plus the tool that runs it
Control over writesSettings for auto, continuous, and overwriteWhatever rules you build
Best forFirmographics on inbound leads and existing accountsOutbound lists, contact data, and fields specific to your ICP

Most teams we work with keep native enrichment on for the basics and run external enrichment for everything it misses. For the providers themselves, see the data enrichment tools comparison.

How waterfall enrichment works

Waterfall enrichment asks one provider for a field, and if that provider comes back empty or unverified, asks the next. No single B2B database covers everyone, and coverage varies a lot by region, seniority, and industry, so chaining sources finds more matches than any one of them. The design choices that matter:

  1. Provider order. Put the provider with the best hit rate for your segment, at a reasonable price, first. Test on a few hundred of your own records before committing, because a provider that is strong on US tech companies can be weak on European manufacturers.
  2. Fallbacks and stop rules. Stop at the first verified answer. Only fall through on a miss or a failed verification, or you pay several providers for the same email.
  3. Cost per match. Judge the waterfall on total spend divided by records actually found. The price per lookup on its own tells you little. Several providers charge nothing when they find nothing, which makes them cheap to place early.
  4. Verification. Run every email through a verifier before it is written to HubSpot, and decide up front what to do with catch-all domains. A bad email in the CRM costs more later, in bounces and sender reputation, than the lookup saved. See email verification tools.

A worked example, with made-up round numbers. You need emails for 1,000 contacts. Provider A finds 550 and verifies 500. Provider B gets the remaining 500 and finds 200 verified. Provider C gets the last 300 and finds 90. The waterfall delivers 790 verified emails, where Provider A alone would have stopped at 500. Your cost per match is total spend across all three, divided by 790.

Clay runs waterfalls in a table with built-in provider integrations. Tools like FullEnrich and BetterContact sell a waterfall as one product. Code-first setups call providers directly or through a router like Deepline. The Clay agency page covers Clay builds, and Clay pricing covers what the credits cost.

What to enrich, and when

Enriching every field on every record every week burns money on data nobody reads. Tie each field to the moment someone needs it. Three triggers cover nearly every case:

  • On create. When a contact or company lands in HubSpot from a form, import, or integration, fill what routing and scoring need: company size, industry, location, job title, seniority. A lead that can't be routed sits in a queue.
  • On stage change. When a lead becomes an MQL or a deal opens, pay for the expensive fields: mobile numbers, the rest of the buying committee, a fresh email verification. Most records never reach this stage, so you only buy this data for the ones that do.
  • Scheduled refresh. People change jobs and companies grow or shrink. A monthly or quarterly job re-checks fields that decay, flags contacts who left, and catches accounts that moved into your ICP.
FieldTypical sourcesRefresh cadence
Industry, employee count, HQ locationHubSpot enrichment, Apollo, People Data Labs, CrustdataOn create, then quarterly
Revenue rangeHubSpot enrichment, ZoomInfo, ApolloOn create, then twice a year
Job title, seniority, departmentHubSpot enrichment, LinkedIn data APIs, ApolloOn create, then monthly
LinkedIn profile URLLinkedIn data APIs, Clay, ApolloOn create
Work emailEmail finder waterfall (LeadMagic, Prospeo, Findymail and others) plus a verifierOn create; re-verify before every sequence
Mobile phonePhone finder waterfall (Lusha, Cognism, FullEnrich and others)On stage change, when a rep will call
Job changeJob change tracking tools, LinkedIn data APIsMonthly, or weekly for customers and open deals
Tech stackBuiltWith and other tech stack trackersQuarterly
Funding and headcount growthCrunchbase and other funding data, LinkedIn data APIsMonthly
ICP fit scoreCalculated from the fields aboveRecalculated whenever an input changes

More on the signal side: job change tracking tools, tech stack tracking, and funding data.

Keeping CRM data clean while you enrich it

Enrichment is a write path into your CRM. Without rules, it creates duplicates, overwrites what reps typed, and leaves values nobody can trace. The rules we set before the first write:

  • Dedupe on stable keys. Match contacts on email and companies on domain before creating anything. Re-running a waterfall should update the record it found the first time, never create a second one. Clean up existing duplicates before turning on automation, because enrichment will happily fill both copies.
  • Overwrite rules per field. Default to filling blanks only. Allow overwrites on fields that decay, like job title, and only when the new value comes from a source you trust at least as much. Never let automation overwrite a field a rep edited by hand, such as lifecycle stage or owner.
  • Source of truth properties. Keep raw enriched values in their own properties (an enriched employee count next to HubSpot's own numberofemployees, for example), and add a source and a last-enriched date. When a value looks wrong, you can see where it came from and when.
  • Normalize before writing. Map provider values onto your own picklists: one industry list, one set of employee bands, titles mapped to the seniority and department values your routing uses. Raw provider labels break reports and lead routing.

If the CRM itself needs rework first, the HubSpot and CRM implementation partners guide covers who does that work.

How OneGTM builds enrichment into HubSpot

We keep HubSpot as the system of record and run enrichment outside it, writing results back to properties the team can see, filter, and report on. There are two ways we build it, depending on who will maintain it:

  • Clay tables. Records come in from a HubSpot list or a webhook, run through a waterfall and AI research columns, and write back through Clay's HubSpot integration. A good fit when the team wants to see and edit the logic in a spreadsheet. SuperDial's TAM was scored in Clay with AI industry classification, alongside HubSpot rep views.
  • Claude Code jobs. Scheduled scripts, built with Claude Code and Deepline, that read records through the HubSpot API, call providers in order, verify, normalize, and write back with batch updates. A good fit for high volume, custom data sources, or teams that want version-controlled logic. For Statewise we built Deepline plays on Supabase that sync to HubSpot, with a person-finder ladder that verifies emails through BounceBan before escalating to Allegrow.

Either way, every write follows the dedupe and overwrite rules above, every enriched property carries a source and date, and the team gets a handoff doc that says which job fills which field and on what trigger. The code-first approach is described on Claude Code for GTM.

HubSpot data enrichment FAQ

What is HubSpot data enrichment?
HubSpot data enrichment is HubSpot's built-in feature, formerly sold as Breeze Intelligence and built on Clearbit's data, that fills contact and company properties such as job title, industry, and company size. It starts from a contact's name and work email or a company's domain, and it is included on paid HubSpot subscriptions without using HubSpot Credits (as of November 2026).
What is waterfall enrichment?
Waterfall enrichment asks several data providers for the same field in a set order and stops at the first good answer. If the first provider has no verified email for a person, the request falls through to the next one. Because each provider covers different people and companies, a waterfall finds more matches than any single source, and ordering providers by price and hit rate keeps the cost per match down.
What is CRM data enrichment?
CRM data enrichment adds missing or outdated information to the records already in your CRM, such as job titles, company size, industry, verified emails, phone numbers, and buying signals. Done well, it runs on triggers (new record, stage change, scheduled refresh) and follows rules about which fields it may overwrite.
Does HubSpot data enrichment use HubSpot Credits?
No. HubSpot's knowledge base, last updated July 10, 2026, says data enrichment does not consume HubSpot Credits. Smart properties, which use AI to fill custom fields, do use credits.
Can you run waterfall enrichment in HubSpot?
Not natively. HubSpot enriches from its own dataset. To run a waterfall, records go out to a tool such as Clay or a script that calls several providers in order, then the results are written back to HubSpot properties through the HubSpot API or the tool's HubSpot integration.
Will enrichment overwrite my existing HubSpot data?
HubSpot's native enrichment keeps existing values unless you choose to overwrite them during manual enrichment or turn on the setting to overwrite incorrect enrichment values. External enrichment writes whatever you tell it to, so set the rules yourself: fill blanks by default, never overwrite fields a rep typed, and record the source and date of every automated write.
How often should you enrich CRM data?
Enrich new records when they are created, enrich again when a deal or lead reaches a stage where a rep will act on it, and refresh the rest on a schedule. Job titles and job changes are worth checking monthly, firmographics quarterly, and emails should be re-verified before any record goes into a sequence.

Have a HubSpot instance full of half-empty records? That is a good place to start.

Get HubSpot enrichment built

Tell me what's missing from your CRM. I reply the same day.

Call with Garrett
Where did you hear about us? (optional)

Takes about 20 seconds. Times show up right here, and the call is with Garrett directly. See our privacy policy.

Rather do it the old way? team@getaob.com LinkedIn