Hard Bounce vs Soft Bounce: What They Mean and How to Fix Them
An email bounce happens when your message fails to reach the recipient. A hard bounce means the email was permanently rejected: the address is invalid, deleted or the domain no longer exists. A soft bounce means delivery failed temporarily: the inbox is full, the server is down or the message exceeded a size limit. The difference matters because a hard bounce address should never receive another email, while a soft bounce usually resolves itself after a few retries.
Industry data puts the healthy threshold for total bounce rate at under 2% (Validity, 2025 Email Deliverability Benchmark). Go above that and your sender reputation takes direct damage. Emails start landing in spam, even for contacts whose addresses are perfectly valid.
This guide breaks down what each email bounce type means, lists the SMTP (Simple Mail Transfer Protocol) error codes you will see in your reports, defines acceptable bounce rates, and walks through how to keep your numbers low.
What is a hard bounce?
A hard bounce is a permanent rejection. The receiving server tells you "I cannot deliver to this address now or in the future." At the SMTP (Simple Mail Transfer Protocol) level, hard bounces return 5xx class error codes.
The most common causes:
- Invalid address: The address never existed or was mistyped.
james@gmial.cominstead ofjames@gmail.com. - Deleted account: The user closed their email account or left the company. Corporate addresses are especially prone to this: when an employee leaves,
james@company.co.ukstops working. - Dead domain: The company let its domain expire or shut down entirely. Every address on that domain becomes invalid.
- Permanent server block: The receiving server has permanently blocked your sending IP or domain due to policy violations.
When you get a hard bounce, the action is clear: remove that address from your list immediately. Sending to a known hard-bounce address repeatedly tells inbox providers you are not managing your list. That signal lowers your IP reputation, and over time even valid addresses on your list start bouncing or landing in spam.
A practical scenario: you send a campaign to 10,000 contacts and 500 hard bounce (5%). That single send exceeds the thresholds set by Google and Yahoo in their 2024 sender requirements. Your next campaign, even to a perfectly clean list, will see lower inbox placement because your reputation has already been scored down. Reputation takes months to rebuild. It takes one bad send to damage it.
What is a soft bounce?
A soft bounce is a temporary failure. The address is valid but something prevented delivery at that moment. SMTP soft bounces return 4xx class error codes, and the sending system will retry delivery over the following hours or days.
Common causes:
- Full inbox: The recipient has no storage space left. Frequent with corporate accounts that have tight quotas.
- Server temporarily unavailable: The receiving server is under maintenance, overloaded or experiencing a brief outage.
- Message too large: Your email exceeds the size limit set by the recipient's server.
- Content-based rejection: The receiving server's anti-spam or anti-virus filter flagged the content temporarily.
- Temporary DNS failure: A brief issue with the recipient domain's DNS records prevented the lookup.
A single soft bounce is not cause for alarm. But if the same address soft bounces across several consecutive campaigns, it likely signals a deeper problem. Professional email platforms typically convert a soft bounce to a hard bounce after three to ten failed attempts and stop further delivery.
In MailGraf, soft-bounced addresses receive roughly ten retry attempts at staggered intervals. If all ten fail, the address is moved to the suppression list automatically, so it does not consume sending credits or drag down metrics in future campaigns.
Hard bounce vs soft bounce: the key differences
Confusing the two leads to real problems. Retrying a hard bounce address because "it might work next time" erodes your reputation. Deleting a soft bounce address immediately means losing a contact whose inbox was simply full that day. Getting the distinction right directly affects whether your campaigns reach the inbox.
| Criterion | Hard bounce | Soft bounce |
|---|---|---|
| Type | Permanent error | Temporary error |
| SMTP code | 5xx (550, 551, 553 and similar) | 4xx (421, 450, 452 and similar) |
| Cause | Invalid address, dead domain, deleted account | Full inbox, server busy, size limit exceeded |
| Retry? | No, never send again | Yes, the system retries automatically |
| Action | Remove from list immediately | Monitor; if it repeats, suppress |
| Reputation impact | High: repeated sends to hard-bounced addresses seriously damage IP reputation | Low: a one-off soft bounce does not affect reputation |
| Industry tolerance | Below 0.5% | Below 2% (combined with hard bounces) |
What is an acceptable bounce rate?
"Is my bounce rate too high?" needs context. Here are the benchmarks email providers use when evaluating your sending:
| Metric | Ideal target | Acceptable upper limit | Danger zone |
|---|---|---|---|
| Hard bounce rate | Below 0.5% | 2% | Above 2%: immediate list cleaning needed |
| Soft bounce rate | Below 1% | 5% (single campaign) | Above 5%: server or content issue |
| Total bounce rate | Below 1% | 2% | Above 2%: sender reputation at risk |
| Google/Yahoo spam threshold | 0.1% | 0.3% | Above 0.3%: emails start getting rejected |
These numbers are not arbitrary. Google, Yahoo and Microsoft enforce them through the sender requirements they rolled out in 2024 and 2025. When your spam complaint rate crosses 0.3%, your emails face permanent rejection.
Calculating bounce rate is simple: (bounced emails / total emails sent) x 100. If you sent 10,000 emails and 150 bounced, your rate is 1.5%. That sits within acceptable limits but signals room for improvement.
The trend over time matters as much as any single number. A 1.5% bounce rate in one campaign may be fine, but if the rate climbs across consecutive sends, your list is ageing. Employees leave companies, accounts get deleted, domains expire. This natural erosion happens to every list. In e-commerce, roughly 22-30% of addresses become invalid within a year (Validity, 2025). A 10,000-person list can accumulate 2,000-3,000 dead addresses in twelve months if you do not clean it.
How to reduce email bounces
Keeping bounce rates low is not a one-time task. It requires ongoing maintenance:
1. Verify the list before sending. For lists that have not been mailed in months, or lists acquired from a new source, run email verification before you send. Verification catches invalid addresses, spam traps and disposable addresses before they hit your bounce rate.
2. Collect subscribers through double opt-in. With DOI (double opt-in), the subscriber confirms their address by clicking a verification link. Mistyped and fake addresses never make it onto your list. This is the single most effective way to prevent hard bounces from the start.
3. Configure SPF, DKIM and DMARC. Email authentication protocols ensure receiving servers trust your messages. Missing authentication can cause bounces even when the address is perfectly valid, because the server rejects your email on policy grounds rather than address validity.
4. Review bounce reports after every campaign. Identify which addresses bounced and why. Hard bounces go straight to the suppression list. Addresses that soft bounce repeatedly go on a watch list.
5. Stay away from purchased lists. Lists bought from third parties contain high rates of invalid addresses, spam traps and dormant accounts. A single send to a purchased list can push your bounce rate to 10-20% and permanently damage your IP reputation.
6. Run regular list hygiene. Move addresses that have not opened any email in six months into a separate segment. Send them a re-engagement campaign asking whether they still want to hear from you. If there is no response after two to three attempts, remove them. This proactive cleaning prevents dormant addresses from slowly turning into hard bounces.
7. Warm up new IPs and domains gradually. Starting with a high-volume send from a new IP or domain triggers spam filters immediately. Begin with a low daily volume, increase gradually over weeks, and monitor bounce rates at every step. In MailGraf this warmup process is planned on a per-account basis and tracked from the first send.
How bounce management works in MailGraf
MailGraf handles bounce management automatically. The system processes bounce reports in real time after every send:
Automatic hard bounce handling. When an address hard bounces, the system adds it to the suppression list immediately. No future campaigns will reach that address. No manual intervention needed.
Smart soft bounce handling. Soft-bounced addresses receive roughly ten retry attempts at staggered intervals, because a busy server or full inbox may resolve within hours. If all attempts fail, the address moves to the suppression list automatically.
Pre-send bounce check for new lists. For every new account, we run a bounce test on the imported list before the first send. The test takes five to ten minutes and shows the list's health status. If the bounce rate exceeds 5%, we clean the list using MailGraf's email verification service. Invalid addresses are suppressed, and the customer starts with a clean list.
A pattern we see consistently: first-time bulk senders typically have 15-25% invalid addresses in their lists. CRM databases that have not been updated in years and contact lists collected at trade shows are the most common culprits. Cleaning before the first send protects the IP reputation and prevents wasted sending credits.
We also recommend reviewing bounce details in your campaign reports after every send. If you see SMTP code 5.1.1 (invalid address) frequently, your list collection method needs attention. If 4.2.2 (full inbox) codes are increasing, your audience may include many corporate accounts with tight quotas, and adjusting your send timing may help.
Soft bounce SMTP codes
Soft bounce codes belong to the 4xx series and indicate temporary problems. The sending system retries delivery when it receives these codes. Monitoring them regularly reveals patterns about your audience's email infrastructure.
| Code | Meaning |
|---|---|
| 421 | Receiving server unreachable, usually due to heavy load |
| 422 | Recipient inbox full, email not accepted |
| 431 | Disk space allocated to recipient mailbox is full |
| 432 | Recipient mailbox closed or unreachable |
| 441 | Connection issues with recipient email server |
| 450 | Recipient email server temporarily unavailable |
| 451 | Local error on recipient email server |
| 452 | Recipient email server lacks sufficient system resources |
| 471 | Internal error on recipient email server |
Hard bounce SMTP codes
Hard bounce codes belong to the 5xx series and indicate permanent failures. Do not send to addresses that return these codes.
| Code | Meaning |
|---|---|
| 5.0.0 | Unknown error occurred |
| 5.1.0 | General address problem |
| 5.1.1 | Destination mailbox address is invalid |
| 5.1.2 | Destination system address is incorrect |
| 5.1.3 | Syntax error in destination mailbox address |
| 5.1.4 | Destination mailbox address is ambiguous |
| 5.1.5 | Destination mailbox address is valid but unusable |
| 5.1.6 | Mailbox has been moved |
| 5.1.7 | Syntax error in sender mailbox address |
| 5.1.8 | Sender system address is incorrect |
| 5.2.0 | General mailbox problem |
| 5.2.1 | Mailbox disabled, not accepting messages |
| 5.2.2 | Mailbox full |
| 5.2.3 | Message exceeds size limit |
| 5.3.0 | General mail system problem |
| 5.3.1 | Mail system full |
| 5.3.2 | System not accepting network messages |
| 5.3.4 | Message too large for system |
| 5.4.0 | General network or routing problem |
| 5.4.1 | No response from server |
| 5.4.4 | Message cannot be routed |
| 5.4.7 | Delivery time expired |
| 5.5.0 | General protocol problem |
| 5.5.1 | Invalid command |
| 5.5.2 | Syntax error |
| 5.7.0 | General security problem |
| 5.7.1 | Delivery not authorised, message refused |
| 5.7.5 | Encryption error |
Pay special attention to the 5.7.x series. These codes indicate security-related rejections. Code 5.7.1 (delivery not authorised) in particular means the receiving server has blocked your sending IP or domain. If you see this code frequently, check your SPF, DKIM and DMARC configuration and verify your IP has not been blocklisted using tools like Google Postmaster Tools or MXToolbox.
Frequently asked questions
What does hard bounce mean?
A hard bounce means your email was permanently rejected by the receiving server. The address is invalid, the account has been deleted or the domain no longer exists. It is reported with SMTP 5xx error codes. Hard-bounced addresses should be removed from your list immediately and never mailed again.
What does soft bounce mean?
A soft bounce is a temporary delivery failure. The inbox may be full, the server may be busy or there may be a brief access issue. It is reported with SMTP 4xx error codes. The sending system will automatically retry over the following hours or days, and the email is usually delivered once the issue resolves.
What is a good bounce rate for email campaigns?
A total bounce rate below 2% is considered healthy. Hard bounce rate should stay below 0.5%, and the combined rate (hard plus soft) should remain under 2%. Anything above these thresholds signals list quality problems and puts your sender reputation at risk.
Should I delete soft bounce addresses?
Not immediately. Soft bounces are temporary, and the address may accept email on the next attempt. However, if the same address soft bounces across three or more consecutive campaigns, treat it as a problem address and suppress it. Continuing to send to repeatedly soft-bouncing addresses wastes credits and can eventually affect your reputation.
My hard bounce rate suddenly spiked. What do I do?
Remove all hard-bounced addresses from your list immediately. Then run the entire list through an email verification service to catch other invalid addresses before your next send. Going forward, switch to double opt-in for new sign-ups and schedule regular list cleaning every quarter. If you recently imported a new list segment, that import is likely the source of the spike.
What is the difference between a bounce and a spam complaint?
A bounce means the email was not delivered at all. A spam complaint means the email was delivered but the recipient marked it as spam. Both hurt your sender reputation, but spam complaints carry more weight. Google and Yahoo require complaint rates below 0.3%. Keeping a permission-based list through proper opt-in practices reduces both bounces and complaints.
Originally published: Apr 9, 2026
Don't miss out
Get the latest email marketing tips and exclusive updates.

