Key Takeaways
- Soft bounces are temporary failures (4XX SMTP codes) and retry. Hard bounces are permanent (5XX SMTP codes) and require immediate suppression.
- Most ESPs convert persistent soft bounces to hard bounces after 7 to 15 attempts, depending on subscriber engagement history.
- The reputation cost of a hard bounce is the same regardless of whether it started as a soft bounce. Continuing to send to addresses that soft-bounce repeatedly is a reputation risk.
- Pre-send verification removes the addresses that would have produced 5XX bounces (mailboxDoesNotExist, domainDoesNotExist, invalidSyntax) before the send queue ever sees them.
Email bounces are not a single phenomenon. They are a category of SMTP responses that fall into two operational buckets with very different recovery rules: soft bounce vs hard bounce. The difference determines whether you retry, suppress, or escalate. Getting it wrong on either side of the line damages sender reputation. This guide covers the actual SMTP codes mailbox providers return, the rules ESPs use to handle them, and how to keep your flow bounce rate under the 0.35 percent threshold that Gmail and Yahoo actively police.
The mental model: 4XX codes are temporary failures, 5XX codes are permanent failures. Everything else flows from there.
Soft Bounce: 4XX Codes and What They Mean
Soft bounces happen when the recipient mail server reaches the destination but cannot deliver the message right now. The infrastructure is reachable, the address is plausible, but something else got in the way. The right response is to retry. ESPs generally retry soft bounces for 24 to 72 hours before giving up.
The most common 4XX codes worth knowing:
- 421 Service not available. The receiving server is overloaded or temporarily refusing connections. Common during volume spikes or when the server is patched. Retry with exponential backoff.
- 450 Mailbox unavailable temporarily. The mailbox exists but cannot accept mail right now. Often greylisting or a full inbox. Retry after 30 minutes.
- 451 Action aborted local error. Server-side processing error. Retry; usually resolves within hours.
- 452 Insufficient system storage. The mailbox or server is out of space. Retry within 24 hours; failure to clear after 72 hours usually means abandoned mailbox.
- 421 4.7.x Try again later. Gmail-specific reputation throttling. The receiving system is rate-limiting your domain. Slow down, reduce concurrency, suspend cold segments.
The Gmail 421 4.7.x code is special. It is technically a soft bounce, but it is a reputation signal more than a delivery failure. Persistent 421 4.7.x responses indicate that Gmail has decided your sending pattern looks suspicious, and the right response is not just retry. It is to investigate why Gmail is throttling and fix the upstream cause.
Hard Bounce: 5XX Codes and What They Mean
Hard bounces are permanent. The address does not exist, the domain has no MX record, the message is being explicitly rejected, or the sender is being blocklisted. The right response is to immediately suppress the address. Continued sending generates more bounces and damages reputation further.
The most common 5XX codes:
- 550 5.1.1 Mailbox does not exist. The local part has no mailbox at the destination domain. Suppress immediately, never retry.
- 550 5.1.10 Recipient address rejected. Often a spam policy decision. Suppress and investigate why the recipient organization is rejecting your domain.
- 550 5.7.1 Sender blocked. Authentication failure or reputation block. The address may be valid but your domain is being rejected. Fix the cause; do not retry.
- 551 5.1.6 Mailbox moved (no forwarding). User changed providers and forwarding is not configured. Suppress.
- 552 5.3.4 Message size limit exceeded. The message is too large. Reduce attachments and retry once before suppressing.
- 553 5.1.2 Domain does not exist. Typo address. Suppress and surface for correction at next contact.
- 554 5.7.1 Spam content or blocklist. Message rejected as spam or sender on a blocklist. Investigate authentication, list quality, and content.
When Soft Bounces Become Hard Bounces
Repeated soft bounces eventually convert to hard bounces. Each ESP has its own rule. Mailchimp converts after 7 attempts for unengaged subscribers and 15 for engaged ones. HubSpot uses similar rules with adjustments based on the specific 4XX code returned. Klaviyo applies engagement weighting that retains addresses with recent opens longer than addresses without.
The conversion logic exists because at some point a temporary problem becomes a permanent one. A mailbox that has been "full" for two months is functionally abandoned. A server that has been "unavailable" for a week has either been decommissioned or is intentionally rejecting your domain. Continuing to retry produces no value and contributes to reputation damage.
The right operational rule: any address that soft-bounces more than three times across a 14-day window is a candidate for suppression even before the ESP converts it. Pre-send verification through the email verification API catches most of these addresses before the next send because the underlying mailbox state has usually shifted from temporary to permanent failure.
Why Bounce Type Matters for Reputation
Mailbox providers track bounce rates as a primary signal of sender hygiene. The 2024 Gmail and Yahoo bulk sender requirements set explicit thresholds: complaint rate under 0.30 percent, bounce rate trending below 1 percent, and authentication enforcement at p=quarantine or stricter. The rules apply to anyone sending more than 5,000 messages per day.
Soft bounces hurt reputation less than hard bounces because providers expect occasional temporary failures. Hard bounces signal that the sender is mailing addresses they should not have. A campaign with 3 percent hard bounce rate hits providers harder than a campaign with 5 percent soft bounce rate, even though the second number sounds worse.
The economic implication is that hard bounces are the priority for prevention. The fix is pre-send verification on any list that has not been validated in 30 days. The free email verification tool handles spot-check lookups during triage, and the bulk verification API processes large lists efficiently. The email verification API documentation covers the response fields used to map verification results to ESP suppression decisions.
Mapping Bounce Codes to Verification Status
The v2 verify endpoint returns status fields that correlate cleanly with SMTP bounce codes. Pre-send verification produces the same routing decision the SMTP server would have produced, without the reputation cost of finding out via bounce.
- status: failed, sub_status: mailboxDoesNotExist → would produce 550 5.1.1 hard bounce
- status: failed, sub_status: domainDoesNotExist → would produce 553 5.1.2 hard bounce
- status: failed, sub_status: mxServerDoesNotExist → would produce 550 hard bounce
- status: unknown, sub_status: isGreylisting → would produce 450 4.7.x soft bounce, retry recommended
- status: transient, sub_status: transientError → would produce 421 or 451 soft bounce, retry recommended
- status: failed, sub_status: mailboxIsFull → would produce 452 soft bounce escalating to hard if unresolved
The mapping makes verification operationally equivalent to the bounce data your ESP collects, but ahead of the send. For new developers integrating into existing applications, 100 free email verification credits on signup is enough to test the integration against a sample of any list.
Frequently Asked Questions
What is a normal email bounce rate in 2026?
Below 0.35 percent for triggered flows. Below 1 percent for broadcast campaigns. Above 2 percent indicates list quality problems that will damage reputation. The Gmail and Yahoo bulk sender requirements expect bounce rates trending under 1 percent for any sender exceeding 5,000 messages daily.
Should I retry every soft bounce?
Yes, but with backoff. Retry the first soft bounce within an hour, the second within 6 hours, the third within 24 hours. After three failed attempts across 14 days, treat the address as a candidate for suppression even if your ESP has not auto-converted it.
Can I unsuppress a hard-bounced address?
Most ESPs allow manual unsuppression after the underlying issue is fixed (the address was added back, the domain was reconfigured). Unsuppression should be the exception. Most hard bounces are permanent and the suppression list is doing its job.
Why do some addresses bounce 550 sometimes and 450 other times?
Mailbox providers occasionally return temporary failures for addresses that are actually permanent failures, usually as a defensive measure against spam enumeration. Treat these like soft bounces initially but apply the three-strike suppression rule. If three soft bounces happen within 14 days, the address is functionally a hard bounce regardless of the SMTP code.