Error 554: the refusal that says almost nothing

554 is the vaguest refusal code in SMTP. It can refuse an entire connection before the message is even sent, or reject a specific message for very different reasons. It must always be read together with its enhanced code and its text.

In brief

  • 554 is a permanent refusal, like the other codes starting with 5.
  • Gmail uses 550 for spam and authentication: a 554 from Gmail is rare and concerns the message format or a routing loop.
  • At Yahoo, 553 and 554 group the permanent refusals: invalid address, DMARC or DKIM policy, content, Spamhaus listing.
  • A 554 received when the connection opens, before any message, is a session refusal.

Two families of 554

The first is the session refusal: RFC 5321 allows a server to answer 554 in place of its greeting to formally refuse the connection. Your server then could not send a single message. The greeting text should contain enough to understand why (the RFC recommends it).

The second is the message refusal: the 554 arrives after the sending commands, with an enhanced code (5.4.6, 5.6.0, 5.7.x...) that specifies the nature of the problem. The causes catalogued by Google, Yahoo and Microsoft are below.

The causes, and how to tell them apart

Session refused from the connection

How to recognize it: The 554 appears before any message is sent, often without a useful enhanced code, and for all your messages to this domain.

What to do:

  1. Read the server's greeting text: RFC 5321 requires it to contain enough information to debug the sending system.
  2. Check that your IP is not on a public blocklist and that its reverse DNS is correct.
  3. If the text says nothing useful, contact the administrator of the recipient domain through another channel.

Mail loop (554 5.4.6)

How to recognize it: Gmail says “Message exceeded 50 hops, this may show a mail loop.”

What to do:

  1. Look in the Received headers for a back-and-forth between two servers, typically a forwarding rule that sends back to the original address.
  2. Fix the faulty routing or forwarding rule.

Malformed message (554 5.6.0)

How to recognize it: Gmail says “Email message is malformed. Not accepted.”

What to do:

  1. Fix the message format according to the RFC 5322 standard: headers, MIME structure, encoding.
  2. If the message comes from a custom template or a script, test the generation of the raw message.

Too many unauthenticated commands (554 5.7.0)

How to recognize it: Gmail says “Too many unauthenticated commands.”

What to do:

  1. Authenticate the SMTP connection before sending other commands. Check the credentials and the STARTTLS encryption in the configuration of the sending mailbox.

At Yahoo: policy, DMARC, content or Spamhaus listing

How to recognize it: Yahoo groups its permanent refusals (553 and 554) for: invalid address, failure of the domain DMARC or DKIM policy, content refused for policy reasons, suspicious behavior, or IP listed by Spamhaus.

What to do:

  1. Do not retry. Remove the address if it is invalid.
  2. If it is authentication, fix SPF, DKIM and DMARC (see the page on 5.7.26).
  3. If your IP is listed by Spamhaus, query Spamhaus and follow its removal procedure.

Sender domain cannot be resolved

How to recognize it: Yahoo checks that the domain after the @ in the MAIL FROM or in the From header is valid by querying its SOA. A domain without A, MX or SOA is refused with a 451 or a 554.

What to do:

  1. Create A or MX records (a wildcard works) and an SOA for the sending domain.

Other policy refusals (header too long, forbidden character, null MX)

How to recognize it: Yahoo cites: a null MX (RFC 7505), a very long header (From, Subject, To), a date out of range, an undecodable header value, or forbidden characters in an address (, $ % ? { } < >).

What to do:

  1. Fix the header, date or address in question.

Check your DNS

For the causes that come from the DNS of your sending domain:

Can the sender domain be resolved?

dig +short MX yourdomain.com && dig +short SOA yourdomain.com

Expected result: An MX line (or an A address) and an SOA line. An empty answer on either one explains the unresolvable domain refusals.

Read the reverse DNS (PTR) of the sending IP address

dig +short -x 203.0.113.10

Expected result: A hostname. No answer: no PTR. The IP 203.0.113.10 is an example: replace it with the one in the Received header of your message.

Read the DMARC record

dig +short TXT _dmarc.yourdomain.com

Expected result: A line starting with v=DMARC1 and containing a policy p=none, quarantine or reject.

Check your whole domain at once

The free diagnostic reads your SPF and your DMARC and looks for a DKIM signature, with no account. It is the fastest way to find out whether authentication is the problem.

Test my domain now

What not to do

  • Treating the 554 as a passing incident: it is permanent.
  • Looking for a universal meaning for the code: the text and the enhanced code that come with it change its meaning.
  • Adding fallback addresses on the same domain without fixing the cause: if the IP or the domain is refused, all messages will be.

Frequently asked questions

What does 554 mean?

It is a generic permanent refusal. According to RFC 5321, it can replace the server greeting to refuse the session, or appear after a message is sent for reasons specified by the enhanced code.

What is the difference between 550 and 554?

Both are permanent. Gmail uses 550 for most spam and authentication refusals; Yahoo groups its permanent refusals under 553 and 554. The cause is read in the enhanced code and in the text, not in the three digits.

Is my IP blacklisted if I get a 554?

It is possible. Yahoo explicitly cites IPs listed by Spamhaus among the causes of 553 and 554. Check the sending IP in Spamhaus's tool before concluding.

Can a message be retried after a 554?

Not without fixing the cause. A 5xx is final: the same message resent with the same configuration will be refused in the same way.

Official sources

Messages and fixes taken from the official documentation on October 21, 2026. Providers sometimes change their wording: if there is a discrepancy, the official page prevails.

Read next

Set up authentication at your mailbox provider

Other errors

Prospect without damaging your domain

Fluenzr sends from your own mailbox, warms up its sending history and monitors its reputation.

Start my 14-day trial