Hard Bounce vs Soft Bounce

A hard bounce is a permanent delivery failure, shown by a reply code starting with 5, such as 550 or 5.1.1 for a mailbox that does not exist. A soft bounce is temporary, shown by a code starting with 4, such as a busy server. Remove hard-bounced addresses; let soft bounces retry.

How to tell the two apart
Hard bounceSoft bounce
First digit of the code5 (permanent)4 (temporary)
Typical causeAddress or domain does not existServer busy, mailbox over quota, greylisting
Will resending help?No, not in the same formOften, after a wait
What to doStop mailing that addressRetry; stop if it keeps failing

Updated

Every failed email comes back with a short code from the receiving server. The first digit tells you whether the problem is permanent or temporary, and the extended code after it narrows down why. Paste a bounce message into the classifier to pick out the codes and get a plain reading, then use the tables to check the meaning yourself.

Bounce classifier

Paste the bounce message: 550 5.1.1 The email account that you tried to reach does not exist.

Codes found

Hard bounce: a permanent failure. Stop mailing this address.

SMTP reply codes (RFC 5321)

The meanings below are the standard texts. Codes starting with 4 are transient, codes starting with 5 are permanent.

Common SMTP reply codes in bounces
CodeRFC 5321 meaningBounce type
421Service not available, closing transmission channelSoft
450Requested mail action not taken: mailbox unavailableSoft
451Requested action aborted: local error in processingSoft
452Requested action not taken: insufficient system storageSoft
550Requested action not taken: mailbox unavailableHard
551User not local; please try <forward-path>Hard
552Requested mail action aborted: exceeded storage allocationHard
553Requested action not taken: mailbox name not allowedHard
554Transaction failedHard

Enhanced status codes (RFC 3463)

The first digit is the class (2 success, 4 persistent transient failure, 5 permanent failure); the rest says what went wrong.

Enhanced codes you will meet most
CodeMeaning
X.1.1Bad destination mailbox address: the mailbox does not exist
X.1.2Bad destination system address: the domain does not exist or cannot accept mail
X.2.1Mailbox disabled, not accepting messages
X.2.2Mailbox full
X.3.4Message too big for system
X.4.4Unable to route
X.7.1Delivery not authorized, message refused

What a bounce looks like

Part of a typical bounce report

An example we wrote. The Status line carries the dotted code and the Diagnostic-Code line carries the server's reply.

Final-Recipient: rfc822; [email protected]
Action: failed
Status: 5.1.1
Diagnostic-Code: smtp; 550 5.1.1 No such user here

Two kinds of code in one message

SMTP, the protocol mail servers use to talk to each other, answers each step with a three-digit reply code defined in RFC 5321. Many servers add an enhanced status code from RFC 3463 in the form class.subject.detail, such as 5.1.1.

Both share the same first digit rule. When they appear together, the dotted code is the more specific of the two.

What a bounce means for your list

A hard bounce is a fact about the address, so the right response is to suppress it in your email tool. A soft bounce is a fact about that moment, so the right response is patience.

Signup forms that confirm the address before adding it, like double opt-in, stop most hard bounces before they start.

How it works

  1. Open the bounce email or your email service's bounce log and copy the error text.
  2. Paste it into the box. The classifier looks for three-digit reply codes like 550 and dotted codes like 5.1.1.
  3. Each code found is matched against the RFC 5321 and RFC 3463 meanings listed further down this page.
  4. The verdict uses the first digit: 5 means hard, 4 means soft, 2 means the message was accepted.

Tips

Frequently asked questions

What causes a hard bounce?

Most often a typo in the address, a mailbox that was closed, or a domain that no longer receives mail. The receiving server answers with a code starting with 5, which RFC 3463 calls a permanent failure.

How long do soft bounces keep retrying?

RFC 5321 suggests waiting at least 30 minutes between attempts and giving up after at least four to five days. Your email service may use its own schedule.

Does a high bounce rate hurt delivery?

Repeatedly sending to addresses that do not exist is a common sign of an old or bought list, so it can count against you with inbox providers. Removing hard bounces quickly is the simplest fix.

Is 550 always a hard bounce?

550 means the mailbox is unavailable and the action was not taken, a permanent reply. Some servers also use it for policy blocks, so read the dotted code and message text before deciding the address is dead.

Should I delete soft-bounced contacts?

Not after one failure. If the same address soft-bounces on several separate sends, treat it like a hard bounce and stop mailing it.

Related: Double opt-in, Google Postmaster Tools, Email list syntax checker, Email header analyzer, SPF, DKIM and DMARC.

Start for free or see all free tools. We.Inc is free to start, with no card needed. AI building is on paid plans from $20 a month.

More in Guides

We.Inc is an AI-powered website builder you can resell under your own brand. Launch a branded client dashboard, bill on Stripe Connect, and deliver AI-generated websites in minutes. White-label plans start at $99 a month for 25 client sites, with a 7-day free trial and no per-site fees.

Product

Who It's For

Features

Resources

Company

View Sitemap