Suppress permanent mailbox failures immediately, retry temporary failures slowly, and treat policy refusals as a reason to stop and investigate rather than retry. Measure bounces against a named denominator, ignore unsourced “good bounce rate” benchmarks, and set your own stop thresholds before launch. By default, Actually Agentic pauses a campaign at three hard bounces, or at 2 percent once 20 messages have been submitted.
Hard and soft bounces in SMTP terms
SMTP replies begin with a digit that carries the verdict. A 4xx reply is a transient negative completion: the action did not happen, but the condition is temporary and the request may be repeated. A 5xx reply is permanent: the request was rejected, and the client should not repeat it as sent. [1]
Enhanced status codes add detail in the form class.subject.detail. The class follows the same logic—4 for a persistent transient failure, 5 for a permanent one—while the subject says what failed. X.1.1 means the mailbox does not exist, X.2.2 means it is full, X.4.x points at network or routing, and X.7.x reports security or policy refusals such as filtering. [2]
| Example Gmail reply | What it means | Sensible response |
|---|---|---|
| 550 5.1.1 | The mailbox does not exist | Suppress the address permanently |
| 452 4.2.2 or 552 5.2.2 | The recipient’s mailbox is out of storage | Treat as temporary at first; suppress if it repeats |
| 421 4.7.28 | Unusual volume is being rate-limited | Slow that route; Google says to wait at least 10 minutes |
| 550 5.7.1 | Blocked as likely unsolicited | Stop and review the audience, content, and reputation |
| 550 5.7.26 | The sender is unauthenticated | Stop and fix SPF, DKIM, or DMARC |
Not every bounce arrives during the conversation
Some failures are refused during the SMTP session, so the sender learns immediately. Others are accepted first and fail later, when a downstream server cannot deliver. Those come back as delivery status notifications: machine-readable reports whose action field says whether delivery failed, was delayed, or succeeded. [5]
A sending system therefore needs two intake paths—synchronous replies and asynchronous reports—and both must update the same recipient state. Unique bounce return paths make it possible to tie a late report to the exact message and recipient instead of guessing from the text of the notice.
Temporary failures deserve patience, not persistence. RFC 5321 says the retry interval should generally be at least 30 minutes and that the give-up time generally needs to be at least four to five days. A retry loop measured in seconds turns a deferral into a reputation problem. [1]
Why “good bounce rate” benchmarks mislead
Articles often promise that a bounce rate under some round number is healthy. Those figures rarely say which denominator, which bounce types, which audience, or which period they measured, and a benchmark built on opt-in newsletters says little about a verified B2B list or a newly acquired one.
A bounce rate needs a definition before it means anything: hard bounces divided by messages submitted, over a named window, for a named campaign or sending identity. Mailbox providers are more direct than benchmarks about what they expect. Microsoft tells high-volume senders to remove invalid addresses regularly to reduce bounces, complaints, and wasted messages. [6]
Set a threshold that stops sending before a receiver forces the issue. The right number is the one you will enforce automatically, not the one that keeps a dashboard green.
What usually causes a spike
Read the codes before reaching for a cause. Mailbox errors point at the data; policy errors point at the sender.
- Stale or unverified addresses, especially from old exports or guessed address patterns.
- Catch-all domains, where verification cannot confirm the mailbox and some real messages fail later.
- A new source or import that skipped the usual verification and suppression checks.
- Authentication or DNS drift, which shows up as policy refusals rather than mailbox errors.
- A reputation problem: 5.7.x refusals clustering at one receiver usually mean that receiver has decided against the mail, not that the addresses are bad.
How to handle each kind
Keep the rule simple enough to automate. If a person has to read every bounce before anything stops, the system keeps sending while the review queue grows.
- Permanent mailbox failures (5.1.x): suppress immediately, and never let a later import reactivate the address.
- Temporary failures (4.x.x): retry with backoff, slow the affected route, and stop after a defined give-up period.
- Policy refusals (5.7.x, or repeated 4.7.x deferrals): pause the affected identity or campaign and investigate authentication, reputation, and audience before sending more.
- Asynchronous reports: parse the delivery status notification, match it to the exact message, and update the same suppression record a live rejection would.
Actually Agentic’s bounce thresholds
Actually Agentic pauses a campaign for review at three hard bounces, or when hard bounces reach 2 percent of submitted messages once at least 20 have been submitted, measured over the campaign’s recent window of up to 30 days. The same 2 percent ceiling also applies to the sending server as a whole, across campaigns. Permanent bounces suppress the recipient for future sends. [7]
Soft failures create temporary cooldowns for the affected provider and route instead of immediate retries, and a blocklist or authentication problem holds work for investigation rather than routing around it. Verification comes first: no domain is registered until at least one candidate verifies as valid, catch-all results do not count, and catch-all addresses are excluded from sending unless the reviewed plan expressly allows them. [7][8]
These are conservative defaults for a prelaunch service, not a claim about what any mailbox provider requires.
Common questions
Questions, answered plainly
What is the difference between a hard bounce and a soft bounce?
A hard bounce is a permanent failure, typically a 5xx reply such as 5.1.1 for a mailbox that does not exist. A soft bounce is a temporary failure, typically a 4xx reply, which may succeed on a later retry.
What is a good email bounce rate?
There is no reliable universal number. Define the rate—hard bounces over submitted messages in a named window—and set an automatic stop threshold before launch. By default, Actually Agentic pauses at three hard bounces, or at 2 percent once 20 messages have been submitted.
Should I retry a soft bounce?
Yes, with backoff. RFC 5321 recommends retry intervals of at least 30 minutes and a give-up time of at least four to five days. Repeated 4.7.x deferrals are a reputation signal, not just a delay.
Do bounces hurt sender reputation?
Repeatedly sending to invalid addresses signals poor list hygiene, and Microsoft recommends removing invalid addresses to reduce bounces and complaints. Policy refusals matter even more, because they show a receiver has already decided against the mail.
Evidence
Sources and methodology
Product capabilities were checked against first-party documentation available on September 11, 2026. Policies, plans, and prices can change; verify them before buying. General guidance is educational and is not legal advice.
- RFC 5321: Simple Mail Transfer Protocol RFC Editor. SMTP reply-code classes, the EHLO client identity, and retry timing for transient failures.
- RFC 3463: Enhanced Mail System Status Codes RFC Editor. Status codes that distinguish transient from permanent failures and mailbox problems from policy refusals.
- Gmail SMTP errors and codes Google. Reply codes and text Gmail returns for missing mailboxes, rate limits, policy blocks, authentication, TLS, and reverse DNS failures.
- Email sender guidelines Google. Authentication, DNS, spam-rate, formatting, unsubscribe, and volume guidance for Gmail.
- RFC 3464: An Extensible Message Format for Delivery Status Notifications RFC Editor. The machine-readable format for asynchronous delivery reports, including failed and delayed actions.
- Strengthening Email Ecosystem: Outlook’s New Requirements for High‐Volume Senders Microsoft Tech Community. SPF, DKIM, and DMARC requirements for domains sending more than 5,000 messages a day to Outlook.com consumer addresses, with the rejection code and hygiene recommendations.
- Actually Agentic product overview Actually Agentic. Product scope and operating model.
- Actually Agentic sourcing policy Actually Agentic. Crawler identity, first-party discovery limits, robots.txt handling, verification outcomes, retention, and correction or objection requests.
Your agent can do the thinking.
The infrastructure still needs a grown-up.