Enhanced Status Code 5.5.0: Other or Undefined Protocol Status
Enhanced Status Code 5.5.0 means “Other or Undefined Protocol Status.” Something went wrong in the SMTP conversation itself rather than with the message or the recipient. The receiver has not narrowed it further, so the reply text and your own session log are the diagnosis.
550 5.5.0 Requested action not taken: mailbox unavailable
What does 5.5.0 mean?
Enhanced status code 5.5.0 is the catch-all for the protocol class. RFC 3463 defines X.5.0 as other or undefined protocol status, meaning something was wrong with the protocol needed to deliver the message to the next hop but the receiver is not naming a specific fault.
Exchange Online returns it as 550 5.5.0 with the text mailbox unavailable, which is confusing because that phrasing belongs to the mailbox class rather than the protocol one. When Microsoft sends this, treat it as a generic permanent refusal and look at the recipient address first despite the class. Other servers use it more literally, for commands issued out of order or for a session that did not follow the expected sequence.
Because the code deliberately declines to be specific, the useful evidence is your own outbound session log. Capture the full SMTP conversation for a failing delivery and look at which command drew the refusal. A protocol-class error almost always points at the command immediately before it, which is information the code itself withholds.
How 5.5.0 plays out
5.5.0 rejectionWhere 5.5.0 sits: soft vs hard bounce
| Soft bounce (4xx) | Hard bounce (5xx) | |
|---|---|---|
| Nature | Temporary | Permanent |
| SMTP class | 4xx | 5xx |
| What to do | Let it retry | Suppress the address |
| Recoverable? | Often | No |
| 5.5.0 is | ✓ this code |
What each provider means by 5.5.0
A registered code does not oblige a provider to use it that way, and the large ones diverge. Match the wording in your own bounce, not the definition above.
Common causes of 5.5.0
- A command was issued out of sequence, such as DATA before RCPT TO
- The recipient address is unavailable and the server used a protocol-class code for it
- A pipelined command batch was sent to a server that does not advertise PIPELINING
- The session exceeded a command or line-length limit
- A gateway or proxy in the path altered the conversation
- The server ran out of a resource mid-session and refused generically
How to fix 5.5.0
- Capture the full SMTP session and identify the command that drew the refusal
- If the reply text mentions the mailbox, verify the recipient address exists
- Confirm your client only pipelines when the server advertises PIPELINING
- Check line lengths and header sizes against the limits the server advertises
- Test directly against the destination MX to remove any local relay from the picture
- Compare against 5.5.1 and 5.5.2, which name invalid commands and syntax errors specifically