Email Spam Tester

Email Spam Tester › Fixes › Mail Delivery Subsystem bounce

Mail Delivery Subsystem bounce

By Serhii TanichevUpdated

"Mail Delivery Subsystem" is the name Gmail puts on bounces, the automatic replies that say a message you sent did not reach someone. Other providers call the same thing Mail Delivery System, Postmaster or MAILER-DAEMON. It is not a person and replying to it goes nowhere. The bounce is useful anyway: it carries the reason, written by the server that refused your message.

Which of three cases you are in decides the next step:

Reading the bounce

A Gmail bounce has a short headline ("Address not found", "Message blocked" or "Message not delivered"), a paragraph in plain words, and further down a block that starts with the receiving server's answer:

The response from the remote server was:
550 5.7.26 Unauthenticated email from example.com is not accepted due to domain's DMARC policy.

That line is the one to work from. The first number says how final it is: a code starting with 5 is a permanent refusal and the message is gone; one starting with 4 is a deferral, and the sending server keeps retrying for a while before it gives up and bounces. The second, dotted code (5.7.26) names the category, and the text after it is the receiving provider's own explanation.

What the common codes say

CodeUsually meansWhat to do
550 5.1.1The address does not exist ("Address not found")Check the spelling; remove the address from lists
552 5.2.2The recipient's mailbox is fullNothing on your side; try later or another channel
550 5.7.26Gmail: the message is unauthenticated550 5.7.26
550 5.7.1 with "DMARC policy"Rejected because it failed DMARCDMARC fail
554 5.7.5Microsoft could not evaluate your DMARC record554 5.7.5
550 5.7.1 with a blocklist nameA list the receiver consults has your IP or domain on itBlacklist checker
550 5.7.25Gmail: the sending IP has no reverse DNS (PTR) recordAsk the server's provider to set one
421 4.7.28 and similarToo much mail too fast, or reputationSlow down; check what changed in volume or content

The text after the code matters more than the code. Servers use 550 5.7.1 for refusals that have nothing in common, from relay settings to spam content, and the versions of 550 5.7.1 are sorted out on a page of their own.

Bounces for mail you never sent

A wave of bounces in your inbox for messages you did not write means somebody sends mail with your address as the envelope sender (the Return-Path, where bounces go), and the servers that refuse it are mailing the refusals back to you. Nobody needs access to your account to do that.

A DMARC policy of p=reject cuts most of it, because receivers that check DMARC refuse the forgery during the SMTP session and the receiver writes no bounce. It does not stop all of it. Servers that accept the message and refuse it afterwards still bounce, so does a hijacked relay that carried the forgery and got the refusal, and spam that forges only the Return-Path while showing some other From address is outside DMARC's reach. The policy side is covered in email spoofing your domain.

Separately, phishing sometimes imitates a bounce, with a "Mail Delivery Subsystem" sender, an urgent subject and a link to "release your messages". A real bounce follows something you sent, quotes it, and never asks you to sign in.

How the test reports it

Several rows of the table have a line in the report that predicts them. "No reverse DNS" is the cause of Gmail's 5.7.25. The blocklist check splits its hits into major lists, the ones receivers actually reject on, and minor ones whose effect varies, which is roughly the line between a bounce and a spam folder. The authentication results cover the 5.7.26 and DMARC rows. None of them can predict a full mailbox or a mistyped address.

Try it on your own email

Send one message to a disposable address and read every check in the report, RFC section and all. Free, no signup.

Run a test

Other findings