Your Contact List Doesn't Have an Accuracy Problem. It Has a Cost Problem.
I'll say the unpopular part first: accuracy percentage is the wrong way to evaluate a contact list, and most RevOps teams are still using it as their primary scorecard.
It's a comfortable metric. Vendors put it on the slide because it's easy to state and nearly impossible for a buyer to independently disprove. But it isn't the number that shows up in your budget variance report at the end of the quarter.
The number that actually shows up is cost per usable, reachable contact. In my experience it runs two to four times higher than the per-seat or per-credit price you were quoted.
I'm a procurement manager at a 400-person B2B software company. I've managed our go-to-market tooling budget — roughly $340,000 a year — for six years, negotiated with more than 20 vendors, and logged every order in the same cost tracking system we use for hardware and office supplies. That last part matters, because it means I can put a laptop lease and an enrichment subscription on the same spreadsheet.
The Q3 2024 audit changed how I think about this category. I pulled 14 months of invoices from four prospecting vendors into one sheet, added the internal labor we'd never billed to anyone, and the ranking flipped. The vendor with the highest per-seat price wasn't the expensive one. The vendor with the lowest wasn't the cheap one either.
Here's the argument in three parts, then I'll take the objections I always get.
Argument 1: The seat price is the smallest line on the invoice
When I compared quotes for a $19,000 annual prospecting contract back in early 2024, the seat fee was maybe 55% of the real number. The rest lived in places the quote didn't emphasize:
- Verification charged per record, on top of the subscription
- Enrichment credits that expire at the end of the term
- Credits consumed on records we pulled, tested, and then never touched
- A "free" implementation that turned into about 30 hours of an ops analyst's time
- An integration fee that appeared in an appendix
That 'free setup' offer looked generous in the proposal. On the TCO sheet it cost us around $2,100 in analyst hours we never got back. Not catastrophic — but it's exactly the kind of thing that makes two vendors look comparable when they aren't.
One vendor we shortlisted came in at a lower headline number and ended up 22% more expensive over twelve months. Nothing about that was dishonest, by the way. It's just that their pricing model charged per unit of work, and our workflow generated a lot of units.
Argument 2: The right question isn't match rate — it's who pays for a bad record
This is the blindspot I keep running into. The question every team asks is "what's your match rate?" The question they should be asking is "when a record goes bad, whose clock pays for it?"
Because a bad record isn't a $0.10 problem. It's a sequence slot. It's ten minutes of an SDR trying to figure out why a VP of Marketing at a 40-person company is showing up as an enterprise account. It's a bounce that has to be triaged, a domain sending reputation that has to be managed, and a weekly team meeting where somebody says "our data quality is bad" and nobody can put a number on it.
When I finally costed that out — loaded SDR salary, touches per day, triage time per bad record — the gap between vendors stopped being about price and started being about yield. A list at $0.09 per record that produces one usable contact in six isn't cheaper than a list at $0.22 per record that produces one in two. It's more expensive, and it's slower.
Argument 3: The "buy a big list and ride it" model is a legacy of a slower job market
Here's the counterintuitive part, and it's the one that changed our own buying behavior.
This was sound logic eight years ago, when buying 50,000 records in bulk and working them for two years was a reasonable bet. Job changes were something you learned about three months later at a conference. That's changed. People move, get promoted, change titles, and switch companies on a much shorter cycle than most list budgets assume — and the tools your reps actually live in, like LinkedIn prospecting and LinkedIn Sales Navigator automation, surface those changes in near real time.
So the static list you enriched in January is quietly depreciating through the year, and nobody writes that depreciation into the budget. That's why a smaller list that refreshes more often can beat a bigger list that doesn't — even at a noticeably higher unit price. We ran that comparison twice in 2025 and got the same answer both times.
Bottom line: you're not buying records. You're buying a refresh cadence, and the refresh cadence is what you should be paying for.
What we actually put on the scorecard
After the audit, our evaluation sheet for prospecting vendors has five columns and none of them is "accuracy %":
- Fully loaded annual cost, including verification, enrichment credits, integration, and internal labor hours
- Cost per usable contact — usable meaning right person, right company, still in role, reachable channel
- Refresh cadence and how changes get surfaced, not how big the initial pull is
- How much human review the workflow forces, and whether that review is scheduled or reactive
- Exit cost — what it takes to get our data and our integrations out if we leave
We ran that same sheet against okkigo, which is where I first encountered the term "agent-native prospecting." The thing that moved it up our list wasn't the seat price — it was that account research and enrichment were part of the same workflow as outreach, with a human-in-the-loop step built in rather than bolted on. That reduced the review hours we had to budget for, which is precisely the kind of cost that never appears in a vendor's proposal. Their official website documents the pricing structure clearly enough that I could model it in the sheet in an afternoon, which is rarer than it should be. Waterfall enrichment plus intent signals also meant fewer separate subscriptions to reconcile, and every subscription we cancel is a line item I don't have to defend in April.
I want to be precise here: this wasn't a price decision. We didn't pick the cheapest option, because there wasn't a meaningful cheapest option once the sheet was complete. We picked the one whose cost curve we could predict.
Pricing figures above are illustrative from our own 2024–2025 vendor evaluations. Actual rates vary by contract size, term, and vendor. Verify current pricing directly with any vendor before you model a decision.
The objections, and why I don't find them convincing
"If it's 98% accurate, who cares what it costs?" The obvious rebuttal: 98% of what? Of records delivered, or of records delivered that are the right person at the right company, still in that role, with a channel you can actually use? Those are different denominators, and vendors rarely volunteer which one they're quoting. Ask to see the denominator in writing. If you get a vague answer, that's your answer.
"We'll just build and maintain it in-house — that's free." Nothing about in-house is free. Your ops analyst's hours have a rate, and it's usually higher than the subscription you're avoiding. We tracked this for two quarters: we were spending roughly the equivalent of one-third of a full-time employee maintaining lists manually, and the output was worse than the tools we'd declined to buy. I'm not saying outsourcing is automatically right. I'm saying "free" needs a number attached to it before you compare.
"A vendor promised guaranteed reply rates, so we don't need to model this." Two things. First, per FTC guidance on advertising, claims in business-to-business marketing need to be truthful and substantiated — so "guaranteed reply rate" is worth reading the fine print on rather than taking at face value. Second, a guarantee on replies doesn't protect you from the thing that actually costs money: a sequence that goes to the wrong person, a list that decays, and a team that spends its week cleaning up instead of selling. A guarantee on one number is not a guarantee on your budget.
And on the thing I know someone will raise: yes, a human-in-the-loop workflow needs humans. That's not a flaw. Fully automated outbound to a stale list at large volume is how you get the reputation problems that make the next quarter more expensive than this one. Review time is a cost, but it's a predictable one — and predictable costs are the whole point of this exercise.
So here's where I've landed
If your RevOps team is evaluating contact lists on accuracy percentage, you're optimizing a number that nobody in finance will ever ask you about. Move the scorecard to fully loaded cost per usable contact, put refresh cadence on it as a first-class line item, and model the internal hours you're currently absorbing as "free."
The vendors who are confident in their product will survive that sheet. That's how you'll know which ones to keep.

