You send an email campaign and see “15% bounced” in your report. But what does that actually mean? Should you panic, or is it normal? The answer depends entirely on the type of bounce. Hard bounces and soft bounces have completely different causes, implications, and required responses. Treating them the same way will either destroy your sender reputation (ignoring hard bounces) or unnecessarily shrink your list (removing soft bounces too aggressively). This guide explains exactly what each bounce type means and how to handle them.
Quick Reference: Hard vs Soft Bounces
- • Permanent delivery failure
- • Address doesn't exist
- • Remove immediately
- • Temporary delivery failure
- • Mailbox full, server down
- • Retry, then remove if persistent
What is an Email Bounce?
An email bounce occurs when a message cannot be delivered to the recipient's inbox. The receiving mail server rejects the message and sends a “bounce message” (also called a Non-Delivery Report or NDR) back to the sender explaining why delivery failed.
The Email Delivery Process
The critical distinction is why the rejection happened. A permanent issue (hard bounce) means the address will never work. A temporary issue (soft bounce) might resolve on its own.
Hard Bounces Explained
A hard bounce is a permanent delivery failure. The email cannot be delivered now and will never be delivered in the future. The address is fundamentally invalid or blocked.
Common Causes of Hard Bounces
The mailbox doesn't exist on the server (typos, fake addresses, deleted accounts)
The domain has no MX records, has expired, or was never registered
The recipient has specifically blocked your sending address or domain
The email format is invalid (missing @, invalid characters, spaces)
| Hard Bounce Type | What Happened | Will It Ever Work? |
|---|---|---|
| User Unknown | No mailbox with that name exists | No |
| Domain Not Found | No mail server for this domain | No (unless domain is re-registered) |
| Blocked | You're on their blocklist | Unlikely (requires intervention) |
| Invalid Syntax | Email format is malformed | No (address itself is wrong) |
⚠ Critical: Hard Bounces Destroy Reputation
Inbox providers track your hard bounce rate. A rate above 2% signals poor list hygiene and can result in your emails being sent to spam, throttled, or blocked entirely. Even a single campaign with 10%+ hard bounces can damage your sending reputation for months.
Soft Bounces Explained
A soft bounce is a temporary delivery failure. The email address exists and is technically valid, but something prevented delivery right now. The issue may resolve on its own, allowing future emails to go through.
Common Causes of Soft Bounces
Recipient's inbox has reached its storage quota
The recipient's mail server is down for maintenance or overloaded
Email size exceeds the recipient server's limit
Out-of-office or vacation responders (technically a “bounce” in some systems)
You're sending too many emails too quickly to this domain
Email flagged by spam filter (may be retried or accepted later)
| Soft Bounce Type | What Happened | Likely to Resolve? |
|---|---|---|
| Mailbox Full | No space for new messages | Maybe (if user clears space) |
| Server Down | Temporary server outage | Yes (usually resolves quickly) |
| Message Too Large | Attachments exceed limit | Yes (if you reduce size) |
| Greylisting | First-time senders temporarily rejected | Yes (retry succeeds) |
| Rate Limited | Too many emails sent at once | Yes (slow down and retry) |
Key Differences: Hard vs Soft Bounces
| Factor | Hard Bounce | Soft Bounce |
|---|---|---|
| Nature | Permanent failure | Temporary failure |
| Address validity | Invalid / doesn't exist | Valid, but temporarily unreachable |
| Reputation impact | Severe (high priority to fix) | Moderate (if persistent) |
| Retry worthwhile? | No - will always fail | Yes - may succeed later |
| Required action | Remove immediately | Monitor; remove if repeated |
| SMTP code range | 5xx | 4xx |
Understanding SMTP Bounce Codes
When an email bounces, the receiving server returns an SMTP status code explaining the failure. Understanding these codes helps you diagnose and fix delivery issues.
SMTP Code Structure
SMTP codes use a 3-digit format: X.Y.Z
- 2xx → Success (email accepted)
- 4xx → Temporary failure (soft bounce)
- 5xx → Permanent failure (hard bounce)
| Code | Type | Meaning |
|---|---|---|
| 250 | Success | Message accepted for delivery |
| 421 | Soft | Service not available, try again later |
| 450 | Soft | Mailbox unavailable (busy or temporarily blocked) |
| 451 | Soft | Local error in processing (greylisting often uses this) |
| 452 | Soft | Insufficient storage space |
| 550 | Hard | Mailbox unavailable (doesn't exist) |
| 551 | Hard | User not local; please try forwarding address |
| 552 | Soft | Message exceeds fixed maximum message size |
| 553 | Hard | Mailbox name not allowed (syntax error) |
| 554 | Hard | Transaction failed (often indicates spam rejection) |
⚠ Not All Providers Follow Standards
Some email providers return non-standard bounce codes or generic messages that don't clearly indicate hard vs soft. For example, some providers return 550 for both “user doesn't exist” (hard) and “blocked for spam” (potentially soft). Quality ESP platforms and verification services interpret these nuances for you.
How to Handle Each Bounce Type
Handling Hard Bounces
Handling Soft Bounces
Bounce Handling Decision Tree
Email bounced → Check bounce type
→ If Hard Bounce: Remove from list immediately
→ If Soft Bounce: Allow automatic retry
→ If retry succeeds: Continue normally
→ If retry fails 3x: Treat as hard bounce, remove
Acceptable Bounce Rates
What's a “normal” bounce rate? The answer depends on bounce type and your sending practices. Here are industry benchmarks:
Excellent list hygiene. Inbox providers trust you.
ESPs may flag your account. Take action.
Risk of suspension. Clean list immediately.
| List Source | Expected Hard Bounce Rate | Notes |
|---|---|---|
| Double opt-in list | < 0.5% | Highest quality, verified at signup |
| Single opt-in (verified) | < 1% | Good if using real-time verification |
| Single opt-in (unverified) | 1-3% | Typos and fake addresses slip through |
| Old list (> 1 year) | 5-20% | Email addresses decay over time |
| Purchased list | 10-50%+ | Avoid completely; often contains spam traps |
Preventing Bounces Before They Happen
The best bounce is one that never happens. Implement these preventive measures to keep your bounce rate near zero:
1.Real-Time Email Verification at Signup
Validate email addresses the moment users enter them. Catch typos, disposable emails, and invalid domains before they enter your list. This single step can reduce hard bounces by 95%.
2.Double Opt-In Confirmation
Require users to click a confirmation link sent to their email. This proves the address exists and belongs to the person who signed up. Eliminates fake signups and typos.
3.Regular List Cleaning
Email addresses decay at ~22% per year. Run your list through verification every 3-6 months to catch addresses that have become invalid since they signed up.
4.Sunset Unengaged Subscribers
Subscribers who haven't opened emails in 6+ months are more likely to bounce (abandoned mailboxes) or mark you as spam. Re-engage or remove them.
5.Never Purchase Email Lists
Purchased lists are filled with invalid addresses, spam traps, and people who never consented. They will destroy your reputation faster than almost anything else.
6.Verify Before Importing
Before importing any list (from events, partnerships, or migrations), verify every address. Never trust that external data is clean.
Eliminate Bounces With Kawaa
Our real-time verification catches invalid addresses at signup, and bulk verification cleans your existing list in minutes. Protect your sender reputation with 99%+ accuracy verification.
