What is bounce rate?

Bounce rate, defined
Bounce rate is the share of sent messages a receiving server refused, and mailbox providers read it as the clearest available proxy for whether you maintain your list.

Under 2% is healthy for a maintained list. Between 2 and 5% something is aging or an import went unchecked. Above 5% providers begin throttling, and above 10% some will stop accepting you.

Separate the two types in your reporting. Permanent failures mean addresses to delete; temporary ones mean mailboxes that are full, servers that were busy, or greylisting you should have retried.

The first send to an old list is where this bites. A file that sat for eighteen months can bounce a fifth of its addresses in one campaign, which is a reputation event rather than a metric.

Watch it per source rather than per send. One lead-generation vendor bouncing at 12% inside an overall 3% is a contract conversation, and the average hides it completely.

How ZapBounce reports it

Our invalid count is the closest prediction available of the hard-bounce share of a send, measured before you send it. Catch-all and unknown addresses are excluded from that estimate, because guessing about them is what would make the number dishonest.

Estimating the rate before you send

Say you've verified a 40,000-address list. 2,900 came back invalid, 9,000 catch_all, 2,100 unknown, and 26,000 valid. You suppress the invalids, leaving 37,100.

If you'd mailed the original file, the invalids alone would have produced a bounce rate of about 7%, well into the range where providers start throttling. That part of the estimate is solid.

The catch-all segment is the part nobody can promise you. Suppose one in ten of those 9,000 turns out to be dead. That's 900 bounces on 37,100 sends, or 2.4%, still above the 2% you want. Suppose it's one in twenty, and you're at 1.2%. You can't know which in advance, so don't find out all at once. Send the valid segment first, then a 1,000-address sample of the catch-alls, and measure. If 60 of the sample bounce, you've learned the rate is 6% at a cost of 60 bounces instead of 540.

Read the status code before you count it

Two bounces with the same 550 can mean opposite things, and the enhanced status code after it tells them apart. 5.1.1 is a bad mailbox: the address doesn't exist, so suppress it. A full mailbox shows as 5.2.2 or 4.2.2, which is a real person who's out of space. Policy refusals carry 5.7.1, and they're usually about you: your IP, your domain, or your content.

That last category is why a sudden jump needs reading before acting. If 3,000 addresses at one provider all bounce with 5.7.1 on the same afternoon, you've been blocked, and deleting those contacts would throw away good data. Fix the block and retry.

Mind the denominator too. The rate is bounces divided by messages sent, per campaign. On a 100-message send, three bounces is 3% and means very little. Break the figure out by receiving domain as well, since a 1.5% average can hide 9% at one provider.

Bounce rate: common questions

What is an acceptable bounce rate?

Under 2%. Between 2 and 5% needs attention, and above 5% providers start treating the list as unmaintained.

Do soft bounces count?

They are counted separately and weighted less. A repeated soft bounce eventually converts to a hard one.

Can verification guarantee a low bounce rate?

It removes the addresses we could prove are dead. Catch-all addresses remain unproven, and some of those will bounce.

See this on your own list

100 free checks a month, and the unknowns come back labeled.