Skip to content

Deliverability & Reputation

Why a permanent hard bounce and a temporary soft bounce mean completely different things to mailbox providers — with the actual SMTP and DSN status codes involved, and the roughly 2% benchmark most senders aim to stay under.

7 min read

Deliverability & Reputation

7 min read

Hard bounces: the number that quietly damages your sender reputation

Why a permanent hard bounce and a temporary soft bounce mean completely different things to mailbox providers — with the actual SMTP and DSN status codes involved, and the roughly 2% benchmark most senders aim to stay under.

Soft bounce vs. hard bounce

A bounce is what happens when an email couldn't be delivered, and the receiving server sends a notice back explaining why. Not all bounces mean the same thing, and mailbox providers care a great deal about the difference. A soft bounce is temporary — the recipient's inbox was full, or their server was briefly unreachable — and it's expected to eventually succeed if retried. A hard bounce is permanent: the address doesn't exist, the domain doesn't exist, or the mailbox was closed for good. There's no retry that fixes a hard bounce.

The actual codes behind a bounce

When a receiving server rejects a message, it replies with a 3-digit SMTP status code, and almost always an extended status code alongside it (RFC 3463) in the form class.subject.detail. The leading digit of both is what actually separates permanent from temporary:

Code familyMeaning
2.x.x / 250Success — the message was accepted.
4.x.x / 4xxTemporary failure — try again later. This is a soft bounce.
5.x.x / 5xxPermanent failure — don't retry. This is a hard bounce.

These arrive inside a formal Delivery Status Notification (DSN) message, standardized by RFC 3464. A DSN's machine-readable part carries an Action: field — failed for a hard bounce, delayed for a soft one — alongside the Status: code itself. Reading those two fields directly, rather than trying to interpret the human-readable explanation text, is what makes it possible to tell a genuine hard bounce apart from a temporary one reliably.

What usually causes a hard bounce

  • A simple typo in the email address that was never caught before sending.
  • An account that was closed or an employee who left the company long ago.
  • A domain that no longer exists at all.
  • Addresses from an old, purchased, or unverified list that was never checked for accuracy.

Why mailbox providers watch this number so closely

Mailbox providers treat a sender's hard bounce rate as one of the clearest available signals of list quality. A sender who keeps hitting dead addresses is either buying stale lists, scraping addresses carelessly, or simply not verifying who they're emailing — and all three patterns correlate strongly with spam behavior, even when the sender's actual intentions are perfectly legitimate.

The benchmark most senders aim for

There's a widely cited industry rule of thumb: keep a hard bounce rate under roughly 2%. Cross that line consistently, and most mailbox providers start treating the sending pattern as a genuine reputation risk rather than a minor, forgivable list-quality issue — which can quietly drag down inbox placement for every message that sender sends afterward, not just the ones that bounced.

Keeping your bounce rate low

  • Verify email addresses before sending to them for the first time, rather than after the fact.
  • Periodically clean existing lists to remove addresses that have started bouncing.
  • Avoid old, purchased, or scraped lists — they decay in quality far faster than most people expect.
  • Stop emailing addresses that bounce even once as a hard bounce; retrying them doesn't help and only makes the pattern worse.

Find out your real hard bounce rate

Aimly Audit checks your recent sending history and shows you exactly how your bounce rate compares to the industry benchmark.