Quick bounce reference
An email bounce is a Delivery Status Notification (DSN) sent back by the receiving mail server when your message could not be delivered. Two types matter: hard bounces (permanent failures, remove the address immediately) and soft bounces (temporary failures, ESP retries automatically for 48 to 72 hours).
| Hard bounce | Soft bounce | |
|---|---|---|
| Nature | Permanent | Temporary |
| SMTP code class | 5.x.x | 4.x.x |
| Retry by ESP | No | Yes, typically 48 to 72 hours |
| Action needed | Remove address from list immediately | Monitor, no immediate action |
| Impact on reputation | High (signals poor list hygiene) | Low to moderate |
| Typical causes | Invalid mailbox, blocked domain, hard rejection | Mailbox full, server down, greylisting, rate limit |
| Target rate | Under 2 % | Under 5 % |
What is an email bounce?
An email bounce happens when the message you sent cannot be delivered to the recipient’s mailbox. Instead of reaching the inbox, the receiving mail server sends back a Delivery Status Notification (DSN) describing why the delivery failed. That DSN is the “bounce message” you see in your ESP dashboard or your Return-Path mailbox.
Bounces are not optional collateral damage; they are a measurable signal of your sending health. Inbox providers (Gmail, Yahoo, Microsoft) watch your bounce rate as one of the inputs into your reputation score. A bounce rate above 2 % triggers throttling at most major receivers; above 5 % you start to be treated as suspicious; above 10 % you are effectively a spammer in their eyes, regardless of your content.
The good news is that bounces are also the easiest deliverability signal to fix. Two habits handle most of the work: pre-send validation of new addresses, and immediate removal of every hard bounce after a campaign.
Hard bounce vs soft bounce: the difference that matters
The two categories of bounce sit at opposite ends of the action spectrum. Treat them the same way and you will either burn through good addresses or rot your list with dead ones.
Hard bounce
A hard bounce is a permanent rejection. The receiving server is telling you the message will never reach this recipient, today or any day, regardless of how many times you retry. The SMTP response class is 5.x.x (permanent failure). Common reasons include a non-existent mailbox, an unknown domain, an MX record that does not resolve, or a sender block on your IP or domain.
The only correct response to a hard bounce is immediate, permanent removal from your sending list. Most ESPs do this automatically (called “suppression”), but you should still audit your suppression list quarterly to confirm.
Soft bounce
A soft bounce is a temporary failure. The receiving server is saying “not right now, try again later.” The SMTP class is 4.x.x. Common reasons include a full mailbox, a recipient server that is temporarily down, a graylisting policy that requires the message to be retried, a rate limit hit, or a fleeting reputation issue.
ESPs queue soft bounces and retry on a back-off schedule, typically every few hours over 48 to 72 hours. If retries succeed, the message gets delivered and the bounce disappears from your stats. If retries keep failing past the queue timeout, the soft bounce is escalated to a hard bounce, and the address is suppressed.
The most common hard bounce causes
- Invalid mailbox. The recipient mailbox does not exist on the receiving server. Codes:
550 5.1.1,550 5.1.10. The single most common hard bounce. - Unknown domain. The recipient’s domain has no MX record or does not resolve in DNS. Codes:
550 5.1.2,550 5.4.4. - Account closed or disabled. The mailbox once existed but was closed or suspended. Often returns
550 5.1.1after a delay of weeks or months. - Sender blocked. Your sending IP or domain is on a blocklist used by the recipient (Spamhaus, Barracuda, Microsoft Defender). Codes vary:
550 5.7.1,554 5.7.1. - Authentication failure. SPF, DKIM or DMARC fails outright and the receiver’s policy rejects. Codes:
550 5.7.x. - Recipient domain rejecting all mail. The domain is configured to refuse inbound mail (parked, sold, abandoned).
- Spam-trap or pristine address hit. Some traps return a hard bounce as a signal. Better catch them with pre-send validation, because the reputation damage happens before the bounce arrives.
- Message rejected by content filter. Permanent rejection after content scoring. Codes:
550 5.6.0,554 5.6.0.
The most common soft bounce causes
- Mailbox full. The recipient is over their storage quota. Codes:
452 4.2.2,452 4.3.1. - Greylisting. The receiving server uses graylisting; it expects a retry after a delay before delivering. Codes:
451 4.7.1,450 4.2.0. - Rate limited. You are sending faster than the receiver accepts from your IP. Codes:
421 4.7.0,451 4.7.1. - Connection timed out. The remote server is temporarily unreachable. Codes:
421 4.4.2. - Receiving server overloaded. Resource exhaustion on the recipient side. Codes:
421 4.3.2. - Temporary content rejection. Spam filter triggered but with a temporary verdict. Codes:
451 4.7.x,471 4.7.1. - TLS handshake failure. Cipher mismatch, expired certificate, fallback failure. Codes:
454 4.7.0. - DNS lookup failure. The receiver could not resolve your sending domain. Codes:
451 4.4.4.
For a complete reference of every code with cause and fix, browse our SMTP error codes directory with 120+ entries.
SMTP code class quick reference
| Class | Meaning | Bounce type | Retry |
|---|---|---|---|
2xx | Success | None (delivered) | Not applicable |
3xx | Intermediate (rarely seen as bounce) | None | Continue |
4xx | Temporary failure | Soft | Yes |
5xx | Permanent failure | Hard | No |
The three-digit codes are paired with enhanced status codes (x.y.z format defined in RFC 3463). For example 550 5.1.1 means: permanent (5), address class (1), invalid address (1). Reading both halves gives the full diagnostic.
Bounce rate benchmarks by industry (2026)
Industry benchmarks shift year to year. The numbers below are aggregated from public 2025-2026 reports by Mailchimp, HubSpot, Constant Contact and Campaign Monitor. They reflect typical bulk B2B and B2C senders, not transactional traffic (which should be near zero).
| Industry | Average bounce rate | Healthy target |
|---|---|---|
| E-commerce | 0.5 % | Under 0.3 % |
| SaaS and tech | 0.4 % | Under 0.2 % |
| Marketing and PR | 0.7 % | Under 0.5 % |
| Education | 0.6 % | Under 0.4 % |
| Travel and hospitality | 0.8 % | Under 0.5 % |
| Financial services | 0.5 % | Under 0.3 % |
| Non-profit | 0.9 % | Under 0.6 % |
| Retail | 0.6 % | Under 0.4 % |
| Cold outbound (B2B prospecting) | 3 to 8 % | Under 2 % |
Cold outbound stands out because the lists tend to be sourced from databases or scraping, not opt-ins. Pre-send verification is the only practical way to keep this category healthy.
How to reduce your bounce rate
Four levers, in descending order of impact:
- Validate addresses before sending. Run new lists through an email verification service like SMTPing. A good verifier catches syntax errors, disposable addresses, role-based addresses, dead mailboxes, catch-all domains, and known spam traps. Typical bounce-rate reduction: 70 to 90 %.
- Suppress hard bounces immediately. If a campaign produces hard bounces, never resend to those addresses. Reputable ESPs handle this automatically; if yours does not, audit your suppression process.
- Use double opt-in for sign-ups. A confirmation email at sign-up prevents typos and bots from ever entering your list. Drops bounce on new sign-ups by 60 to 80 %.
- Re-engagement and sunset policies. Subscribers who have not opened in 6 to 12 months are increasingly likely to bounce or complain. Re-engage them with a final campaign, then suppress the non-responders. Painful in the short term, healthy in the long term.
Common bounce handling mistakes
- Resending to hard bounces. Every retry to a known-invalid address is a signal to ISPs that you are not paying attention. Suppress on first hard bounce, forever.
- Treating soft bounces as failures. Most soft bounces resolve in the ESP’s retry queue. Removing addresses on the first soft bounce throws away good subscribers.
- Not parsing the DSN. The bounce message contains the SMTP code and a human-readable reason. Parse them, classify, route to the right action. ESP webhooks make this trivial.
- Ignoring complaints alongside bounces. Complaint rate is often more harmful than bounce rate. Track both, in the same dashboard.
- Buying lists. Purchased lists routinely produce 10 % or higher bounce rates. No verification process makes them safe for bulk sending; the addresses are stale, sold and re-sold.
- Not warming up new IPs or domains. A cold dedicated IP or new domain can produce a spike of soft bounces while reputation is established. Follow a 30-day warm-up schedule.
- Skipping authentication. A bounce caused by SPF or DKIM failure is preventable. See our guides on SPF, DKIM and DMARC.
- Not setting up a feedback loop. Microsoft (JMRP), Yahoo, AOL and Comcast feedback loops tell you exactly which subscribers clicked “This is spam”. Sign up, parse the reports, suppress accordingly.
Bounce handling at scale: webhooks and automation
For senders above a few thousand messages per day, manual bounce handling is no longer practical. Use your ESP’s webhook system to react automatically. Every major provider (Amazon SES, SendGrid, Mailgun, Postmark, Resend) exposes a webhook endpoint that POSTs a JSON event the moment a bounce is recorded.
A typical implementation:
- Configure the webhook in your ESP dashboard, pointing to an endpoint you control.
- Verify webhook signatures (every reputable ESP signs requests; verify before trusting).
- Parse the event, extract the recipient address, bounce type, SMTP code and timestamp.
- On hard bounce, mark the address as suppressed in your subscriber database. On soft bounce, increment a counter and let the ESP retry.
- If soft bounces from the same address pass a threshold (typically 5 in 14 days), promote to suppression.
- Log everything for audit. Bounce data is your single best window into list quality.
Bounce handling FAQ
What bounce rate is too high?
Above 2 % is a warning; above 5 % triggers throttling at major ISPs; above 10 % is effectively spamming territory. Healthy senders stay under 1 % for opt-in newsletters and under 0.5 % for transactional mail.
Should I delete soft bounces from my list?
No, not on the first occurrence. Soft bounces are temporary and usually resolve on the ESP’s retry. Track them, and only suppress addresses that soft-bounce repeatedly over several days (typically 5 or more bounces in 14 days).
How fast should I remove hard bounces?
Immediately, before the next send. Most ESPs do this automatically (called suppression). Resending to a known hard bounce is one of the strongest negative signals you can send to ISPs about your list quality.
Can pre-send email validation eliminate bounces?
Not entirely, but it eliminates the vast majority. A good verifier catches syntax errors, dead mailboxes, role addresses, disposable domains and known traps before you send. Typical bounce-rate reduction is 70 to 90 %. The residual bounces come from accounts that go inactive between verification and your next send.
What is the difference between a bounce and a complaint?
A bounce means the message could not be delivered. A complaint means the message was delivered, the recipient saw it, and clicked “Report spam” or “Junk”. Complaints typically hurt reputation more than bounces, because they reflect intent rather than infrastructure.
Do soft bounces hurt sender reputation?
Less than hard bounces, but yes, when they accumulate. A pattern of soft bounces from your sending IP suggests either content issues or capacity problems on the receiving side that your ESP keeps retrying against. Both signals matter to ISP filters. Watch the trend; spikes deserve investigation.
Final words
Bounce rate is one of the few deliverability metrics that responds quickly to action. Validate addresses before sending, suppress hard bounces on first occurrence, watch soft bounces as a trend, and automate the workflow via your ESP’s webhook system. Done well, your bounce rate sits below 1 % regardless of volume, and inbox providers treat your traffic as trustworthy.
For broader context, see our hub on email deliverability, our directory of SMTP error codes with 120+ entries explained, and our guide to email warm-up.
Clean your list before you send.
SMTPing catches what regex misses: disposable addresses, role-based emails, catch-all domains, syntax errors, dead mailboxes and known traps. 13 validation types, 25 free checks daily, no card required.
About the Author

Alaa · LinkedIn
Email infrastructure specialist with 8+ years of hands-on experience in SMTP, deliverability, and email verification. I’ve configured and troubleshot mail systems across Postfix, Exchange, and cloud relays, managed IP reputation and warmup campaigns, and built verification pipelines processing millions of addresses. My work spans DNS authentication (SPF, DKIM, DMARC, BIMI), bounce handling, blocklist monitoring, and compliance frameworks including CAN-SPAM and GDPR. I write every article on SMTPedia to give email professionals, developers, and marketers the accurate, RFC-grounded reference they need.
About SMTPedia
SMTPedia is an independent email industry reference covering SMTP, IMAP, POP3, email deliverability, marketing platforms, DNS authentication, and email verification. Every article is researched from official provider documentation, IETF RFCs, and industry best practices. Settings and configurations are verified quarterly.
We are cited as a source by ChatGPT, Microsoft Copilot, and thousands of email professionals worldwide. Learn more about our editorial process.

