✓OutboundAuth
← All guides
Guide · Bounce codes

Email bounce codes explained: what 550, 421 and friends actually mean

When an email can't be delivered, the receiving server sends it back with a three-digit code — 550, 421, 450 and the rest. Each code tells you exactly what went wrong, and whether it's worth trying again. Here's how to read them.

What is an SMTP bounce code?

Every bounce carries a three-digit SMTP reply code, usually followed by a longer "enhanced status code" like 5.1.1. Read the first digit first — it tells you the class of the problem:

  • 2xx — success. The message was accepted. You only see these in logs, not bounces.
  • 4xx — temporary failure. The server couldn't accept the mail right now, but it might later. This is a soft bounce.
  • 5xx — permanent failure. The server will not accept this mail, ever, until something changes. This is a hard bounce.

The enhanced code adds detail: 4.2.2 means "mailbox full", 5.1.1 means "mailbox doesn't exist", 5.7.1 means "blocked for policy reasons". The human-readable text after the code usually names the exact cause.

What does 550 mean?

550 is the most common hard bounce. It means the receiving server refused the message permanently. The usual reasons are:

  • The mailbox doesn't exist — "550 5.1.1 User unknown". The address is wrong, mistyped, or the account was deleted. Remove it from your list.
  • Your domain or IP is blocked — "550 5.7.1 Service unavailable; Client host blocked". Check your sending reputation and whether your IP sits on a blocklist.
  • Relay denied — "550 Relay not permitted". Your sending server tried to hand mail to a server that doesn't accept it. This is usually a configuration mistake on the sender's side.

Never keep mailing a 550 address. Repeated hard bounces damage your sender reputation and can get your domain flagged.

What does 421 mean?

421 is a temporary failure: the receiving server is busy, rate-limiting you, or applying greylisting — a technique where the server rejects the first attempt from an unknown sender and accepts the retry a few minutes later. Your sending system should retry automatically, and most 421s clear on the second or third attempt.

If 421s keep coming from the same provider, you're probably sending too fast. Slow the volume down, spread the send over more time, and check your warmup is done before ramping up.

What do 450, 451 and 452 mean?

These are the other common soft bounces — all 4xx, so all temporary:

  • 450 — "Requested action not taken". Often a greylisting or policy deferral. Retry later.
  • 451 — "Local error in processing". The receiving server hit a problem on its side — a full queue or a temporary fault. Retry later.
  • 452 — "Insufficient system storage". The recipient's mailbox is full. Retry for a few days, then stop if it never clears.

Soft bounces are normal in small numbers. They become a problem when one address soft-bounces for weeks — treat it as a dead address and remove it.

What do 500, 501, 503 and 554 mean?

These are the rest of the hard-bounce family:

  • 500 — "Syntax error, command unrecognised". Your sending software sent something the server didn't understand. Rare for normal senders; check your mail setup.
  • 501 — "Syntax error in parameters". Usually a malformed address. Check the address for typos or bad characters.
  • 503 — "Bad sequence of commands". The sending server spoke out of turn. Again, a setup problem, not a list problem.
  • 554 — "Transaction failed". A catch-all permanent rejection, often used when the server won't give a specific reason — commonly spam filtering or a failed SPF/DKIM/DMARC check. Read the full bounce message for the detail.

Hard bounce vs soft bounce — what's the difference?

A hard bounce (5xx) means "don't try again until something changes". A soft bounce (4xx) means "try again later". The practical rule is simple: remove hard bounces from your list immediately, and retry soft bounces for a few days, then remove them if they never clear. Mailing the same hard-bouncing addresses again and again is one of the fastest ways to land in spam folders — mailbox providers read it as careless sending. Run the full pre-send routine in the cold email deliverability checklist before every campaign.

What should you do when your mail bounces?

  1. Read the full bounce message, not just the code. The text after the code names the cause — "user unknown", "mailbox full", "blocked". If you only see the code in your sending tool, open the original bounce email: it contains the server's full reply. The email headers guide shows how to read the raw message.
  2. Remove every hard bounce (5xx) from your list. Do it the same day. Suppress them so they are never mailed again.
  3. Let soft bounces (4xx) retry, then clean them up. A few retries over 2–3 days is normal. After that, suppress them too.
  4. Fix the cause, not just the symptom. A wave of 550s after a list import means bad data — clean the list. A wave of 554s means check your authentication with the free checker tools — a broken SPF, DKIM or DMARC record is a common trigger.
  5. Watch your bounce rate. Under 2% is healthy for cold email. Over 5% is a warning sign — stop, clean the list, and check your setup before sending more.

Bounce codes aren't error messages to ignore — they're the receiving server telling you, in plain terms, what to fix. Read them, act on them, and your deliverability will thank you.

Bounces piling up and not sure why?

I check authentication, list hygiene and sending setup, then fix the cause so your mail lands in the inbox.

WhatsApp Saqib See packages