Software, your way.
burger menu icon
WillMaster

WillMasterBlog > Debugging

FREE! Coding tips, tricks, and treasures.

Possibilities weekly ezine

Get the weekly email website developers read:

 

Your email address

name@example.com
YES! Send Possibilities every week!

Email Bounce Codes

The reason for a bounced email can be hard to understand because mail server administrators may compose their own messages to explain bounce codes, or provide no message at all.

It's the bounce code that counts.

A recent Possibilities newsletter bounced with code 451, no explanation. After a bit of searching, 2 relevant RFCs were found that explained bounce codes. This blog post is partly for my reference but mostly so its listed in search engines where you can find it for your reference.

There are traditional 3-digit bounce codes (###) and increased-precision 2-dotted bounce codes (#.#.#). Below, you'll see a table of each.

Generally, bounce codes that begin with the digit 4 indicate the message may be valid but a temporary condition has caused delivery abandonment. Sending the same email in the future may be successful.

Bounce codes that begin with the digit 5 indicate a permanent failure unlikely to be resolved by resending the same message.

Traditional Email Bounce Codes
Resource: RFC2821 (April 2001)

CodeMessage that might accompany code
421<domain> Service not available: Closing transmission channel. (The service may be down or know that it must shut down.)
450Requested mail action not taken: Mailbox unavailable. (The mailbox may be busy temporarily.)
451Requested action aborted: Error in processing.
452Requested action not taken: Insufficient system storage.
500Syntax error: Command unrecognized. (May include a command-line-too-long syntax error.)
501Syntax error in parameters or arguments.
502Command not implemented.
503Bad sequence of commands.
504Command parameter not implemented.
550Requested action not taken: Mailbox unavailable. (The mailbox might not exist or access may be blocked.)
551The recipient is not local to the server.
552User not local: Please try <forward-path>.
553Requested action not taken: Invalid mailbox name.
554Transaction failed. (An unknown or unstated reason.)

Email Bounce Codes With Increased Precision
Resource: RFC3463 (January 2003)

CodeMessage that might accompany code
5.0.0Undefined status.
5.1.0Other address status. (Something about the address caused this error.)
5.1.1Bad destination mailbox address. (The specified mailbox, the part to the left of the "@" character in the email address, does not exist.)
5.1.2Bad destination system address. (The specified destination, the part to the right of the "@" character in the email address, does not exist or is incapable of accepting mail.)
5.1.3Bad destination mailbox address syntax.
5.1.4Destination mailbox address ambiguous.
5.1.5Destination mailbox address valid. (Not used for bounces, but for positive delivery reports. Included here for linear-numbering completeness.)
5.1.6Destination mailbox has moved. No forwarding address.
5.1.7Bad sender's mailbox address syntax.
5.1.8Bad sender's system address.
5.2.0Other or undefined mailbox status.
5.2.1Mailbox disabled: Not accepting messages. (This would be a temporary error if the mailbox is re-enabled in the future. But that probability can't be determined from this email bounce code.)
5.2.2Mailbox full.
5.2.3Message length exceeds administrative limit.
5.2.4Mailing list expansion problem/
5.3.0Other or undefined mail system status.
5.3.1Mail system full.
5.3.2System not accepting network messages.
5.3.3System not capable of selected features.
5.3.4Message too big for system.
5.3.5System incorrectly configured.
5.4.0Other or undefined network or routing status.
5.4.1No answer from host.
5.4.2Bad connection.
5.4.3Directory server failure.
5.4.4Unable to route.
5.4.5Mail system congestion.
5.4.6Routing loop detected.
5.4.7Delivery time expired.
5.5.0Other or undefined protocol status.
5.5.1Invalid command.
5.5.2Syntax error.
5.5.3Too many recipients.
5.5.4Invalid command arguments.
5.5.5Wrong protocol version.
5.6.0Other or undefined media error.
5.6.1Media not supported.
5.6.2Conversion required and prohibited.
5.6.3Conversion required but not supported.
5.6.4Conversion with loss performed. (A warning only. Delivery was successful but required a conversion in which some data was lost.)
5.6.5Conversion failed.
5.7.0Other or undefined security status.
5.7.1Delivery not authorized: Message refused.
5.7.2Mailing list expansion prohibited.
5.7.3Security conversion required but not possible.
5.7.4Security features not supported.
5.7.5Cryptographic failure.
5.7.6Cryptographic algorithm not supported.
5.7.7Message integrity failure.

Those are the status codes as interpreted from the linked RFCs.

Share this post with others who can use the information. And bookmark it for yourself.

Will Bontrager

Was this blog post helpful to you?
(anonymous form)

Support This Website

Some of our support is from people like you who see the value of all that's offered for FREE at this website.

"Yes, let me contribute."

Amount (USD):

Tap to Choose
Contribution
Method


All information in WillMaster Blog articles is presented AS-IS.

We only suggest and recommend what we believe is of value. As remuneration for the time and research involved to provide quality links, we generally use affiliate links when we can. Whenever we link to something not our own, you should assume they are affiliate links or that we benefit in some way.

Recent Articles in the Library

Extracting Dates From the Unix Timestamp

The UNIX timestamp can be used to determine the represented time for any time zone on Earth.

Submit Form Data Without Bothering User

To silently and effectively submit a form on a web page, Ajax with FormData() can be used.

CSS Dots

CSS dots can be used for interactions between web page and website user.

Email Testing

One thing to test when email doesn't get sent or doesn't arrive is whether the server actuall sends email.

Tap to Select

Find out how to make a link or button to select the content in a div or other HTML element.

Capitalizing the First Letter of Words

Here, find both PHP code and JavaScript code to capitalize the first letter of a word.

Fixed-position Table Header

During a vertical scroll, the table header scrolls out of view -- unless the header is fixed in position.

How Can We Help You? balloons
How Can We Help You?
bullet Custom Programming
bullet Ready-Made Software
bullet Technical Support
bullet Possibilities Newsletter
bullet Website "How-To" Info
bullet Useful Information List

© 1998-2001 William and Mari Bontrager
© 2001-2011 Bontrager Connection, LLC
© 2011-2024 Will Bontrager Software LLC