Understanding email bounce messages
Email bounce messages explain why a message could not be delivered. Learn to read bounce codes, understand hard vs soft bounces, and fix the underlying issue.
On this page
A bounce message (also called a Non-Delivery Report or NDR) is an automated error email your mail server sends back when a message cannot be delivered. The bounce tells you why-reading it correctly helps you fix the problem.
Hard vs soft bounces
| Type | Meaning | Action |
|---|---|---|
| Hard bounce | Permanent failure-address doesn't exist, domain doesn't exist, or server rejects all mail | Remove the address from your list; do not retry |
| Soft bounce | Temporary failure-mailbox full, server temporarily unavailable, rate limit exceeded | Retry after some time; address may start working |
Common bounce codes
| SMTP code | Category | Common meaning |
|---|---|---|
| 550 | Hard | Mailbox does not exist or is blocked by spam policy-verify the address is correct |
| 551 | Hard | User not local; relay not permitted-the destination server doesn't handle this address |
| 552 | Soft/Hard | Mailbox full (quota exceeded)-wait and retry, or contact the recipient |
| 553 | Hard | Malformed address-there's a typo or invalid character in the recipient address |
| 554 | Hard | Message rejected-often a spam filter decision, blacklist, or content filter |
| 421 | Soft | Server temporarily unavailable-retry later |
| 450 | Soft | Mailbox unavailable-try again after a few minutes |
| 451 | Soft | Server error-the destination mail server had an internal problem, retry later |
Reading a bounce message
A bounce message contains:
- The failed address-confirms which recipient the failure was for
- The SMTP code-3-digit number identifying the failure type (see table above)
- The diagnostic message-human-readable explanation from the receiving server
- The original message-usually attached or at the bottom
Example bounce excerpt:
Your message to recipient@theirdomain.com was rejected:
550 5.1.1 The email account that you tried to reach does not exist.
Please try double-checking the recipient's email address for typos.
This is a 550 hard bounce-the address doesn't exist. Double-check the spelling.
Fixing common bounces
| Bounce reason | Fix |
|---|---|
| Address doesn't exist (550) | Verify the address with the recipient; check for typos |
| Mailbox full (552) | Contact the recipient directly; they need to free up space |
| Your IP is blacklisted (554) | See Email blacklists-check and delist your IP for how to check and remove listings |
| Spam content blocked (554) | Review your message content; avoid spam trigger words, all-caps, or many links |
| SPF/DKIM failure (550) | Check your SPF and DKIM records in cPanel → Email Deliverability |
Related: Email not sending-troubleshooting outgoing email | Email blacklists-check and delist your IP or domain | Why is my email going to spam? | How to set up email accounts in cPanel
Need email hosting?
UnderHost shared and managed hosting include mailbox, webmail, DNS, SPF/DKIM, and email support for your domain.





















