deliverability

Email Bounce Back: Hard vs Soft Bounces and How to Fix Them

Updated October 4, 2026 · by the MailPilot team

Short answer: A bounce back is an automated message saying your email could not be delivered. A hard bounce is permanent — the address does not exist — and you must remove it from your list immediately. A soft bounce is temporary (full mailbox, server down, throttling) and usually retries on its own. Keep your total bounce rate under 2%; above 5% and mailbox providers start filtering everything you send.

A bounce back is the mail system telling you, in writing, exactly why your message did not arrive. Most people delete these notices. That is a mistake: the bounce message contains a status code that names the problem precisely, and it is the single most useful diagnostic you get for free.

The two kinds of bounce

Every bounce is either permanent or temporary, and the difference decides what you should do next.

Hard bounceSoft bounce
SMTP code5xx4xx
MeaningPermanent failureTemporary failure
Typical causeAddress or domain does not exist; you are blockedMailbox full, server busy or down, message too large, rate-limited
Will it retry?NoYes, usually for 24-72 hours
What to doRemove the address immediatelyLeave it; investigate if it repeats
Reputation damageHighLow, unless it is chronic

The practical rule: a 5xx means stop, a 4xx means wait.

How to read a bounce message

A bounce back looks intimidating, but only two or three lines matter. Here is a typical one with the useful parts marked:

From: Mail Delivery Subsystem <mailer-daemon@googlemail.com>
Subject: Delivery Status Notification (Failure)

  ** Address not found **
  Your message wasn't delivered to jane@example.com
  because the address couldn't be found.

  The response was:
  550 5.1.1 The email account that you tried to reach does not exist.

Three things to pull out:

  1. The recipient — which address failed. A bounce for one address says nothing about the rest of the send.
  2. The SMTP code — 550 here. The first digit is what matters: 5 = permanent, 4 = temporary.
  3. The enhanced status code — 5.1.1 here. This is the precise reason, and it is standardised.

The codes you will actually see

CodeTypeWhat it meansFix
550 5.1.1HardAddress does not existRemove from list
550 5.1.2HardDomain does not existRemove; check for a typo in the domain
550 5.7.1HardRejected by policy — often a blocklist or authentication failureCheck your blocklist status and authentication
550 5.7.26HardFailed authentication (Gmail’s unauthenticated-sender rejection)Set up SPF, DKIM and DMARC
552 5.2.2HardRecipient mailbox is over quota, permanentlyRemove after repeated failures
421 4.7.0SoftTemporarily deferred, usually rate-limiting or reputation throttlingSlow down; see sending volume below
450 4.2.1SoftMailbox temporarily unavailable or disabledLeave it; retry handles it
452 4.2.2SoftMailbox full right nowLeave it; remove if it persists for weeks

If a bounce mentions a URL — many blocklist rejections include one — open it. The receiving server is telling you exactly which list you are on and how to request delisting.

Why bounce rate matters more than the individual bounces

A single hard bounce is harmless. A pattern of them is the problem, because mailbox providers read your bounce rate as a proxy for how you got your list.

Someone mailing a list they built themselves has a bounce rate near zero, because the addresses came from real people who typed them. Someone mailing a scraped or purchased list has a high bounce rate, because a meaningful share of those addresses were never real. Gmail and Microsoft cannot see where your list came from — but they can measure your bounce rate, and it tells them anyway.

The thresholds that matter in practice:

  • Under 2% — healthy. No action needed.
  • 2-5% — your list is going stale, or some of it was never clean. Audit before it gets worse.
  • Above 5% — you are now being treated as a low-quality sender. Expect inbox placement to fall across all your mail, including to valid addresses.

That last point is what catches people out. Bounces do not just fail individually; they degrade delivery for everything else you send.

Fixing a bounce problem, in order

1. Remove every hard bounce immediately. Not eventually — immediately, and permanently. Re-mailing an address that already returned a 550 5.1.1 is the single clearest low-quality-sender signal there is. Most ESPs suppress these automatically; if you are sending through your own SMTP, you have to do it yourself.

