Microsoft 365 / Outlook
Microsoft 365 554 5.4.14 — "Routing loop detected"
554 5.4.14
A configuration error made the message travel in a loop. Exchange Online reports the loop as 5.4.14; on-premises Exchange uses 5.4.6 for the same condition, so hybrid setups can show either. By default Exchange interrupts the loop after 20 iterations and sends this report to the sender. The message isn't the problem: something in the routing keeps handing it back.
How to fix it
- 1
Look for forwarding that points back on itself
The simplest loop is two mailboxes forwarding to each other, or a mailbox forwarding to an external address that forwards back. Check forwarding settings and inbox rules on the recipient, and on any address it forwards to. Automatic replies between two systems can loop in the same way.
- 2
In a hybrid or migration setup, check connectors and accepted domains
If the domain is set to Internal relay in Exchange Online and the on-premises server (or the other mail system) sends unknown recipients back to Microsoft 365, mail for an address that exists in neither directory bounces between them. Make sure every address exists on exactly one side, and that the outbound connector for the shared domain points at the right server.
- 3
Check the domain's MX records
A wrong or stale MX record can send mail back to the server that just handed it off. Run the MX lookup and confirm the MX points at the system that should finally accept the mail, for example Exchange Online Protection after a migration, not the old server.
- 4
Read the hops in the headers
The bounced message's Received headers show the servers it passed through. A short repeating sequence tells you exactly which two systems are handing the message back and forth. The header analyzer lists the hops in order.
Meaning current as of 2026-10-24, cross-checked against the provider's own documentation. Providers do occasionally redefine codes — if this doesn't match what you're seeing, the source link is the authoritative reference.