Not all the time email gets delivered due to multiple bounce reasons. There are certain number of bounce reasons due to which an email fails to reach into the inbox. Here is the collection of all possible email bounces as per RFC standard. (only system related – we will not be talking about IP/domain blocks kind of bounces in this article).
There are certain structure of SMTP error code. This code is defined in such way that we bounces can be in an order representing their meaning. Status Code Structure defines a new set of status codes to report mail system conditions. These status codes are used for media and language independent status reporting. They are not intended for system specific diagnostics.
The syntax of the new status codes is defined as:
status-code = class "." subject "." detail
{eg: X.X.X or X.1.X etc}
class = "2"/"4"/"5" subject = 13digit detail = 13digit
White-space characters and comments are NOT allowed within a status- code.
Each numeric sub-code within the status-code MUST be expressed without leading zero digits. Status codes consist of three numerical fields separated by “.”. The first sub-code indicates whether the delivery attempt was successful. The second sub-code indicates the probable source of any delivery anomalies, and the third sub-code indicates a precise error condition.
The three main class as follows:
SMTP errors are classified into three parts
- DSN code starting from class ‘2’ – This is successful delivery.
- DSN code starting from class ‘4’ – This is Transient failure (generally (not always) known as soft bounce)
- DSN code starting from class ‘5’ – This is Permanent failure (generally (not always) known as hard bounce)
Official definition from ITEF for these three classifications are given below
2.XXX.XXX Success
Success specifies that the DSN is reporting a positive delivery action. Detail sub-codes may provide notification of transformations required for delivery.
4.XXX.XXX Persistent Transient Failure
A persistent transient failure is one in which the message as sent is valid, but persistence of some temporary condition has caused abandonment or delay of attempts to send the message. If this code accompanies a delivery failure report, sending in the future may be successful.
5.XXX.XXX Permanent Failure
A permanent failure is one which is not likely to be resolved by resending the message in the current form. Some change to the message or the destination must be made for successful delivery.
The complete possible set of codes as per RFC standard are listed below. You’ll notice there are 8 subject starting from 0 to 7.
- DSN code starting from subject ‘0’
- DSN code starting from subject ‘1’
- DSN code starting from subject ‘2’
- DSN code starting from subject ‘3’
- DSN code starting from subject ‘4’
- DSN code starting from subject ‘5’
- DSN code starting from subject ‘6’
- DSN code starting from subject ‘7’
Official definition from ITEF for these three classifications are given below
X.0.XXX Other or Undefined Status
There is no additional subject information available.
X.1.XXX Addressing Status
The address status reports on the originator or destination address. It may include address syntax or validity. These errors can generally be corrected by the sender and retried.
X.2.XXX Mailbox Status
Mailbox status indicates that something having to do with the mailbox has caused this DSN. Mailbox issues are assumed to be under the general control of the recipient.
X.3.XXX Mail System Status
Mail system status indicates that something having to do with the destination system has caused this DSN. System issues are assumed to be under the general control of the destination system administrator.
X.4.XXX Network and Routing Status
The networking or routing codes report status about the delivery system itself. These system components include any necessary infrastructure such as directory and routing services. Network issues are assumed to be under the control of the destination or intermediate system administrator.
X.5.XXX Mail Delivery Protocol Status
The mail delivery protocol status codes report failures involving the message delivery protocol. These failures include the full range of problems resulting from implementation errors or an unreliable connection.
X.6.XXX Message Content or Media Status
The message content or media status codes report failures involving the content of the message. These codes report failures due to translation, transcoding, or otherwise unsupported message media. Message content or media issues are under the control of both the sender and the receiver, both of which must support a common set of supported content-types.
X.7.XXX Security or Policy Status
The security or policy status codes report failures involving policies such as per-recipient or per-host filtering and cryptographic operations. Security and policy status issues are assumed to be under the control of either or both the sender and recipient. Both the sender and recipient must permit the exchange of messages and arrange the exchange of necessary keys and certificates for cryptographic operations.
If you wish to read in details for both class 4 and class 5, click the below
X.1.1 Bad destination mailbox address
X.1.2 Bad destination system address
X.1.3 Bad destination mailbox address syntax
X.1.4 Destination mailbox address ambiguous
X.1.5 Destination mailbox address valid
X.1.7 Bad sender’s mailbox address syntax
X.1.8 Bad sender’s system address
X.2.0 Other or undefined mailbox status
X.2.1 Mailbox disabled, not accepting messages
X.2.3 Message length exceeds administrative limit
X.2.4 Mailing list expansion problem
X.3.0 Other or undefined mail system status
X.3.2 System not accepting network messages
X.3.3 System not capable of selected features
X.3.4 Message too big for system
X.4.0 Other or undefined network or routing status
X.5.0 Other or undefined protocol status
X.5.4 Invalid command arguments
X.5.6 Messaging Command In Transmission Too Long
X.6.0 Other or undefined media error
X.6.2 Conversion required and prohibited
X.6.3 Conversion required but not supported
X.6.4 Conversion with loss performed
X.6.6 Email Content Could Not Be Accessed
X.6.7 Email Address Format Not Supported
X.6.8 Email Servers Are Not Responding Appropriately
X.7.0 Other or undefined security status
X.7.1 Delivery not authorized, message refused
X.7.2 Mailing list expansion prohibited
X.7.3 Security conversion required but not possible
X.7.4 Security features not supported
X.7.6 Cryptographic algorithm not supported