Groundmail

SMTP errors

550 permanent failure: what a 550 bounce means

What a "550 permanent failure" bounce means, how to tell an unknown user from a block using the enhanced code and text, and when to retry, fix or suppress.

By Groundmail

Short answer

A 550 reply means the receiving server permanently refused the message. RFC 5321 describes it as "requested action not taken: mailbox unavailable", which covers both "no such mailbox" and "rejected for policy reasons". "Permanent failure" is how many sending systems label any 5xx reply in the bounce they send back to you.

So a 550 alone doesn't tell you what to do. Look at the enhanced code and the text: 5.1.x means the address is bad (suppress it), 5.7.x means the sender was refused for policy, reputation or authentication (fix the cause, keep the address).

On this page

What 550 permanent failure means

Every SMTP reply starts with a three-digit code. A first digit of 5 means a permanent negative completion: the server won't accept the message and sending the same thing again won't change that. 550 is the most common 5xx code, which is why "550 permanent failure" shows up in so many bounce messages.

Modern servers add an enhanced status code after it, like 5.1.1 or 5.7.26, and a sentence of explanation. Those two parts carry the real reason.

How to read a 550 bounce

Enhanced codeMeaningWhat to doDetails
5.1.1Bad destination mailbox (user unknown)Suppress the address550 5.1.1
5.1.10Recipient not found (Microsoft 365)Suppress the address550 5.1.1
5.2.1Mailbox disabled or inactiveSuppress the addressGmail: "The email account that you tried to reach is inactive"
5.7.1Delivery not authorized (policy, reputation, content)Fix the cause, keep the address550 5.7.1
5.7.26Multiple authentication checks failedFix SPF, DKIM, DMARC550 5.7.26
5.7.23SPF validation failedFix SPFSPF PermError
5.7.25Reverse DNS validation failedGive the sending IP a PTR recordGmail requires one
5.7.509DMARC failed with a reject policy (Microsoft)Fix DMARC alignment550 5.7.26
5.7.515Authentication level not met (Outlook.com)Pass SPF, DKIM and DMARC550 5.7.26

Meanings from RFC 3463, RFC 7372, Google and Microsoft.

No enhanced code at all? Read the sentence. Words like "user unknown", "no such user", "does not exist" or "mailbox not found" mean a bad address. Words like "blocked", "listed", "reputation", "policy", "spam" or "not authorized" mean a block.

How to fix it as a sender

  • Bad address: remove or suppress it, and fix how it got onto your list (typos at sign-up, old imports).
  • Authentication: check your domain with the SPF checker, DKIM checker and DMARC checker, or all at once with the domain health check.
  • Blocklist or reputation: look up the sending IP and domain with the blocklist checker, and check what changed before the bounces began.
  • Many 550s to one domain at once: the domain's mail setup may have changed. Check it with the MX lookup.

Retry or suppress?

BounceRetry the same message?Suppress the address?
550 with an unknown-user reasonNoYes
550 with a policy, reputation or authentication reasonNo, fix the cause firstNo
4xx (temporary)Yes, the sending server retries itNo

How Groundmail handles a 550

Groundmail reads the receiver's whole reply and sets bounce_type on the email and on the email.bounced webhook. hard means the address can't receive mail: it's suppressed automatically, and later sends to it return 422 instead of bouncing again. block means the receiver refused the sender for reputation or policy: the address is not suppressed and the bounce doesn't count toward your bounce rate.

Temporary 4xx replies aren't bounces. The mail server retries them, and you get an email.delivery_delayed webhook while it does. The full reply text is always in bounce_reason, so you can see exactly what the receiver said. See emails and suppressions in the docs.

Frequently asked questions

Is a 550 error always a hard bounce?

It's always a permanent failure for that message, but not always a bad address. A 550 with 5.1.1 is a bad address. A 550 with 5.7.x is a refusal of the sender, and the address can receive mail once the cause is fixed.

What does "550 permanent failure for one or more recipients" mean?

It's a sending server's summary that at least one recipient got a 5xx reply. The bounce message lists each failed recipient with the receiving server's own code and text; read those to see why.

Should I retry after a 550?

Not the same message. If the reason is the address, suppress it. If the reason is policy or authentication, fix that first; new messages afterwards can deliver.

What's the difference between a soft bounce and a hard bounce?

A soft bounce is a temporary failure, usually a 4xx reply (mailbox busy, rate limited, try again later); the sending server retries it. A hard bounce is a permanent failure, a 5xx reply, where retrying the same message won't help. Among hard bounces, it matters whether the problem is the address (unknown user: suppress it) or the sender (a block: fix the cause, keep the address).

Sources

Facts on this page about other companies' products, prices and policies come from these public pages. They change, so check them before you decide.

Send from infrastructure we own.

Groundmail runs its own mail servers on its own IP space. Start free on the shared transactional pool, then move to dedicated IPs or a dedicated server without changing your code.