1. Home
  2. SMTP codes

SMTP error codes explained

SMTP reply codes starting with 5 are permanent failures — the message will never be delivered and must not be retried. Codes starting with 4 are temporary, and the sending server will retry automatically. The digits after the first one narrow down the reason, and that is where the fix lives.

Cleaning a list after a bounce? The common codes are marked hard bounce, soft bounce or block, and each of those pages says whether to remove the address, with Gmail, Microsoft or Yahoo wording quoted where the provider publishes it. Microsoft and Outlook.com errors, including 550 5.7.515, are grouped on the Microsoft and Outlook hub. Every enhanced status code in the IANA registry, and the codes Gmail, Microsoft 365 and Yahoo document themselves, are in the enhanced status code index. To read a whole bounce message, use the bounce message analyzer.

Permanent failures — 5xx

Do not retry these. Continuing to send to a permanent failure is one of the fastest ways to damage sender reputation.

Temporary deferrals — 4xx

These resolve on their own in most cases. A 4xx during mailbox verification is not a verdict on the address — it means unconfirmed.

Reading a reply code

Every SMTP reply has a three-digit basic code and, usually, a three-part enhanced code. The basic code’s first digit is the only part that decides whether to retry: 2xx accepted, 4xx temporary failure, retry, and 5xx permanent failure, do not retry.

The enhanced code adds precision. In 5.1.1 the first digit repeats the class, the second names the subject — 1 for address problems, 7 for policy and security — and the third is the specific detail. So 5.1.1 is a permanent address problem, and 5.7.1 is a permanent policy refusal. They need completely different fixes, which is why the enhanced code matters.

Always read the text after the code too. Most mail servers name the actual reason in plain language, and many include a URL to their own policy page.

Most of these are preventable

550 5.1.1 is the code you see when an address does not exist, and it is the one verification eliminates entirely — before the bounce is recorded against your domain rather than after. The policy codes, 5.7.1 and 554, usually come down to SPF, DKIM and DMARC on your sending domain.

Clean your next list before it bounces

100 free email checks when you sign in with Google, no card. Then monthly plans from $9, or one flat price with fair use, never cut off.

100 free checks, no card Cancel anytime Secure payment by Stripe