550
SMTPERRORCommonDelivery FailureHIGH confidence

Requested action not taken: mailbox unavailable

What this means

The 550 code is a permanent failure indicating the recipient's mailbox is unavailable. This is one of the most common bounce codes and means the email could not be delivered to the intended recipient.

Why it happens
  1. 1The email account does not exist at the destination domain.
  2. 2The recipient's mailbox has been disabled or suspended.
  3. 3The server's policy (e.g., anti-spam) has blocked the email.
How to reproduce

A client attempts to send an email to an address that does not exist.

trigger — this will error
trigger — this will error
EHLO client.example.com
MAIL FROM:<sender@example.com>
RCPT TO:<nobody@example.com>
550 5.1.1 The email account does not exist

expected output

550 5.1.1 Mailbox unavailable

Fix 1

Verify recipient address

WHEN When you control the sending application

Verify recipient address
// Validate before sending
const isValid = /^[^s@]+@[^s@]+.[^s@]+$/.test(email);

Why this works

Prevents wasted delivery attempts and protects sender reputation.

Fix 2

Handle bounce properly

WHEN When processing delivery status notifications

Handle bounce properly
// Remove hard-bounced addresses from your list
if (smtpCode === 550) markAddressInvalid(recipient);

Why this works

Permanent 5xx failures should never be retried.

What not to do

Retry a 5xx permanent failure

5xx codes indicate permanent rejection; retrying wastes resources and risks getting blacklisted.

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All SMTP errors