2. Verify the list before a large send. Verification catches dead addresses before they become bounces. This is worth doing for any list older than six months, and essential for any list you did not build yourself.

3. Check whether the bounces are actually about you. If valid addresses are bouncing with 5.7.x codes, the recipient is not the problem — you are being rejected on reputation or authentication grounds. Check your blocklist status and confirm SPF, DKIM and DMARC all pass. A 550 5.7.26 in particular means Gmail rejected you specifically for failing authentication.

4. Look at your sending pattern, not just your list. A sudden spike in 421 deferrals usually means you ramped volume too fast from a domain without the reputation to support it. The receiving server is not rejecting you — it is slowing you down and watching what you do next. Back off, then ramp more gradually. If the domain or mailbox is new, this is exactly the problem email warmup exists to prevent: it builds the sending history that stops providers throttling you in the first place.

5. Watch the trend in Google Postmaster Tools. Bounce and rejection data for Gmail recipients shows up there, and it is the only place you see Gmail’s own view of your sending. Setting it up takes ten minutes.

Bounces that are not really bounces

Two things get mistaken for bounces regularly:

Spam filtering is not a bounce. If your mail is being delivered to the spam folder, nothing bounces — the message arrives, it is just filed somewhere nobody looks. Silence is not a bounce. If you suspect this, here is how to tell.

Fake bounce messages exist. Attackers forge bounce notices to get you to click a link, and spammers forging your domain as the sender can cause real bounces to land in your inbox for mail you never sent — a backscatter problem that a strict DMARC policy largely solves. A genuine bounce comes from the receiving mail system and quotes your original message. A bounce asking you to log in somewhere to “release” a message is never genuine.

The short version

Read the code, not the prose. 5xx means remove the address and stop. 4xx means wait and watch. If valid addresses are bouncing, the problem is your reputation or your authentication, not your list — and both are fixable, in that order.

MailPilot

Land in the inbox — automatically

MailPilot warms up your mailboxes across a network of real inboxes, so your emails stop hitting spam — and alerts you in Slack & Discord the moment placement drops. Free plan for one mailbox, or a 7-day trial of the paid plans with unlimited mailboxes. No credit card.

Start free with MailPilot

Email Bounce Back — FAQ

What does it mean when an email bounces back?

It means a mail server refused to deliver your message and sent you an automated notice explaining why. The notice — often from 'Mail Delivery Subsystem' or 'postmaster' — contains an SMTP status code that tells you whether the failure is permanent (a hard bounce, usually a dead address) or temporary (a soft bounce, usually a full mailbox or a busy server).

What is a soft bounce in email?

A soft bounce is a temporary delivery failure: the recipient's mailbox is full, their server is down or busy, the message is too large, or you are being rate-limited. The address is valid, so most senders retry automatically for 24-72 hours before giving up. Soft bounces carry 4xx SMTP codes.

What is a hard bounce in email?

A hard bounce is a permanent delivery failure — the address does not exist, the domain does not exist, or the server has blocked you outright. Hard bounces carry 5xx SMTP codes. Never retry a hard bounce and never keep the address on your list: repeatedly mailing dead addresses is one of the fastest ways to damage sender reputation.

What is a good email bounce rate?

Under 2% total is healthy. Between 2% and 5% is a warning sign that your list quality is slipping. Above 5% and mailbox providers treat it as evidence you are mailing a scraped or stale list, and they begin filtering your mail to spam regardless of content.

Why do my emails bounce back when the address is correct?

If the address is definitely valid, the bounce is almost always about you rather than the recipient. The common causes are a blocklist listing, missing or failing SPF/DKIM/DMARC, sending too much volume too quickly from a new domain, or a reputation problem that makes a receiving server reject your mail at connection time. Read the SMTP code in the bounce message — it usually names the reason directly.