A simple formula that turns "our data might be costing us money" into a number finance can actually approve.
Ask most commercial teams what bad physician data is costing them, and you'll get a shrug, a returned-shipment percentage, or a vague reference to "lower engagement." None of those get budget approved. A clean number does.
Here's a straightforward framework for turning a data quality hunch into an actual business case.
Step 1: Find your waste number
Before you can justify fixing anything, you need to know what doing nothing already costs.
Waste = Unreachable Records × (Product Cost + Round-Trip Shipping Cost)
"Unreachable" covers any record that can't be mailed successfully today, wrong address, outdated affiliation, inactive NPI, or a physician who's simply moved practices. "Product cost" is whatever you're shipping: a sample, a kit, a mailer. Round-trip shipping accounts for the fact that a bounced package costs you twice, once going out, once coming back.
In one real case, a healthcare company ran this exact math on 21,033 unreachable records out of 40,000 total physicians, at roughly $150 in product value and $40 in round-trip shipping per shipment. The result: $3,996,270, in a single campaign, on a database nobody suspected was a problem.
Don't have this number yet? You don't need to validate your entire database to get a usable estimate. Pull a random sample, 500 to 1,000 records is plenty, and have someone check how many are genuinely mailable today. Apply that percentage to your full database size, and you have a working number to start with.
Step 2: Price the fix
Get an actual quote for what it costs to validate and enrich the records that need it, whether that's a one-time cleanup or an ongoing monitoring service. This is the one number in the whole framework you can't estimate yourself, get it in writing from whoever's doing the work.
Step 3: Run the ratio
ROI = (Waste Eliminated − Enrichment Cost) ÷ Enrichment Cost
This turns the two numbers above into a plain percentage: what you get back for every dollar spent fixing the data.
Here's a stress test worth running before you trust it. Take the $3,996,270 waste number above and assume, deliberately on the high side, that fixing it costs $500,000, well above what most data quality engagements actually run. Even then:
ROI = ($3,996,270 − $500,000) ÷ $500,000 ≈ 700%
That's the number after a pessimistic assumption. In most real cases, it's a floor, not a ceiling.
Check My Data Free →Common mistakes that skew the number
A few things that quietly throw this calculation off in either direction:
Using list price instead of real cost. If your actual cost basis differs from list price, use the real number, otherwise the whole calculation is off before you've started.
Forgetting the return leg of shipping. It's easy to price in what it costs to send a package and forget that a bounced shipment also costs to process and return. That's the difference between a $150 figure and a $190 one.
Mismatching timeframes. If your waste number is per-campaign and your enrichment cost is annual, you're not comparing like with like. Annualize one side or the other before you run the ratio.
Step 4: Name the upside you're not counting
The formula above only captures hard, countable waste, product and shipping. It leaves out everything that doesn't show up on an invoice: rep visits wasted on physicians who've moved, prescribing conversations that never happened because outreach never landed, and campaign ROI figures that look fine only because nobody's comparing them to true reach.
None of that belongs in your core ROI number, it's real, but harder to verify precisely. It does belong in the room when you present the number, as the reason the actual return is probably higher than what you're claiming, not lower.
Before you take this to finance
A framework only holds up if the number survives scrutiny. Before you present it, make sure you can answer three things: where the "unreachable" count came from and whether someone can independently verify it, whether the enrichment cost is one-time or ongoing and whether your ROI math matches that same time frame, and whether you're counting one campaign or the whole year, since a database rarely runs just one campaign, and the same unreachable records cost you again on the next mailing, and the one after that.
Most teams never build this case, not because the math is hard, but because nobody ever assigns the two hours it takes to run it. The framework above is the whole exercise. The only variable you're missing is your own numbers.
Check My Data Free →