SMTP Status Code Lookup
Look up any SMTP reply code and decode RFC 3463 enhanced status codes like 5.7.1 field by field into class, subject and detail meanings.
Reply codes (34 shown)
| Code | Kind | Meaning | What you actually see |
|---|---|---|---|
| 211 | Positive | System status, or system help reply | Answer to a HELP or STATUS request — informational only. (RFC 5321) |
| 214 | Positive | Help message | Answer to HELP; describes how to reach a human. (RFC 5321) |
| 220 | Positive | Service ready | The greeting banner when a session opens, and the reply to a successful STARTTLS. (RFC 5321) |
| 221 | Positive | Service closing transmission channel | Normal reply to QUIT — the session ended cleanly. (RFC 5321) |
| 235 | Positive | Authentication succeeded | AUTH accepted; the session is now authenticated. (RFC 4954) |
| 250 | Positive | Requested mail action okay, completed | The workhorse success code: 250 OK / 250 2.0.0 Message accepted for delivery. (RFC 5321) |
| 251 | Positive | User not local; will forward | The address is not hosted here but the server will relay it onward. (RFC 5321) |
| 252 | Positive | Cannot VRFY user, but will accept and attempt delivery | The server refuses to confirm whether an address exists — normal anti-harvesting behaviour. (RFC 5321) |
| 334 | Intermediate | Server challenge (AUTH) | Base64 challenge issued during a SASL exchange. (RFC 4954) |
| 354 | Intermediate | Start mail input; end with <CRLF>.<CRLF> | The reply to DATA — the server is now waiting for the message body. (RFC 5321) |
| 421 | Transient (retry) | Service not available, closing transmission channel | Too many connections, server shutting down, or rate limited. Retry later. (RFC 5321) |
| 432 | Transient (retry) | A password transition is needed | The account password must be changed before authentication can succeed. (RFC 4954) |
| 450 | Transient (retry) | Mailbox unavailable (busy or temporarily blocked) | Greylisting and per-recipient throttling almost always show up as 450. Retry later. (RFC 5321) |
| 451 | Transient (retry) | Requested action aborted: local error in processing | Server-side failure — antivirus timeout, database error, policy service unreachable. (RFC 5321) |
| 452 | Transient (retry) | Insufficient system storage | The server is out of disk or has hit a concurrent-recipient cap. Retry later. (RFC 5321) |
| 454 | Transient (retry) | Temporary authentication failure / TLS not available | The auth backend is down, or STARTTLS was requested but cannot be negotiated right now. (RFC 3207 / 4954) |
| 455 | Transient (retry) | Server unable to accommodate parameters | A valid ESMTP parameter cannot be honoured at the moment. (RFC 5321) |
| 500 | Permanent (bounce) | Syntax error, command unrecognised | The server did not understand the verb — often a line-length or non-SMTP-protocol problem. (RFC 5321) |
| 501 | Permanent (bounce) | Syntax error in parameters or arguments | Malformed address in MAIL FROM / RCPT TO, or a bad HELO argument. (RFC 5321) |
| 502 | Permanent (bounce) | Command not implemented | Commonly seen for VRFY, EXPN and TURN, which most servers disable. (RFC 5321) |
| 503 | Permanent (bounce) | Bad sequence of commands | RCPT before MAIL, DATA before RCPT, or a missing EHLO. A client-side ordering bug. (RFC 5321) |
| 504 | Permanent (bounce) | Command parameter not implemented | The verb is supported but this particular parameter is not. (RFC 5321) |
| 521 | Permanent (bounce) | Host does not accept mail | A null MX (RFC 7505) or a host that explicitly refuses all mail. (RFC 7504) |
| 530 | Permanent (bounce) | Authentication required | The classic relay refusal: '530 5.7.0 Authentication Required' when a client tries to relay without logging in. (RFC 4954) |
| 534 | Permanent (bounce) | Authentication mechanism is too weak | The offered SASL mechanism is not strong enough for this server's policy. (RFC 4954) |
| 535 | Permanent (bounce) | Authentication credentials invalid | Wrong username or password — '535 5.7.8 Error: authentication failed'. (RFC 4954) |
| 538 | Permanent (bounce) | Encryption required for requested authentication mechanism | The server will not accept this SASL mechanism over an unencrypted channel. (RFC 4954) |
| 550 | Permanent (bounce) | Requested action not taken: mailbox unavailable | The single most common hard bounce: no such user, blocked sender, or policy rejection. (RFC 5321) |
| 551 | Permanent (bounce) | User not local; please try <forward-path> | The server will not relay for this address but tells you where it lives. (RFC 5321) |
| 552 | Permanent (bounce) | Exceeded storage allocation | The recipient's mailbox is full, or the message exceeds a size limit. (RFC 5321) |
| 553 | Permanent (bounce) | Mailbox name not allowed | The address syntax is unacceptable to this server, or the sender domain is refused. (RFC 5321) |
| 554 | Permanent (bounce) | Transaction failed / no valid recipients | A catch-all permanent failure — also the code used when the greeting itself refuses the connection. (RFC 5321) |
| 555 | Permanent (bounce) | MAIL FROM / RCPT TO parameters not recognised | An ESMTP parameter is unknown or unimplemented at this server. (RFC 5321) |
| 556 | Permanent (bounce) | Domain does not accept mail | The recipient domain publishes a null MX record, so it never receives mail. (RFC 7504) |
Enhanced status codes you will meet most often
Click one to decode it. The full subject list is 0 other · 1 addressing · 2 mailbox · 3 mail system · 4 network and routing · 5 mail delivery protocol · 6 content or media · 7 security or policy.
What is the SMTP Status Code Lookup?
Every bounce message carries two numbers: a three-digit SMTP reply code such as 550, and usually an enhanced status code such as 5.
- Every RFC 5321 reply code plus the AUTH, STARTTLS and null-MX additions
- Full RFC 3463 enhanced status decoder — class, subject and detail explained separately
- Search by number or by the wording that appears in the bounce message
- Filter to positive, transient 4xx or permanent 5xx replies
- Shows the real-world bounce phrasing each code maps to
- Entirely offline — the reference data ships with the page
How to use the SMTP Status Code Lookup
- 1
Type a reply code such as 550, an enhanced code such as 5.7.1, or a phrase from the bounce like “mailbox full”.
- 2
Use the filter to narrow the table to 2xx/3xx successes, 4xx transient failures or 5xx permanent bounces.
- 3
When you enter an enhanced code, read the class, subject and detail breakdown and the plain-English summary underneath.
- 4
Click one of the common enhanced codes to decode it instantly, or copy the filtered list for a runbook.
About the SMTP Status Code Lookup
Every bounce message carries two numbers: a three-digit SMTP reply code such as 550, and usually an enhanced status code such as 5.7.1. This lookup covers both. Search by number, or by the wording you can see in the bounce, and you get the meaning, whether the failure is transient or permanent, and the phrasing servers typically use.
Type an enhanced code and it is decoded field by field — class 5 for permanent, subject 7 for security or policy, detail 1 for delivery not authorised — and then restated as one plain-English sentence. That is usually enough to tell whether the problem is your record, your reputation, or the recipient's mailbox.
The whole reference ships inside the page, so the lookup runs 100% locally in your browser: it is instant, it works offline, and no code or bounce text you paste is ever uploaded. It covers the RFC 5321 core replies plus the AUTH, STARTTLS and null-MX additions that turn up in real mail logs, and the enhanced-code decoder handles every subject from addressing and mailbox status through to the security and policy codes that DKIM and SPF failures use.
Frequently asked questions
What is the difference between a 4xx and a 5xx SMTP code?
A 4xx reply is a temporary failure: the sending server should queue the message and retry, and greylisting or rate limiting usually shows up this way. A 5xx reply is permanent — the message will never be accepted as sent, so the sender generates a bounce immediately.
What does SMTP error 5.7.1 mean?
Class 5 means permanent, subject 7 means security or policy, and detail 1 means delivery is not authorised. In practice it is the code servers return when a message is refused by policy: a failed DMARC check, an unauthenticated relay attempt, or a blocked sender.
What is an enhanced SMTP status code?
It is the three-part code from RFC 3463 that sits next to the reply code, like 550 5.7.1. The first digit repeats the reply class, the second names the subject area, and the third pins down the specific condition — far more precise than the three-digit code alone.
Why do I keep getting 550 5.1.1?
5.1.1 is “bad destination mailbox address” — the recipient does not exist on that server. It is a hard bounce, so remove the address from your list. Repeatedly retrying addresses that return 5.1.1 damages your sending reputation quickly.
What does a 421 error mean?
421 means the service is not available and the server is closing the connection. It is transient, and it usually signals rate limiting, too many concurrent connections, or a server going down for maintenance. Backing off and retrying more slowly is the right response.
Does this tool contact any mail server?
No. It is a reference table shipped inside the page, so the lookup happens instantly in your browser, works offline, and never transmits the codes or bounce text you paste in.
Related tools
Email Header Analyzer
Paste raw email headers to trace the delivery path hop by hop, see where mail stalled, and read the SPF, DKIM and DMARC verdicts — all offline.
SPF Record Generator
Create a valid SPF TXT record from your sending IPs, includes and mail servers — with live DNS-lookup counting against the 10-lookup limit. Free and private.
DMARC Record Generator
Generate a DMARC TXT record with policy, subdomain policy, pct, rua/ruf reporting and alignment options — each tag explained in plain English. 100% in-browser.
MTA-STS Policy Generator
Generate both halves of RFC 8461 MTA-STS: the mta-sts.txt policy file with mode, mx and max_age, plus the _mta-sts TXT record with a fresh id.
Port Number Lookup
Look up what a TCP or UDP port is used for — search 150+ common well-known and registered ports by number, service name or protocol. Instant and offline.