Hard Bounce vs Soft Bounce: Complete Guide | emails-wipes.com

Learn the difference between hard bounces and soft bounces, how to identify them, and best practices for managing bounce rates to protect sender reputation.

โฑ๏ธ 12 minute read | Published: February 10, 2026

Hard Bounce vs Soft Bounce: Complete Guide

TL;DR: Hard bounces are permanent delivery failures (bad email address). Soft bounces are temporary (full inbox, server down). Remove hard bounces immediately. Retry soft bounces 2-3 times before removing.

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 email and sends a bounce message (Non-Delivery Report / NDR) back to the sender.

Bounces are categorized into two types based on permanence:

๐Ÿ”ด Hard Bounce

Permanent failure

The email address is invalid and will never accept mail.

Action: Remove immediately

๐ŸŸ  Soft Bounce

Temporary failure

The email address is valid but the message couldn't be delivered right now.

Action: Retry 2-3 times

Hard Bounce: Permanent Failures

What Causes Hard Bounces?

  1. Non-existent email address - user never existed or account closed
  2. Invalid domain - domain doesn't exist or has no mail server
  3. Syntax errors - malformed email address (e.g., user@domain, user@@domain.com)
  4. Blocked sender - recipient's server has blacklisted your IP/domain
  5. Policy rejection - recipient's server rejects based on content rules

Common Hard Bounce SMTP Codes

Code Meaning Example Message
550 User not found "550 5.1.1 User unknown"
551 User not local "551 User not local; please try <forward-path>"
553 Mailbox name invalid "553 Requested action not taken: mailbox name not allowed"
554 Transaction failed "554 5.7.1 Service unavailable; blocked"

โš ๏ธ Hard Bounces Damage Sender Reputation

Every hard bounce signals to ISPs that you're not maintaining your email list. High hard bounce rates (>2%) can lead to:

  • IP/domain blacklisting - Gmail/Yahoo block your messages
  • Throttling - ISPs limit how many emails you can send
  • Spam folder placement - 50-80% of emails go to spam
  • ESP account suspension - Mailchimp/SendGrid shut down your account

Solution: Remove hard bounces immediately. Never retry.

Hard Bounce Examples

Example 1: User Unknown

550 5.1.1 <[email protected]>: Recipient address rejected: User unknown in local recipient table

Cause: Email address doesn't exist

Action: Remove from list

Example 2: Domain Not Found

550 5.1.2 Host or domain name not found

Cause: Domain doesn't exist or has no MX records

Action: Remove from list

Example 3: Blacklisted Sender

554 5.7.1 Service unavailable; Client host [192.0.2.1] blocked using zen.spamhaus.org

Cause: Your IP is on a blacklist

Action: Check blacklist status, request delisting, improve list hygiene

Soft Bounce: Temporary Failures

What Causes Soft Bounces?

  1. Full mailbox - recipient's inbox is over quota
  2. Mail server down - temporary outage or maintenance
  3. Message too large - attachments exceed size limits
  4. Greylisting - server temporarily rejects first-time senders (anti-spam)
  5. DNS issues - temporary DNS resolution failures
  6. Connection timeout - server too slow to respond

Common Soft Bounce SMTP Codes

Code Meaning Example Message
421 Service not available "421 4.3.2 Service not available, try again later"
450 Mailbox unavailable "450 4.2.1 Mailbox temporarily unavailable"
451 Local error "451 4.4.0 DNS temporary failure"
452 Insufficient storage "452 4.2.2 Mailbox full"

โœ… How to Handle Soft Bounces

  1. First bounce: Wait 24-48 hours, retry
  2. Second bounce: Wait 72 hours, retry
  3. Third bounce: Mark as "inactive" or remove

Reason: Temporary issues (full inbox, server downtime) often resolve within 24-72 hours. However, persistent soft bounces (3+ in a row) indicate the address is effectively invalid.

Soft Bounce Examples

Example 1: Mailbox Full

452 4.2.2 <[email protected]> Mailbox full

Cause: Recipient's inbox is over quota

Action: Retry in 48 hours (user may clear inbox)

Example 2: Mail Server Down

421 4.3.0 <[email protected]> Temporary system problem. Try again later.

Cause: Mail server maintenance or outage

Action: Retry in 24 hours

Example 3: Greylisting

450 4.7.1 Greylisted, please try again later

Cause: Anti-spam mechanism (rejects first-time senders temporarily)

Action: Most ESPs auto-retry; typically succeeds on second attempt

Hard Bounce vs Soft Bounce: Side-by-Side Comparison

Criteria Hard Bounce ๐Ÿ”ด Soft Bounce ๐ŸŸ 
Permanence Permanent failure Temporary failure
SMTP Code Range 5xx (500-599) 4xx (400-499)
Cause Invalid email address Temporary server/mailbox issue
Will future sends work? No, never Maybe (after issue resolves)
Action Remove immediately Retry 2-3 times
Impact on reputation High (severe damage) Low (if infrequent)
Typical rate 1-3% (well-maintained lists) 0.5-2% (normal operations)

Bounce Rate Thresholds

ISPs evaluate your sender reputation based on bounce rate (percentage of emails that bounce).

๐Ÿ“Š Industry Standards

Bounce Rate Status Impact
< 0.3% โœ… Excellent Gmail/Yahoo 2024 requirement
0.3% - 2% โœ… Good Normal, minimal impact
2% - 5% โš ๏ธ Warning Deliverability degradation
5% - 10% ๐Ÿ”ด Critical High blacklist risk
> 10% ๐Ÿ’€ Catastrophic ESP account suspension likely

Best Practices for Managing Bounces

1. Implement Bounce Processing

