3-digit reply code Permanent

SMTP error 550

Mailbox unavailable / address rejected.

Updated Jul 1, 2026

The short answer

SMTP 550 is a permanent rejection ("requested action not taken: mailbox unavailable"). The receiving server refused the message and will not retry. The two usual causes are a recipient address that does not exist (5.1.1) or a policy or reputation block such as a failed DMARC check or spam filtering (5.7.1). Read the enhanced status code after the 550, fix the address or authenticate your domain with SPF, DKIM, and DMARC, then resend.

Quick fix

Verify the address is correct and still active. If it does exist, the rejection is reputation-based.

5 - Permanent. The server will not try again. Fix the cause before you resend.

What it means

550 is a permanent negative completion reply. Under RFC 5321 section 4.2.1, any reply that starts with 5 means the command failed and the server will not accept the same message on a plain resend, so retrying unchanged returns 550 again. The canonical text in section 4.2.3 is "550 Requested action not taken: mailbox unavailable", listed for a mailbox that is not found, has no access, or is rejected on policy grounds. Section 4.3.2 allows 550 as an error reply to RCPT TO, MAIL FROM, and DATA, so the rejection can land at any of those stages, not only at RCPT. Because one code covers several situations, the human-readable text and the enhanced status triplet (RFC 3463, for example 5.1.1) are what actually name the cause. Read those first.

Common causes

Bad recipient address (5.1.x)

The most frequent cause. 550 5.1.1 means the local part before the @ does not exist on that domain, from a typo, a deactivated mailbox, or a stale list. SendGrid treats this invalid-address rejection as a hard bounce.

Microsoft 5.1.10 recipient not found

Usually the same idea of no such recipient, but Microsoft NDR docs also list broken inbox or forwarding rules, a missing Exchange Online license, and hybrid directory-sync gaps, so it is not purely an addressing problem.

Policy or reputation block (5.7.x)

550 5.7.1 means delivery was not authorized and the message was refused by a per-recipient or per-host policy, a blocklist, or content and spam filtering.

DMARC rejection

Gmail and Yahoo reject unauthenticated mail when your domain publishes a p=reject or p=quarantine DMARC policy and your SPF or DKIM do not align with the From domain.

Blocklisted IP or domain

Wording like "Spamhaus" or "on our block list" means your sending IP or domain has poor reputation.

Relay refused

550 5.7.1 "relaying denied" or "authentication is required for relay" means the sending server will not relay because you are not authenticated to it. In real traffic this is a small share of 550s.

How to fix it

  1. Read the full bounce or DSN

    Capture the exact line, for example "550 5.1.1 <user@example.com> User unknown". The 5.x.x triplet and the prose are your diagnosis.

  2. Fix bad recipients (5.1.1)

    Correct the typo, remove the address, and keep your list clean by validating addresses on capture and suppressing hard bounces. Repeated sends to dead mailboxes hurt your reputation.

  3. Authenticate for DMARC rejections (5.7.1)

    Publish SPF and DKIM, make sure at least one aligns with your From domain, and publish a DMARC record. With an ESP such as SendGrid, SES, Mailgun, or Postmark, finish its domain-authentication flow so DKIM signs with your domain.

  4. Clear reputation or blocklist 550s

    Check your IP or domain against the named blocklist, fix the root cause such as a compromised account or spam complaints, then request delisting. Warm up new IPs gradually and keep complaint rates low.

  5. Turn on SMTP AUTH for relay refusals

    Send valid credentials over an authenticated submission port, 587 with STARTTLS or 465 with implicit TLS, both valid per RFC 8314. For Gmail and Google Workspace use an App Password with 2-Step Verification or OAuth2. Google removed Less Secure Apps for personal Gmail in 2022, and Google Workspace finished its own longer phase-out between 2024 and 2025, so basic password auth is retired for both.

  6. Confirm the fix before resending

    Because 5xx is permanent, resending the same message to the same recipient just bounces again. Resend only after you change the address, the authentication, or the reputation condition.

Paired code

A real bounce often shows both a 3-digit code and an enhanced code together. This one commonly pairs with:

Common questions

Does SMTP 550 mean my email was definitely not delivered?

Yes. 550 is a permanent negative completion reply (RFC 5321 section 4.2.1), so the server refused the message and will not retry. It was not delivered, and resending it unchanged bounces again with the same code.

What is the difference between 550 5.1.1 and 550 5.7.1?

5.1.1 is an addressing failure: the recipient mailbox does not exist. 5.7.1 is a policy or authorization failure: the message was blocked by spam filtering, reputation, a failed DMARC check, or a relay restriction.

Is SMTP 550 caused by my SMTP authentication?

Usually not. Most 550s come from the receiving server over a bad address or a policy block. Authentication is only the cause in the relay case, "authentication is required for relay", which is a minority of real-world 550s.

Related codes

Ready when you are

Most rejections come back to sender reputation.

Blocklists, auth failures, and policy blocks are what warmup prevents. Warm up your domain so your mail is trusted before you hit send.

7-day free trialNo credit cardCancel anytime