What a normal bounce rate looks like
"Normal" is not one number, because the published benchmarks do not all measure the same event. Two lists can both be described as normal and differ by an order of magnitude - one is measured at the send, the other is measured at the purchase. This page collects the numbers that get quoted and states what each of them is actually a measurement of.
The benchmarks, and what each one measures
| Number | What it measures | Source |
|---|---|---|
| 2-5% bounce | Verified lists: addresses checked against the mailbox before they enter the list | TAPAC |
| 10-35% bounce | Static, resold contact databases: the same record sold repeatedly, never re-checked | TAPAC |
| 23% churn per year | How fast contacts change jobs - the clock that ages any stored list | ZoomInfo, 2025 |
| 40% dead within 2 years | How fast mailboxes stop existing, independently of job changes | NeverBounce |
| 42% advantage | Freshly collected data against stale databases on the same task | Harvard Business Review, 2024 |
| 3.2x open rate | Personalized messages against generic ones - a copy effect, not a data effect | HubSpot, 2025 |
Only figures published by their source are listed. Where a vendor does not publish a bounce benchmark, none is invented here.
Why the two bounce numbers are not a contradiction
A verified list and a purchased database are different products measured at different moments. The verified list is checked against the mailbox and re-checked at use, so what remains is the residual decay that happened between the check and the send. The static database was verified once, at some point in its own history, and then resold - on a five-year-old record the check is archaeology. The 2-5% to 10-35% gap is the price of that difference, and it is paid per send: on a 5,000-contact list the difference is several hundred messages written to mailboxes that no longer exist, billed at the same rate as the messages that land.
How to benchmark your own list against these numbers
- Measure at the send, not at the purchase. A bounce rate computed from a verification report is a claim; the one computed from delivery reports is evidence.
- Separate unknown from deliverable. Catch-all domains accept every address without confirming the mailbox. Folding them into the usable count is how a list drifts from the 2-5% column into the 10-35% one.
- Split by source. Scraped this month, scraped a year ago, and bought are three different populations with three different decay rates. A single blended number hides all three.
- Keep the date on every record. The benchmark you compare against is a claim about a moment; without a timestamp on your own row there is nothing to compare.
What TAPAC publishes
Find and verify in one request, with the state as of that call: 2-5% bounce on verified contacts against 10-35% for static databases, catch-alls returned as unknown rather than counted as usable, 100 free searches, then $0.10-0.50 per verified contact, pay-per-use with no seat to renew in a month you do not send.
npx -y @tapacapi/mcp # tools: tapac_find_contacts, tapac_status # or hosted: https://tapacapi.com/mcp # or REST: POST https://tapacapi.com/v1/contacts/search
Related: the bounce rate that matters for cold email, what bulk verification does and does not prove, and what a check costs per contact.
← Back to TAPAC