The short answer, the one you came for: keep total bounces under 2%. Instantly, a sending platform drawing on its own customers' data, puts the cold email ceiling at 2% and says anything past 5% does real damage to your sending reputation. Spam complaints matter just as much: the bulk sender rules published by the three big providers require complaints under 0.3%, with 0.1% treated as the number to actually aim for, as of September 2026.
So 2% is the published answer.
We work to under 0.5%.
A threshold is not a target
That 0.5% is my own working standard, not an industry rule, and I want to be clear about the difference. No mailbox provider published it. It is the number my team holds a list to before anything goes out.
The reasoning is simple. Two percent is the line where providers start making decisions about you. Anything at 1.8% is technically passing and is one bad data source away from failing. Reputation damage is slow to arrive and slower to undo, and you cannot see it happening from inside your own inbox.
If the ceiling is 2%, the place to stand is nowhere near it.
A bounce rate is a readout on your list
It tells you how much of your data was already wrong on the morning you pressed send.
Hard bounces mean the address does not exist. Somebody left, the company renamed its domain, the address was a guess produced by a pattern tool that ran first-initial-plus-surname and hoped.
Soft bounces are temporary: a full mailbox, a server refusing traffic for a moment. Those are noise unless they repeat.
Two more things distort the number, and neither is a plain bad-address problem. Catch-all domains accept everything at the server and decide later, so a verification tool returns "unknown" and your report looks clean while messages quietly go nowhere. And once your domain reputation is already damaged, receiving servers start rejecting mail outright. Then bounces stop being a cause and become a symptom, which is a different post and a different fix, covered in the sending setup I run before any campaign.
Where the bad addresses come from
Almost always the same three places.
Cheap lists bought from a freelancer on a marketplace. These come back with bounces through the roof so reliably that the price you paid predicts the result, and nothing about the file tells you how old it is.
Scraped data that was never verified. A tool pulled names and companies, guessed at the email format, and nobody checked.
Old CRM exports. Your own data decays. People move roles every couple of years, and a contact list you built in 2023 is now part fiction.
Getting under half a percent before the first send
The order matters more than the tooling.
- Source the list properly. Sales Navigator, Apollo, UpLead, ZoomInfo, RocketReach. A verified provider list beats a scrape every time, and it is cheaper than a burned domain.
- Run every address through a verification service. NeverBounce and DeBounce both do the job. Of all five steps here, this is the one that moves the number most, and it is the one people skip when they are in a hurry.
- Pull every address the verifier cannot confirm out of the main send. An unknown is a coin flip and you are betting a domain on it.
- Check the file for role addresses. info@, sales@, contact@. They rarely bounce and they also rarely reach a human.
- Re-verify anything older than 90 days, including your own CRM export.
Then send. If you want the full version of that check, including the parts that catch a list quietly rotting, I wrote it up as a pre-send audit you can run yourself.
What a clean bounce rate does not buy you
A 0.3% bounce rate and a campaign nobody replies to is a normal outcome. Verification proves the address exists. It says nothing about whether that person is the decision maker, whether the company is anywhere near your market, or whether the message deserves an answer.
The bounce number is the cheapest signal you have about data quality, and it is the only one you can check before you spend a single reputation point. That is why it matters. It is also why it gets treated as a scorecard when it is really a smoke alarm.
Most of the campaigns that reach me with a bounce problem do not have a sending problem at all. They have a list nobody wanted to pay to build properly, which is the argument behind the case for spending on data instead of copy.
Check yours before Thursday. If it is over half a percent, stop the sends and go back to the file.
