Data enrichment API pricing is almost never quoted the way you’d expect. You go looking for a price per call, and instead you get credits, tiers, annual commitments, and a “contact sales” button.
I’ve owned the data budget line at a B2B company. I’ve been surprised by the invoice. So this article does three things: it explains the data enrichment API pricing models you’ll actually meet, it shows you which vendors publish real numbers (with links, so you can check me), and it gives you the formula for what a provider costs YOU, which is a different number from the one on any pricing page.
One scope note: this page is about the pricing layer. If you’re still working out what enrichment does inside a lead workflow (where the API sits, what it feeds), start with the lead enrichment API guide and come back here when the invoice questions start.
Let’s get into it.
The four pricing models
Nearly every provider structures data enrichment API pricing as one of these, or a blend of two.
| Model | How it works | Suits you if |
|---|---|---|
| Credit packs | Buy a block of lookups, spend them as you go | Volume is lumpy or seasonal |
| Monthly subscription | Fixed fee, monthly credit allowance | Volume is steady and predictable |
| Pay as you go / pay on success | Per successful lookup, no commitment | You’re testing or running low volume |
| Annual enterprise | Negotiated contract, large credit allocation | High volume and procurement involvement |
Each model has a documented example in the wild, so let’s make them concrete.
The credit model, done transparently: People Data Labs publishes its entire credit structure in its pricing documentation: person enrichment from $0.28 per credit on monthly Tier 1, company enrichment from $0.10, with volume tiers that discount as you commit more. And the metering rule is stated in one plain sentence:
“Credits are consumed per successful match from the API.”
People Data Labs, Pricing & Credits documentation
The subscription model: Coresignal’s pricing page documents a free plan and monthly plans starting at $49 per month for its database APIs, with dataset pricing negotiated by contract. Hunter’s pricing page shows the same shape for email-centric work: a free tier of 50 credits a month, then a Starter plan at $49 per month.
The enterprise-quote model: ZoomInfo publishes no API pricing at all: annual contracts, negotiated credit allocations, numbers only in YOUR quote. Not a red flag by itself. But it does mean a slower evaluation and no way to test before committing.
Pay on success: Dropcontact sells email enrichment on a you-pay-for-verified-results basis: misses aren’t the product, so misses aren’t the bill.
And since this is our site, the disclosure version for CUFinder: published credit plans, a free allocation of starter credits you can claim from the quick-start guide, unmatched rows don’t consume credits, and repeated lookups of the same record aren’t charged twice. I’m describing our shape rather than quoting our own numbers as if this were neutral coverage; the plans are on our pricing page for you to judge.
In practice you’ll also meet blends. A subscription with an on-demand overage rate is a subscription wearing pay-as-you-go shoes. A “free plan” with paid credit top-ups is a credit pack with a marketing department. And enterprise contracts frequently wrap a subscription base around a negotiated credit pool: two models in one signature. Don’t let the blend confuse the analysis: identify which meter actually charges you per record, and evaluate THAT meter with the questions below.
The models matter less than the fine print attached to them, though. And that’s where the real cost hides.
What vendors actually publish (and what they don’t)
Here’s the section I wish every pricing article had. Because “how much does a data enrichment API cost” has two kinds of answers floating around online: numbers vendors document, and numbers someone heard once. Only the first kind belongs in your budget model.
🔍 The documented-pricing rule: if the number isn't in the vendor's own linked document, treat it as a rumor. Third-party "starting at" figures are one buyer's deal, one blogger's guess, or three years stale, and you can't tell which.
| Vendor | Publishes pricing? | What the public docs state |
|---|---|---|
| People Data Labs | Yes, fully | Free: up to 100 records/mo. Pro from $98/mo. Full per-credit tier tables published |
| Hunter | Yes | Free: 50 credits/mo. Starter $49/mo, plans scale upward |
| Coresignal | Partially | Free plan; monthly plans from $49/mo; dataset pricing by contract |
| CUFinder | Yes (ours; see disclosure) | Free starter credits; published monthly credit plans; misses and repeats not charged |
| Apollo.io | Plans public | Free plan; paid per-seat plans with credit allowances |
| ZoomInfo | No | Annual enterprise contracts, quote only |
| Clearbit / Breeze | No simple list | Credit-based enrichment inside HubSpot’s ecosystem |
Sources for every number in that table: People Data Labs’ pricing page and credits documentation, Hunter’s pricing page, and Coresignal’s pricing page. Checked August 2026; click through before budgeting, because pricing pages are living documents. Where a vendor’s row says “no,” that’s not criticism; it’s just a fact that changes how you’ll have to evaluate them.
A method note, so you know how to read this page: numbers appear only where a vendor documents them publicly, linked in the same sentence; undocumented pricing is described as a structure, never estimated; and CUFinder’s row is our own product, disclosed and described in shapes rather than sales copy. Where this page and a vendor’s live document ever disagree, the vendor’s document wins: it moved after my check date, that’s all.
Notice something else about that table: transparency clusters at the self-serve end of the market. The more enterprise the motion, the fewer public numbers, and the more your evaluation depends on the questions you ask. Which brings us to those questions.
The pricing-page reading checklist
When you open any vendor’s pricing page, search it for six words before you compare a single plan:
- “successful”: does the meter run on successful matches or on attempts?
- “expire”: do unused credits die at month-end?
- “rollover”: the kinder cousin; is it there in writing?
- “overage”: what happens past the allowance, at what rate?
- “per credit”: is one record one credit, or does the record type multiply it?
- “fair use”: the phrase that means an unlimited-looking plan has a limit somewhere
Five minutes with that checklist tells you more than an hour with the plan-comparison grid. The grid is marketing; the six words are the contract.
What actually drives the cost per record
Why does one lookup cost pennies and another a dollar? Five drivers explain nearly all of the spread:
Data type. Person records price above company records, consistently: PDL’s published tables put person enrichment at $0.28 per credit against $0.10 for company on the same tier, and that ratio is typical of the market. People are harder to track than companies, and the price says so.
Field depth. A firmographic sketch costs less than a full profile with verified email and direct phone. The perishable, high-value fields (contact channels) carry the premium, because they’re the ones that take continuous verification work.
Geography. Most vendors price one rate worldwide but DELIVER differently by region, which means your effective cost varies by geography even when the sticker doesn’t. A 90% match rate in the US and 55% in Europe is two different prices wearing one number.
Volume tier. Per-credit prices fall as commitments rise; PDL’s documented tiers drop from $0.28 toward $0.20 as monthly person-credit volume grows, and annual terms discount further. The catch is that the discount rewards commitment, and commitment is exactly what you can’t calibrate before testing.
Throughput needs. Rate limits shape how fast you can spend, and occasionally what you pay. Our own documented limit is a fixed window of 100 requests per minute (rate limits reference); some vendors sell higher throughput as a plan feature. If you have a deadline-shaped batch job, check the limit before the price.
Now flip the lens from their price list to your bill. Because the drivers above are printed; the next five usually aren’t.
The five questions that decide your real cost
Ask every provider these before you compare a single price.
1. Do failed lookups cost credits? This is the biggest one. If a no-match still charges you, a 50% match rate doubles your effective price. The transparent vendors put the answer in writing: PDL’s documented per-successful-match rule above is exactly what you’re looking for. Get every vendor’s version of that sentence.
2. Do duplicate inputs cost twice? Often yes, because uploaded data isn’t stored between requests. Deduplicate before you send and you cut a real slice off the bill immediately. (Some vendors solve it server-side, and ours doesn’t recharge repeated lookups, but never assume; ask.)
3. Do credits expire? Monthly allowances that reset punish uneven volume. Credit packs that roll over are far kinder if your usage is seasonal. The same nominal price can differ by a third in practice purely on this term.
4. Does one record cost one credit? Not always. Some providers charge per field group or per enrichment type, so a “full profile” can quietly be four credits rather than one. Person records and company records often meter differently too; PDL’s public tables price them at different per-credit rates, which at least makes the difference visible.
5. What’s the overage rate? Going over your allowance is often priced far above your contracted rate. Worth knowing before you find out in month three, when the quarter’s campaign doubles your volume.
📌 The question that saves the most money: "Do I pay for lookups that return nothing?" Everything else is arithmetic. That one is the difference between a predictable bill and a surprise.
Those are the questions. Now the number they all feed into.
The only number that matters: cost per usable record
Headline price per credit is close to meaningless on its own. What you want is what it costs to get one record you can actually act on.
cost per usable record = (price per credit × credits spent) ÷ records you can actually use
Work a quick example. Provider A charges half what Provider B does, but matches 40% of your list against B’s 80%.
Run 1,000 records through each. A gives you 400 usable records at half price. B gives you 800 at full price. Do the division and B costs you the same per usable record, while handing you twice as much data and half the workload. And that’s the optimistic version for A: add accuracy into it and the cheap provider often loses outright.
The arrow version, for your notes:
→ sticker price → adjust for YOUR match rate → adjust for miss and duplicate charges → adjust for the accuracy of what came back → cost per usable record. Every adjustment moves the cheap-looking option toward its real price.
This is also why the Reddit-favorite question, “what’s the cheapest data enrichment API?”, is the wrong query. Cheapest per credit and cheapest per usable record are routinely different vendors. The community threads are full of teams who learned that on their own budget.
Hidden costs that wreck an enrichment budget
Beyond the metering fine print, four costs live entirely outside the pricing page. Budget them or meet them later:
- Minimum commitments and platform fees. Some vendors bundle API access into a platform subscription or require a seat count you don’t need. The API line item looks fine; the invoice doesn’t.
- Decay and re-enrichment. Contact data ages continuously as people change jobs. A one-pass enrichment budget is really a year-one budget; the refresh cycles are a recurring cost most teams discover in year two.
- Integration engineering. Wiring the API into forms, CRM sync, and dedupe logic is days of work, and switching vendors later repeats a chunk of it. Cheap per credit can be expensive per migration.
- The parallel-run overlap. Evaluating a replacement properly means paying two vendors briefly on the same records. It’s the highest-information spend in the project, but it IS spend, so put it in the model.
None of these argue against enriching. They argue for modeling the whole system, which is exactly what the next section does.
Estimate your budget before you talk to anyone
You can model your annual enrichment cost in ten minutes with numbers you already have. Here’s the chain:
- Rows to enrich = your CRM size × a dedupe factor. Multi-team CRMs typically lose 15-20% of rows to duplicates, so 50,000 raw rows ≈ 41,000 unique records.
- Credits needed = rows, if misses are free, or rows ÷ expected match rate, if misses charge. At a 70% match rate, that single term turns 41,000 credits into 58,500. Same list.
- Add new-record flow = your monthly inbound and list-building volume, enriched on write.
- Add refresh cycles = contact-heavy segments decay fastest, so the records your revenue depends on need re-enriching once or twice a year. Multiply that segment by its refresh count.
- Annual cost = total credits × the documented per-credit price at your volume tier.
A worked illustration with round numbers (an illustration, not a quote). Say 41,000 unique records, 2,000 new records a month, and a 10,000-record hot segment refreshed twice a year: that’s 41,000 + 24,000 + 20,000 = 85,000 credits for year one. At a documented rate like PDL’s $0.10 per company-enrichment credit, that’s an $8,500 shape; at $0.28 per person credit, a $23,800 shape. Your real quote will differ, but now you’re negotiating from a model instead of a guess, and you’ll notice immediately when a proposal is triple your arithmetic.
One more thing the model teaches you: which variable to test first. Move the per-credit price by 10% and the total moves 10%. Move the MATCH RATE by 10 points (on a meter that charges misses) and the total can move twice that, because you’re buying credits for records you never receive. Match rate is the highest-variance term in the whole equation, and it’s also the only one you can measure for free before signing. That’s not a coincidence worth ignoring.
💡 Free tiers are for the model, not the mission: a few hundred free credits are exactly enough to measure your real match rate, the one number your whole budget model turns on. They are not sized for production, and stretching them into production usually violates the terms anyway. Test free, then buy deliberately.
How to run the comparison properly
Don’t compare pricing pages. Because data enrichment API pricing only becomes comparable once you run the same 200 records through each candidate, and if you need help building the candidate list itself, I’ve compared the field in our guide to data enrichment APIs compared.
- Take a real sample from your database, including the messy rows and the international ones
- Run it through every provider offering a free tier or trial
- Count matches, then hand-verify twenty of them for accuracy and freshness
- Divide total spend by records you’d genuinely use
Test on your worst data, not your cleanest. Everyone matches a well-formed enterprise record. The differences show up on small companies, international ones, and the rows you’d rather pretend don’t exist.
If a provider won’t let you test before signing, that’s a data point about the provider. Not a disqualifying one at enterprise scale, but it means their match-rate claims stay claims until after you’ve committed, and your budget model has to carry that uncertainty.
Log the test properly while you’re at it: one spreadsheet, one row per record, one column set per provider: matched, fields returned, hand-check result, response time. An hour of logging turns “provider B felt better” into “provider B matched 79% against 64%, at comparable accuracy, for $0.04 more per usable record.” One of those sentences survives a budget meeting. The other one doesn’t.
Three ways to cut the bill without switching
You can’t fix a vendor’s price list. You CAN fix your inputs, and the fixes compound. Let me tell you how I learned that.
Hamburg, 2020, quarterly budget review. Our enrichment invoice had roughly doubled mid-quarter, and I was the one who had to explain why. The audit was humbling: one automation had been re-enriching the same records on every sync, and a messy imported segment was failing lookups, on a vendor whose meter charged the misses. Nothing exotic. Just nobody watching.
The fixes came in three parts, and they’re the same three I’d give any team now:
Deduplicate first. Our 12,000-row export collapsed to about 9,400 unique companies once normalized and deduplicated. That’s a fifth of the spend gone before a single API call, the cheapest optimization in the entire stack.
Qualify before you enrich. Run cheap classification checks early and drop records that fail. There’s no point paying for a full profile on a company outside your market; enrich the records your workflows will actually touch.
Only pull fields you use. Narrow endpoints cost less than full-profile calls. If all you need is headcount, don’t buy the whole record. Our own company enrichment docs are one example of how field-level scoping looks in practice, and most serious vendors offer an equivalent.
Between them (plus a no-charge-on-miss clause at renewal), those changes took our bill down by roughly a fifth without changing vendors. In my experience, that trio saves more than switching providers ever does. Switching optimizes the rate; the trio optimizes the volume, and volume is usually where the waste lives.
And add the guardrail that would have caught my Hamburg surprise in week one instead of month three: a monthly reconciliation of your own call logs against the vendor’s credit report. Log every request, its endpoint, and whether it matched. When consumption jumps, the log tells you WHICH automation did it the same day, not at the quarterly review, with the budget already gone. Ten lines of logging code, one recurring calendar reminder. That’s the whole system.
Matching the model to your volume pattern
Which of the four models should you actually pick? Chart your last six months of enrichment volume (or your honest projection) and read it like this:
- Flat line → monthly subscription. You’ll consume the allowance, so buy it at subscription rates.
- Sawtooth (quarterly list builds, campaign spikes) → credit packs that roll over, or pay-as-you-go. Expiring monthly allowances are where sawtooth teams bleed money.
- Step function (steady growth) → start on a subscription one size SMALL and upgrade on evidence. Downgrading is always harder than upgrading, at every vendor.
- Spike then silence (one migration or cleanup) → pure pay-as-you-go or a one-time pack. Never sign an annual plan for a one-time job, however good the discount looks.
→ volume shape → model → THEN vendor. Teams that pick the vendor first end up rationalizing whatever model that vendor sells. The shape doesn’t lie; work from it.
Negotiating an enterprise enrichment contract
When your volume pushes you into quote-only territory, the pricing conversation changes shape. Terms beat discounts. The ones worth fighting for:
- Credit rollover: unused allocation carries into the next period instead of evaporating at renewal
- A capped overage rate: written down, not “we’ll work with you”
- No charge on failed lookups: the same clause the transparent self-serve vendors document publicly
- A quarterly true-up: adjust the committed volume against actual usage instead of betting a year in advance
- A pre-signature match test: on YOUR records, for YOUR geography, with the result attached to the contract
And bring the documented market with you. Public price lists (PDL’s credit tables, the $49 entry points at Coresignal and Hunter) are your benchmark for what commodity enrichment costs at self-serve scale. An enterprise quote can legitimately price above that benchmark for depth, support, and compliance. But it should have to explain the gap, and you should get to watch it try.
One more negotiating asset: your own usage model from the section above. Vendors size proposals generously when the buyer arrives without arithmetic. Arrive with arithmetic.
Timing helps too. Renewal quarters and fiscal year-ends move enterprise pricing conversations in the buyer’s favor, and starting your evaluation ninety days before YOUR renewal, rather than nine, is the difference between negotiating with options and negotiating with a deadline.
Frequently asked questions
How much does a data enrichment API cost?
Documented anchors run from free testing tiers to roughly $49-98 per month at self-serve entry (Coresignal’s pricing page starts monthly plans at $49, and People Data Labs’ pricing page starts Pro at $98), up to negotiated enterprise contracts with no public numbers. Because match rates vary so much, the only comparable figure is cost per usable record on your own list.
Do I pay for lookups that return no data?
With the better providers, no, and the best ones document it, like PDL’s published per-successful-match rule. But it isn’t universal, and it’s the single biggest hidden cost when it applies. Get the answer in writing from every vendor you evaluate.
Is pay-as-you-go cheaper than a subscription?
Per lookup, usually not. But it’s cheaper overall if your volume is uneven, because you’re not paying for an allowance you don’t consume. Steady volume favours a subscription; lumpy volume favours packs or pay-on-success. Run both against your last six months of actual usage and the answer falls out.
Are there free data enrichment APIs?
Free tiers, yes; genuinely free full products, no. People Data Labs documents up to 100 free records a month, Hunter 50 free credits, and CUFinder starts you with free credits (ours; judge accordingly). All are sized for testing match rates on a real sample, which is exactly what you should use them for.
Why won’t some providers publish pricing?
Because they price per deal, usually on annual contracts with negotiated volume, and publishing a floor would weaken every negotiation. It isn’t necessarily a red flag (enterprise depth costs real money) but it does mean a slower evaluation, no pre-contract testing, and a budget model built on your arithmetic instead of their rate card.
How much does People Data Labs cost?
Per their own published documents: a free plan of up to 100 records per month, Pro from $98 per month, and per-credit rates from $0.28 (person) and $0.10 (company) on monthly Tier 1, discounting with volume and annual commitment; full tables in their pricing and credits documentation. Above 100k records they move you to enterprise sales.
What’s the difference between per-record and credit-based pricing?
Per-record maps one lookup to one charge, simple to model. Credit systems let one call cost several credits depending on record type, fields returned, or enrichment depth, which buys flexibility at the price of predictability. Neither is inherently cheaper; credit systems just require you to read the metering rules before you can compare at all.
How can I reduce data enrichment costs?
In order of impact: deduplicate before sending anything, qualify records before enriching them, pull only the fields you use, secure a no-charge-on-miss clause, and match your plan shape to your volume pattern. Together those routinely cut a fifth or more off the bill, before any vendor negotiation happens.
The short version
Ignore the headline price. Ask whether failed lookups cost you, deduplicate before you send anything, and work out cost per usable record on your own sample, with documented numbers where they exist and healthy skepticism where they don’t.
The whole page in four lines:
- Four models exist; match yours to your volume shape, not to a vendor’s default
- Trust only documented prices and your own written quote; everything else is a rumor
- Cost per usable record is the only comparable number, and your match rate drives it
- Dedupe, qualify, and narrow your fields before you negotiate anything; the waste is usually yours
Do those and you’ll pick the right provider for reasons you can defend to whoever signs the invoice. Which, in my experience, is the part that actually decides these things. Budgets don’t approve vibes. They approve arithmetic with sources attached.
Start with the free tiers this week: measure your match rate on 200 real records, plug it into the budget chain, and walk into every pricing conversation already knowing your number. It’s an afternoon of work that reprices the entire market for you.
And if you’ve already been surprised by an enrichment invoice: what was YOUR version of my Hamburg audit? There’s always one automation nobody was watching. Find it before the next quarter does.