Docs / Email Servers / Email Bounce Codes Explained

Email Bounce Codes Explained

By Admin · Mar 15, 2026 · Updated Apr 23, 2026 · 785 views · 4 min read

When an email fails to deliver, the receiving server returns a bounce code explaining why. Understanding these codes is essential for diagnosing delivery problems, maintaining sender reputation, and managing email lists. This guide covers all major SMTP bounce codes, their meanings, and how to resolve them.

Bounce Code Structure

SMTP response codes follow a three-digit format (e.g., 550), often with an enhanced status code (e.g., 5.1.1):

  • First digit: category — 2xx (success), 4xx (temporary failure), 5xx (permanent failure)
  • Second digit: subcategory — x.0.x (other), x.1.x (address), x.2.x (mailbox), x.3.x (mail system), x.4.x (network), x.5.x (protocol), x.7.x (security)
  • Third digit: specific detail

4xx Temporary Failures (Soft Bounces)

Your mail server should retry these automatically. They usually resolve on their own.

421 — Service Not Available

421 4.7.0 Try again later, closing connection
421 4.3.2 System not accepting network messages

Cause: Server temporarily overloaded, maintenance, or rate limiting. Action: Wait and retry. Your server handles this automatically.

450 — Mailbox Unavailable (Temporary)

450 4.2.1 Mailbox temporarily disabled
450 4.1.8 Sender address rejected: Domain not found

Cause: Mailbox temporarily full, account suspended, or greylisting. Action: Retry. If persistent, contact the recipient through other means.

451 — Local Processing Error

451 4.3.0 Mail server temporarily rejected message
451 4.7.1 Greylisting in effect, please come back later

Cause: Internal server error, greylisting, or anti-spam checks. Action: Automatic retry will succeed for greylisting. Persistent 451 errors indicate server misconfiguration.

452 — Insufficient Storage

452 4.2.2 Over quota
452 4.3.1 Insufficient system storage

Cause: Recipient's mailbox or the server disk is full. Action: Retry later. Notify recipient through other channels if urgent.

5xx Permanent Failures (Hard Bounces)

These will not succeed on retry. Remove these addresses from your mailing lists.

550 — Mailbox Unavailable (Permanent)

550 5.1.1 User unknown
550 5.1.1 The email account that you tried to reach does not exist
550 5.2.1 Mailbox disabled
550 5.7.1 Relay access denied
550 5.7.1 Service unavailable; client blocked

5.1.1 User unknown: The email address does not exist. Remove from mailing lists immediately.

5.2.1 Mailbox disabled: Account exists but is disabled. Remove from active lists.

5.7.1 Relay denied: Your server is not authorized to relay through this server. Check SMTP authentication settings.

5.7.1 Client blocked: Your IP is blocked. Check blacklists and sender reputation.

551 — User Not Local

551 5.1.6 Recipient address rejected: User moved

Action: Update the email address. The user has moved to a different server.

552 — Message Too Large

552 5.2.3 Message size exceeds maximum permitted
552 5.3.4 Message size exceeds fixed limit

Action: Reduce message size. Remove or compress large attachments. Check the recipient server's size limit.

553 — Invalid Address Format

553 5.1.3 Invalid address format
553 5.1.7 Sender address syntax error

Action: Check the email address for typos or invalid characters.

554 — Transaction Failed

554 5.7.1 Message rejected due to content restrictions
554 5.7.1 [CS] Message rejected. See https://...
554 5.7.9 Message not accepted for policy reasons

Action: The message content triggered spam filters. Review message content, check DKIM/SPF/DMARC, and verify your IP is not blacklisted.

Provider-Specific Bounce Codes

Gmail

# Too many messages
421-4.7.28 Gmail has detected an unusual rate of unsolicited mail from your IP
# Fix: Slow down sending, warm up your IP

# Reputation issue
550-5.7.1 Our system has detected that this message is likely spam
# Fix: Check SPF/DKIM/DMARC, review content, check IP reputation

# Rate limit
450 4.2.1 The user you are trying to contact is receiving mail too quickly
# Fix: Retry later, reduce sending rate to Gmail

Microsoft (Outlook/365)

# IP blocked
550 5.7.606 Access denied, banned sending IP [x.x.x.x]
# Fix: Submit delisting request at sender.office.com

# Content filter
550 5.7.708 Service unavailable. Access denied, traffic not accepted from this IP
# Fix: Authenticate with SPF/DKIM, join SNDS (Smart Network Data Services)

Handling Bounces in Your Application

# Parse bounce notifications (DSN format)
# Bounce emails arrive as multipart/report messages with:
# - Human-readable explanation
# - Machine-readable status (message/delivery-status)
# - Original message headers

# Key fields in delivery-status part:
# Status: 5.1.1       → permanent failure, user unknown
# Action: failed       → delivery failed
# Diagnostic-Code: smtp; 550 5.1.1 User not found
# Final-Recipient: rfc822; bad@example.com

# Automated bounce handling:
# 1. Parse the Status field
# 2. 5.x.x → hard bounce → remove from list
# 3. 4.x.x → soft bounce → retry, remove after 3-5 failures
# 4. Log bounce reason for analytics

Preventing Bounces

  • Validate email addresses at signup — use double opt-in to confirm addresses
  • Clean your mailing list regularly — remove hard bounces immediately
  • Authenticate your email — implement SPF, DKIM, and DMARC
  • Monitor IP reputation — check blacklists at mxtoolbox.com/blacklists.aspx
  • Follow sending best practices — warm up new IPs, maintain consistent volume
  • Handle bounce notifications — process DSN messages automatically
  • Use a dedicated IP — avoid shared IPs with potentially bad senders

Quick Reference Table

Code    Enhanced     Meaning                    Action
421     4.7.0       Rate limited/temp           Wait and retry
450     4.2.1       Mailbox temp unavailable    Retry automatically
451     4.3.0       Server processing error     Retry automatically
452     4.2.2       Over quota                  Retry, notify user
550     5.1.1       User does not exist         Remove from list
550     5.2.1       Mailbox disabled            Remove from list
550     5.7.1       Relay denied/blocked        Check auth/reputation
552     5.2.3       Message too large           Reduce size
553     5.1.3       Bad address format          Fix address
554     5.7.1       Content rejected            Review content/auth

Was this article helpful?