Skip to content

Bounce (hard vs soft)

Definition

A bounce is a rejection by the receiving mail server. A hard bounce is permanent: the mailbox does not exist, or the domain refuses your mail, and trying again will fail the same way. A soft bounce is temporary: a full mailbox, a server under load, a message deferred until later. Hard bounces should stop all future sends to that address. Soft ones should not.

At a glance

Category
Delivery
Hard bounce
Permanent — a 5xx reply; stop sending to the address
Soft bounce
Temporary — a 4xx reply; retried, then given up on
Reported as
An event on the message, and on your webhook endpoints
Rule of thumb
A hard bounce should suppress the address automatically

How it works

During delivery the receiving server answers with a numeric reply code. A code in the 500 range is a refusal it expects to repeat — no such user, domain not served here, message rejected by policy — and a code in the 400 range is a refusal it expects to be temporary. A sending service retries the temporary ones on a widening schedule and stops after a while. Either way you get an event naming the message, the address and the reply the server gave, so the reason travels with the failure.

Why it matters

Bounces are the clearest signal a mailbox provider has that a sender does not know who is on their list. Repeatedly mailing addresses that do not exist looks like a list bought rather than built, and it is one of the fastest ways to lose the inbox for everybody else on the same list. Acting on hard bounces automatically is therefore not tidy-mindedness but reputation management, and the cost of getting it wrong is paid by your delivered mail, not by the dead address.

Example

A message to a former employee at example.com is refused with a 550 reply naming an unknown recipient. That is a hard bounce: the address is added to the suppression list and no later send reaches it. A message to a colleague whose mailbox is full comes back with a 452 reply. That is a soft bounce: it is retried, it succeeds two hours later, and nothing is suppressed, because the address is perfectly real.

Common mistakes

  1. 01Suppressing on soft bounces, which quietly removes real customers whose mailbox happened to be full for an afternoon.
  2. 02Ignoring hard bounces because the list still looks large, which is the shape of a reputation problem you will notice only when good mail stops arriving.
  3. 03Reading the reply text rather than the code: the wording varies by server, and the class of the code is the part that is standard.

In Rasket

A permanent bounce adds the address to your suppression list on its own; a temporary one is reported and nothing is suppressed. Events

Frequently asked questions

Should I ever send to a hard-bounced address again?

Only if you have new evidence the address is real, such as the person signing up again from that address. Retrying a permanent failure on a schedule is exactly the behaviour receiving servers penalise.

How many soft bounces make a hard one?

There is no universal number. A sending service retries for a bounded period and then reports the message as failed; whether that address is worth keeping depends on whether it has ever accepted mail from you before.

Does a bounce mean my content was the problem?

Sometimes. A refusal on policy grounds — a blocked link, a spam verdict — arrives as a bounce with a 5xx code just as an unknown address does. The reply text is where that distinction usually lives.

Last updated 16 September 2026.

Start sending this morning

Verify a domain and send your first email in minutes.