felixmail

Bounce message decoder

If your mail bounced, paste the full error message below. We'll explain the SMTP code, whether it's permanent or temporary, and the likely cause in plain language.

The text you paste is not stored.

What do SMTP codes mean?

Every bounce carries a three-digit SMTP code. The first digit matters most: codes starting with 4 are temporary and will be retried, codes starting with 5 are permanent and the message is never retried.

CodeMeaning
421Service not available right now — temporary, will retry.
450 / 451Mailbox temporarily unavailable or action failed — temporary.
452Insufficient storage — usually the recipient's mailbox is full.
550The most common permanent error: no such mailbox, address rejected, or policy block.
551 / 553Recipient not local, or address format not accepted.
552Message size or quota exceeded.
554Transaction failed — usually a permanent spam/reputation rejection.
5.7.1Authorisation denied: SPF, DKIM, DMARC or relay policy blocked it.
5.1.1Recipient address does not exist.
4.7.xTemporary policy rejection — greylisting or rate limiting.

Permanent or temporary? Check that first

The first digit of the SMTP code tells you everything. If it starts with 4 the failure is temporary: the sending server queues the message and typically retries for a few days. In that case there's usually nothing for you to do.

If it starts with 5 the failure is permanent: the message is never retried and you need to act. If the address is wrong, fix it and resend; if it's an authentication problem, every message you send will meet the same fate until you fix your DNS records.

The most common cause: authentication

Most bounces are about authentication rather than content. When you see status code '5.7.1', there's almost always something missing on the SPF, DKIM or DMARC side.

All three live in DNS and must be configured correctly before you send. Instead of hitting the same error repeatedly, verify your SPF, DKIM and DMARC records once with the checkers — most bounce waves come from a single missing record.

If you're sending in bulk

Removing bounced addresses from your list isn't just courtesy, it's necessary. Repeatedly mailing non-existent addresses lowers your sender reputation, and eventually mail to valid addresses starts landing in spam too.

Permanent failures (5xx) should be removed after the first bounce. Temporary ones (4xx) deserve a few retries, but addresses that bounce temporarily for several days running should also be cleaned out.

Frequently asked questions

What does error 550 5.7.1 mean?

It means authorisation denied: the receiving server decided you aren't authorised to send this message. The most frequent cause is a failed SPF, DKIM or DMARC check. Check your domain's records and fix whichever is missing.

My mail bounced — can I just send it again?

If the failure is permanent (a code starting with 5), resending as-is produces the same result; fix the cause first. For temporary failures (starting with 4) the server already retries on its own, so there's no need to resend manually.

Does this tool store my message?

No. The text you paste stays in memory only for the duration of the request, is never written anywhere, and no logs are kept. We don't ask for an account or an email address either.

Where do I find the error text?

When mail bounces you receive a notification from 'Mail Delivery Subsystem' or 'postmaster'. Copy that whole message and paste it here; the most useful line is usually the one starting with 'Diagnostic-Code' or 'said:'.

Next