Table of Contents

SMTP Status Codes & Email Bounces

When an email transfer agent (MTA) attempts to deliver a message, the receiving mail server returns a 3-digit SMTP status code. These status codes inform the sender whether the message was accepted, temporarily delayed, or permanently rejected (bounced).

Understanding these status codes is crucial for diagnosing email deliverability issues, server misconfigurations, and IP reputation problems.


Understanding SMTP Code Classes

SMTP status codes consist of three digits (e.g., `250`, `421`, `550`). The first digit defines the response class:

Class Category Meaning & Action
2xx Success The server accepted the command or message successfully.
3xx Intermediate The server accepted the command but requires further action (e.g., sending message data).
4xx Transient Negative (Soft Bounce) Temporary failure. The sending server will retry delivery automatically.
5xx Permanent Negative (Hard Bounce) Permanent failure. The email will not be delivered and retries will cease.

Common 2xx & 3xx Success Codes

Code Meaning Description
220 Service Ready Receiving server is ready to initiate the SMTP conversation.
250 Requested Mail Action OK The message was accepted and queued for delivery (most common success code).
354 Start Mail Input Server is ready to receive the body of the email message.

4xx Transient Failures (Soft Bounces)

A Soft Bounce occurs when delivery fails temporarily. Sending MTAs will retry sending the email for a configured duration (typically 72 to 120 hours) before giving up and converting it to a hard bounce.

Code Enhanced Code Description & Cause Recommended Action
421 `4.4.2` Service not available / Connection timeout. Check network connectivity and server load on target MX.
450 `4.2.1` Mailbox temporarily unavailable or busy. Retried automatically. Often occurs during local server backups.
451 `4.3.0` Local processing error / Greylisting active. Common with anti-spam greylisting; secondary attempt usually succeeds.
452 `4.2.2` Recipient storage quota exceeded / Out of disk space. Recipient must free up storage in their mailbox.

5xx Permanent Failures (Hard Bounces)

A Hard Bounce indicates a permanent rejection. The sending MTA immediately aborts delivery and sends a Non-Delivery Report (NDR) back to the sender.

Code Enhanced Code Description & Cause Recommended Action
550 `5.1.1` User unknown / Requested action not taken. Verify the recipient's email address spelling.
550 `5.7.1` Access denied / Blocked by security policy or RBL. Sender IP/domain is blacklisted, or SPF / DKIM failed.
551 `5.1.6` User not local; please try forward path. Mailbox does not exist on this server and forwarding is disabled.
552 `5.3.4` Message size exceeds fixed maximum limit. Reduce email attachment size or host files externally.
553 `5.1.8` Invalid or missing domain name in sender address. Check sender envelope `MAIL FROM` address configuration.
554 `5.7.1` Transaction failed / Mail relay denied. Ensure outbound SMTP authentication is enabled on the mail client.

Enhanced Status Codes (X.Y.Z)

Modern mail servers append Enhanced Status Codes (defined in RFC 3463) alongside standard 3-digit codes (e.g., `550 5.7.1`).


Troubleshooting Bounces with Telenegar

When analyzing email bounce logs or non-delivery reports:

# **Check Email Authentication:** Use [[tools:mailcheck|Telenegar Mail Check]] to ensure SPF, DKIM, and DMARC are properly aligned.
# **Verify DNS & MX Resolution:** Confirm that your domain's [[email:dns-configuration:mx-records|MX Records]] and A/AAAA records resolve correctly via [[tools:dnscheck|Telenegar DNS Check]].
# **Inspect Mail Headers:** Extract the raw headers from the bounced message to identify which intermediate hop generated the error code.