About SMTP Bounce Codes

The information on this page describes the RFC standards, not the actual implementation on MTA/Mail Server side. Mail server administrators can customize bounce code messages.

Notes:

  • The traditional SMTP bounce codes are three-digit numbers (e.g., 550). The enhanced bounce codes are three-digits separated by decimal points (e.g., 5.1.1).
  • The tables below are not a definitive list of all available bounce codes, only a representation of the most frequent ones.

Enhanced Status Codes (Class Sub-Codes) (from IANA.org)

Code Summary Description Reference
2.XXX.YYY Success Success specifies that the DSN is reporting a positive delivery action. Detail sub-codes may provide notification of transformations required for delivery. RFC3463 (Standards track)
4.XXX.YYY 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. In this case, the bounce will be classified as a soft-bounce. RFC3463 (Standards track)
5.XXX.YYY 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. RFC3463 (Standards track)

For more information on Class Sub-Codes, click here.

5.X Bounce Codes (Permanent Failures)

Code Description
5.0.0 Address does not exist
5.1.0 Other address status
5.1.1 Bad destination mailbox address
5.1.2 Bad destination system address
5.1.3 Bad destination mailbox address syntax
5.1.4 Destination mailbox address ambiguous
5.1.5 Destination mailbox address invalid
5.1.6 Mailbox has moved
5.1.7 Bad sender’s mailbox address syntax
5.1.8 Bad sender’s system address
5.2.0 Other or undefined mailbox status
5.2.1 Mailbox disabled, not accepting messages
5.2.2 Mailbox full
5.2.3 Message length exceeds administrative limit.
5.2.4 Mailing list expansion problem
5.3.0 Other or undefined mail system status
5.3.1 Mail system full
5.3.2 System not accepting network messages
5.3.3 System not capable of selected features
5.3.4 Message too big for system
5.4.0 Other or undefined network or routing status
5.4.1 No answer from host
5.4.2 Bad connection
5.4.3 Routing server failure
5.4.4 Unable to route
5.4.5 Network congestion
5.4.6 Routing loop detected
5.4.7 Delivery time expired
5.5.0 Other or undefined protocol status
5.5.1 Invalid command
5.5.2 Syntax error
5.5.3 Too many recipients
5.5.4 Invalid command arguments
5.5.5 Wrong protocol version
5.6.0 Other or undefined media error
5.6.1 Media not supported
5.6.2 Conversion required and prohibited
5.6.3 Conversion required but not supported
5.6.4 Conversion with loss performed
5.6.5 Conversion failed
5.7.0 Other or undefined security status
5.7.1 Delivery not authorized, message refused
5.7.2 Mailing list expansion prohibited
5.7.3 Security conversion required but not possible
5.7.4 Security features not supported
5.7.5 Cryptographic failure
5.7.6 Cryptographic algorithm not supported
5.7.7 Message integrity failure

For more information, see RFC3463 (file link).

Traditional SMTP Status Codes

The table below is not a definitive list of all available status codes, only a representation of the most frequent ones.

Status Code Group Group Name Description
1xx Informational Request received, continuing process
2xx Success The action was successfully received, understood, and accepted
3xx Redirection Further action must be taken in order to complete the request
4xx Client Error The request contains bad syntax or cannot be fulfilled
5xx Server Error The server failed to fulfil an apparently valid request
Code Description
421 domain service not available, closing transmission channel
450 Requested mail action not taken: mailbox unavailable (e.g., mailbox busy)
451 Requested action aborted: error in processing
452 Requested action not taken: insufficient system storage
500 The server could not recognize the command due to a syntax error
501 A syntax error was encountered in command arguments
502 This command is not implemented
503 The server has encountered a bad sequence of commands
504 A command parameter is not implemented
550 User’s mailbox was unavailable (“not found”)
551 The recipient is not local to the server
552 The action was aborted due to exceeded storage allocation
553 The command was aborted because the mailbox name is invalid
554 The transaction failed for some unstated reason

References: