Skip to content
NoBounch

Email Bounce Codes Explained: SMTP Error Reference

· 5 min read

When a mail server cannot deliver your message, it answers with an SMTP reply code and usually a short explanation. Your email platform turns that answer into a bounce. Reading the code tells you whether the problem is permanent or temporary, and whether the fix is to remove the address, wait, or look at your own sending setup.

This guide is a reference for the codes you will see most often, with what each one means and what to do about it.

How to read a bounce code

A typical bounce line looks like this:

550 5.1.1 The email account that you tried to reach does not exist.
  • The first number (550) is the basic SMTP reply. A code starting with 4 means a temporary failure: the server may accept the message later. A code starting with 5 means a permanent failure: sending the same message again will fail again.
  • The second number (5.1.1) is the enhanced status code. Its first digit repeats the class (4 temporary, 5 permanent). The middle digit says what kind of problem it is: 1 is the address, 2 is the mailbox, 3 is the receiving mail system, 4 is network or routing, 5 is the mail protocol, 6 is the message content, and 7 is security or policy.
  • The text is written by the receiving server. It often contains the most useful detail, such as a link to the provider's help page.

In practice, 4xx codes become soft bounces and 5xx codes become hard bounces. There are a few important exceptions, covered below. For the bigger picture, read hard bounce vs soft bounce.

Common bounce codes

CodeWhat it meansTypeWhat to do
421The server is not available right now, often because it is busy or is slowing down your messages.SoftLet your platform retry. If it happens a lot, send more slowly.
450The mailbox is unavailable at the moment, for example busy or temporarily blocked. Also used for greylisting.SoftRetry later. Remove the address only if it keeps failing over several sends.
451The server hit a local error or deferred the message. Greylisting and temporary policy checks often use this code.SoftRetry later. Most of these deliver on a later attempt.
452The server or mailbox is out of storage, or you sent to too many recipients at once.SoftRetry later. If the same mailbox is full for weeks, treat it as abandoned.
550 5.1.1The mailbox does not exist. The most common hard bounce.HardRemove the address now. Check for a typo first.
550 5.1.2The domain does not exist or cannot receive mail.HardRemove the address. Check for a domain typo such as gmial.com.
550 5.7.1Delivery was refused for policy reasons: your message, server or domain was blocked or failed a check.BlockDo not delete the address automatically. Read the text, check authentication and blocklists.
552The mailbox is full (5.2.2) or the message is too large (5.3.4).Usually softFor a full mailbox, retry later. For a size error, make the message smaller.
553The address is not allowed, often because its format is invalid (5.1.3).HardRemove or correct the address.
554The transaction failed. Often a spam or reputation block, sometimes a dead mailbox.Block or hardRead the text. If it mentions spam, policy or a blocklist, treat it as a block.

The exact wording differs between providers. Gmail, for example, uses 550 5.7.26 when a message fails its authentication checks, which points at your SPF, DKIM or DMARC setup rather than at the recipient.

Hard bounces: remove the address

Codes like 550 5.1.1, 550 5.1.2 and 553 say the address itself is the problem. Sending to it again will never work, and repeated hard bounces damage your sender reputation. Most email platforms suppress these automatically after the first bounce; make sure that setting is on.

Before removing a customer's address, check for an obvious typo. If you have another way to reach them, such as a phone number or their account page, ask them to update it.

Soft bounces: wait, then decide

4xx codes are temporary by definition. Your platform will normally retry for a day or two. If the same address soft bounces across several separate sends, it is probably abandoned, and you should treat it like a hard bounce.

Greylisting is a common cause of 450 and 451 codes. Some servers reject the first attempt from an unfamiliar sender on purpose and accept the retry. That is normal and needs no action.

Blocks: fix your side, not the list

Policy codes such as 550 5.7.1 and many 554 replies are about you, not the recipient. The address may be perfectly good. Common causes:

If many recipients at the same provider block you at once, stop and fix the cause before sending more. Deleting those addresses would remove real people and not solve anything.

Prevent bounces before they happen

The easiest bounce to handle is the one that never happens. Checking addresses before you send removes most hard bounces in advance:

For a step-by-step plan, read how to reduce your email bounce rate.