5.4.6: a mail routing loop
By Jose Pollman · Published
Hard bounceYour problem
The error
550 5.4.6 Routing loop detected
554 5.4.6 Hop count exceeded - possible mail loopWhat it means
The message was passed between servers in a circle until the loop was detected. Two systems each believe the other is responsible for the domain.
Something about the message or the address you sent to needs changing.
Why it happens
Classically a forwarding rule pointing at an address that forwards back, or an MX record aimed at a host that does not consider itself the final destination — very common part-way through a migration when mail is split between an old and a new platform.
How to fix it
- Look for a forwarding rule that points back to a domain that forwards onward.
- Check the MX records and the accepted-domain configuration on both systems.
- During a migration, make sure only one platform is authoritative for the domain.
Related guides
- 5.1.2: the recipient domain does not exist — The domain in the recipient address cannot be found in DNS, or has no mail servers. The problem is the part after the @.
- 550 5.1.1: the mailbox does not exist — The address does not exist on the receiving system. This is the single most common bounce there is.
- 550: a permanent rejection — A permanent rejection. Without an enhanced code, 550 covers everything from a non-existent address to a policy block, so the text of the bounce is what identifies the cause.