Most ESPs (Mailchimp, SendGrid) automatically process bounces. If using custom infrastructure:

  • Parse bounce messages (NDR emails)
  • Classify as hard or soft based on SMTP code
  • Update email status in database
  • Suppress hard bounces from future sends

2. Hard Bounce Handling

๐Ÿšจ Hard Bounce Protocol

  1. Immediate suppression - add to "do not send" list instantly
  2. Never retry - hard bounces are permanent
  3. Remove from active lists - archive or delete
  4. Investigate patterns - if >5% hard bounce, audit list source

3. Soft Bounce Handling

โœ… Soft Bounce Protocol

  1. First soft bounce: Wait 24-48 hours, retry once
  2. Second soft bounce: Wait 72 hours, retry once
  3. Third soft bounce (within 30 days): Treat as hard bounce, remove
  4. Track soft bounce count: 3+ consecutive = likely invalid

4. Monitor Bounce Rate Trends

Set up alerts for bounce rate anomalies:

  • Daily bounce rate > 3% โ†’ Investigate immediately
  • Sudden spike โ†’ Check for list import errors or compromised data
  • Gradual increase โ†’ List decay (emails aging), schedule list revalidation

5. Use Email Validation to Prevent Bounces

The best bounce management is prevention:

๐Ÿ›ก๏ธ Validation Prevents Bounces

  • Before first send: Validate new lists (removes 10-30% invalids)
  • At signup: Real-time email validation catches typos
  • Quarterly: Revalidate entire list (combat 22.5% annual decay)

Result: Bounce rate < 0.3%, excellent sender reputation

Advanced: Decoding Extended Status Codes

SMTP error codes use a 3-digit format (e.g., 550), but many servers also provide an extended status code in Y.Y.Y format (e.g., 5.1.1).

Extended Code Format: X.Y.Z

Position Meaning Values
X (Class) Success/Failure type 2 = Success
4 = Temporary failure
5 = Permanent failure
Y (Subject) What failed 0 = Undefined
1 = Addressing
2 = Mailbox
3 = Mail system
4 = Network/Routing
5 = Mail delivery protocol
6 = Message content
7 = Security/Policy
Z (Detail) Specific reason 0-999 (varies by subject)

Common Extended Codes

Code Meaning Type
5.1.1 Bad destination mailbox address Hard Bounce
5.1.2 Bad destination system address Hard Bounce
4.2.2 Mailbox full Soft Bounce
5.7.1 Delivery not authorized (blocked) Hard Bounce
4.4.0 DNS temporary failure Soft Bounce

Bounce Handling by ESP

Mailchimp

  • Hard bounces: Automatically removed from lists
  • Soft bounces: Tracked, removed after 5 consecutive soft bounces
  • Reactivation: Can manually "reconfirm" soft bounced addresses

SendGrid

  • Hard bounces: Suppressed automatically
  • Soft bounces: Retry for 72 hours, then suppress if unresolved
  • Suppression list: Global suppression across all sends

Mailgun

  • Hard bounces: Added to suppressions, never retried
  • Soft bounces: Retry with exponential backoff (up to 8 hours)
  • Webhooks: Real-time bounce notifications

Frequently Asked Questions

Q: Should I ever retry a hard bounce?

A: No, never. Hard bounces are permanent. Retrying damages your sender reputation and wastes resources.

Q: How many times should I retry a soft bounce?

A: 2-3 times maximum, with 24-72 hour gaps. After 3 soft bounces within 30 days, treat as hard bounce.

Q: What's a "block bounce"?

A: A hard bounce where the recipient's server has blocked your IP/domain. Requires delisting and improved list hygiene.

Q: Can a soft bounce become a hard bounce?

A: Yes. Persistent soft bounces (3+ consecutive) indicate the email is effectively invalid and should be removed.

Q: How do I reduce bounce rates?

A: Use email validation before sending, implement double opt-in, revalidate lists quarterly.

Q: What's an acceptable bounce rate?

A: <0.3% is excellent (Gmail/Yahoo requirement). 0.3-2% is acceptable. >2% requires immediate action.

Action Plan: Reducing Your Bounce Rate

โœ… 30-Day Bounce Reduction Plan

Week 1: Audit

  1. Export your email list
  2. Calculate current bounce rate (last 30 days)
  3. Separate hard bounces from soft bounces
  4. Identify patterns (domain clusters, list sources)

Week 2: Clean

  1. Remove all hard bounces immediately
  2. Validate entire list with emails-wipes.com
  3. Remove/suppress invalid addresses
  4. Set up bounce processing automation

Week 3: Prevent

  1. Implement double opt-in for new signups
  2. Add real-time email validation to forms
  3. Set up bounce rate alerts
  4. Document bounce handling procedures

Week 4: Monitor

  1. Track daily bounce rates
  2. Review soft bounce retry results
  3. Measure deliverability improvement
  4. Schedule quarterly revalidation

Expected Result: Bounce rate < 0.5%, 95%+ deliverability, improved sender reputation

Key Takeaways

  • โœ… Hard bounces = permanent - remove immediately, never retry
  • โœ… Soft bounces = temporary - retry 2-3 times, then remove
  • โœ… SMTP codes: 5xx = hard, 4xx = soft
  • โœ… Target bounce rate: < 0.3% (Gmail/Yahoo requirement)
  • โœ… Prevention > management - validate before sending
  • โœ… Automate bounce processing - manual tracking doesn't scale
  • โœ… Monitor trends - sudden spikes indicate list quality issues

๐Ÿš€ Eliminate Bounces Before They Happen

Validate your email list and reduce bounce rate to <0.3%

โœ… 98.5% accuracy | โšก < 2 seconds per email | ๐Ÿ”’ GDPR compliant

$0.75 per 1,000 emails with code REDDIT50

Start Validation Now โ†’

Related Articles