Last reviewed:
Translated from German; if the versions differ, the German version applies.
Bounce (hard bounce and soft bounce)
In short: A bounce is an email that could not be delivered and comes back to the sender as an error message. With a hard bounce the reason is permanent, for example an address that does not exist; with a soft bounce it is temporary, for example a full mailbox.
How a bounce comes about
Mail servers respond to every step of delivery with a three-digit code. The first digit is what matters (RFC 5321, Section 4.2.1):
- 4yz – temporary failure. The same request may succeed later without change; the sending server should try again.
- 5yz – permanent failure. The sending server should not repeat exactly this request.
Enhanced status codes under RFC 3463 give the reason in more detail. They have three parts, for example 5.1.1: the first number is the class (4 temporary, 5 permanent), the second the subject (1 address, 2 mailbox, 7 security and policy), the third the detail.
If the receiver rejects during the connection, the sending platform sees the code immediately. If delivery only fails later along the way, the server that gives up writes a notification to the return address. It sends such messages itself with an empty return address so that no loop of error messages arises (RFC 5321, Section 3.6.3).
Hard bounce and soft bounce compared
| Hard bounce | Soft bounce | |
|---|---|---|
| class | 5 (permanent) | 4 (temporary) |
| typical enhanced codes | 5.1.1 address unknown | 4.2.2 mailbox full |
| retry | not unchanged | yes, later |
| usual handling | remove the address from the list | monitor; if the address fails again and again, treat it like a hard bounce |
Not every class 5 code means a dead address. 5.7.1 means “Delivery not authorized, message refused” and may be due, for example, to a blocklist or missing authentication. In that case it helps to clarify the cause first instead of deleting the address.
Easily confused
- Bounce rate in web analytics: In Google Analytics, “bounce rate” is the share of sessions without engagement. That has nothing to do with undelivered emails; in email marketing, bounce rate means undeliverable emails divided by emails sent.
- Out-of-office reply: An automatic reply “I am on holiday” is not a bounce. The message was delivered.
- Spam folder: If an email lands in the spam folder, there was no bounce either, because the server accepted it.
Example
A notification of a failure has a fixed, machine-readable format (RFC 3464). The most important part looks roughly like this, here with example addresses:
Final-Recipient: rfc822;anna@example.de
Action: failed
Status: 5.1.1
Diagnostic-Code: smtp; 550 5.1.1 user unknown
Action: failed and the status 5.1.1 show: permanently failed, the address does not exist. A sending platform evaluates exactly these fields and marks the address as a hard bounce.
Frequently asked questions
What is the difference between a hard bounce and a soft bounce? A hard bounce has a permanent reason (class 5), a soft bounce a temporary one (class 4). The server should not repeat the first unchanged, but should retry the second.
When does a soft bounce become a hard bounce? No standard sets a fixed value; RFC 5321 only covers the individual delivery attempt. If an address fails temporarily again and again over several mailings, it makes sense to treat it like a hard bounce. How your sending platform handles this is described in its documentation.
How do I recognise the cause? By the enhanced status code and the text of the error message. 5.1.x concerns the address, 4.2.x and 5.2.x the mailbox, 5.7.x the recipient’s security and policy.
Related terms
Matching tool
- Metrics calculator: calculates bounce rate and delivery rate from the figures of your sending platform.