Skip to main content

What’s the difference between temporary and permanent blocks?

SMTP response codes indicate whether delivery failures are temporary or permanent, guiding how your MTA should respond.

Temporary blocks (4xx codes): The receiving server is saying "not right now, try again later." Common causes: rate limiting (too many connections or messages), greylisting (intentional delay for unknown senders), or temporary server issues. Your MTA should queue the message and retry according to your backoff schedule. Examples:

421: Service temporarily unavailable

451: Temporary local problem, try later

452: Insufficient storage

Permanent blocks (5xx codes): The server is saying "don't send this again." The message should not be retried. Common causes: invalid recipient address, content blocked as spam, or policy rejection. Examples:

550: Mailbox not found / User unknown

551: User not local

553: Mailbox name invalid

554: Transaction failed (often spam-related)

Proper handling is critical. Retrying permanent failures wastes resources and can damage reputation. Not retrying temporary failures loses legitimate mail. Your MTA should parse response codes and act accordingly.