Based on aggregate Mailblast campaign data, the aggregate hard bounce rate across Amazon SES marketing sends is 0.012% and the aggregate total bounce rate is 0.102%. To put that in context: AWS itself places your account under review when the hard bounce rate exceeds 5%, and may pause sending entirely at 10% (AWS, 2026). The typical sender operates more than 400 times below the AWS review threshold.
That gap reframes most of the deliverability anxiety around Amazon SES. At the aggregate level, hard bounces are statistically negligible for healthy senders. The harder question is when bounce rates actually become a problem, what the real ratio of hard to soft bounces looks like, and how campaign size affects either number. This post answers those from the data.
What's a Normal Amazon SES Bounce Rate?
The aggregate hard bounce rate across Amazon SES sends in this dataset is 0.012%, and the aggregate total bounce rate (hard plus soft) is 0.102%. Across the aggregate Mailblast dataset, hard bounces account for 0.012% of sends, soft bounces account for 0.090%, and total bounces account for 0.102%. AWS SES considers a hard bounce rate below 5% to be healthy (AWS, 2026), so the typical sender operates well within the safe zone with a margin of more than two orders of magnitude.
Per-campaign numbers are even lower than the aggregate. In the professional tier (10,000 to 100,000 recipients per campaign), the median campaign produces zero hard bounces and a median total bounce rate around 0.02 to 0.03%. The volume-weighted aggregate is pulled up by the small minority of campaigns with elevated bounce rates; the median experience is closer to zero.
Hard Bounces vs Soft Bounces: The Real Pattern
Soft bounces outnumber hard bounces roughly 7.5 to 1 in Amazon SES marketing sends. Across the dataset, hard bounces sit at 0.012% of all sends, while soft bounces sit at 0.090%. That ratio matters because hard and soft bounces have completely different operational implications, and AWS treats them differently.
A hard bounce means the address is permanently undeliverable: the mailbox doesn't exist, the domain doesn't resolve, or the receiving server explicitly rejected the message as undeliverable. AWS counts hard bounces against your account reputation and uses them to compute the 5% threshold. SES also automatically suppresses hard-bounced addresses from future sends within your account. A soft bounce means the receiving server temporarily couldn't accept the message: mailbox full, server timeout, message too large, transient policy filter. AWS does not count soft bounces toward your account reputation (AWS, 2026). SES retries soft bounces automatically.
The split has a practical consequence. The number you see on your SES reputation dashboard is the hard bounce rate. The number you see on a per-campaign report - in Mailblast, in your own analytics, in any ESP that tracks SES events - typically includes both. The dashboard number will look substantially lower because it's measuring a different thing. Comparing the two side by side is a common source of confusion.
Bounce Rate by Campaign Size: The Counterintuitive Pattern
Larger Amazon SES campaigns have dramatically lower bounce rates than smaller ones. The aggregate total bounce rate for campaigns sending to 100,000 to 1,000,000 recipients is 0.087%, while campaigns sending under 1,000 recipients have an aggregate total bounce rate of 0.87% - roughly 10 times higher. The 10,000 to 100,000 tier sits at 0.104%, and the 1,000 to 10,000 tier at 0.63%.
This is the opposite of the common "big lists are dirty" assumption. The explanation is selection. SES senders running campaigns at the 10,000-plus tier are running deliberate, list-managed marketing operations. They have hygiene processes, they segment, they re-permission inactive subscribers, and SES throttles them the moment hard bounce rates climb. SES senders running campaigns under 1,000 are a mixed cohort: test sends, hobby projects, small newsletter operators using imported address books. The discipline isn't there. The infrastructure is identical between the two groups; operator behavior isn't.
The practical takeaway: if your bounce rate is well above the per-tier benchmark for your campaign size, that's a list problem, not a platform problem. Walk through your bounce notifications. SES bounce events include the specific failure reason from the receiving server (see our guide to SES bounce and complaint handling for the full workflow).
The full per-year breakdown for the most representative tier (10,000 to 100,000 recipients per campaign):
| Year | Median hard bounce | Median soft bounce | Median total bounce |
|---|---|---|---|
| 2023 | 0.000% | 0.025% | 0.026% |
| 2024 | 0.000% | 0.022% | 0.024% |
| 2025 | 0.003% | 0.021% | 0.026% |
| 2026 YTD | 0.004% | 0.014% | 0.019% |
The median per-campaign bounce rate in the professional tier is roughly an order of magnitude lower than the volume-weighted aggregate, because most campaigns produce zero hard bounces and the aggregate is pulled up by the small fraction with elevated rates. Both numbers matter: the median tells you what a typical campaign looks like, and the aggregate tells you what your account reputation looks like.
When to Worry: AWS SES Warning Thresholds
AWS SES places your account under review at a 5% hard bounce rate and may pause sending entirely at 10% (AWS, 2026). The corresponding complaint-rate thresholds are 0.1% for review and 0.5% for sending pause. Both are calculated over a representative rolling volume of recent sends, not over a single campaign. The exact lookback varies by account size, but a 5% hard bounce rate over the last 10,000 messages is roughly where the trigger sits.
Four threshold zones matter operationally:
- Under 1% hard bounce: healthy. Within normal range. The aggregate Mailblast hard bounce rate is 0.012%, roughly 83 times below this threshold. No action needed.
- 1% to 5% hard bounce: elevated. Indicates a list-quality or authentication issue. Pause cold or imported lists and investigate. No immediate AWS action, but you're trending toward review.
- 5% to 10% hard bounce: AWS places your account under review. The reputation dashboard shows "Under review" and you receive a Support Center case. Resolve before the review period ends or sending may be paused.
- Above 10% hard bounce: AWS may pause your account's ability to send. Account access to SES is at immediate risk and requires Support Center remediation.
The gap between the benchmark aggregate (0.012%) and the review threshold (5%) sounds reassuring, and for steady-state sending it is. But reputation problems don't always show up gradually. A single bad list import can move a clean account from 0.012% to 4% in one campaign if the list has 20,000 invalid addresses across a 500,000-recipient send. The pattern that triggers AWS isn't slow drift; it's a discrete event followed by SES detecting the spike against the rolling baseline.
The complaint-rate thresholds (0.1% under review, 0.5% pause) are far tighter than bounce-rate thresholds. Complaints reflect recipients explicitly marking your mail as spam, which mailbox providers weight heavily. A clean list can still generate complaints if the content or sending pattern feels unwanted to recipients, so complaint-rate monitoring is at least as important as bounce monitoring.
How These Numbers Compare to Other ESPs
The most authoritative reference for "acceptable" bounce rates on Amazon SES is AWS itself. AWS sets the hard bounce rate review threshold at 5% and the suspension threshold at 10% (AWS, 2026). The aggregate Mailblast SES hard bounce rate is 0.012%, roughly 417 times below the review threshold and 833 times below the suspension threshold. Most consumer ESPs publish per-industry open and click benchmarks but do not publish equivalent bounce-rate benchmarks at the same level of detail, so direct platform-to-platform comparison is harder than it sounds.
The numbers reflect sender behaviour more than platform capability. SES, Mailchimp, Brevo, and other ESPs all send mail through the same internet standards. The difference shows up in who is doing the sending. SES users skew technical: developers, marketing engineers, and operators who manage lists deliberately and have a strong incentive to maintain reputation because AWS will throttle them if they don't. Consumer ESP user populations are broader and the long tail of small senders has a wider list-quality range. The infrastructure is largely the same; sender discipline is the variable.
How Mailblast Fits In
Mailblast runs on your own Amazon SES account (BYO-SES), so the bounce rates above are what Mailblast customers actually produce on their AWS accounts, not numbers from a separate sending pool. The platform handles the operational layer that keeps those numbers clean: SNS bounce and complaint feedback wired in by default, automatic hard-bounce suppression at the account level, and per-campaign reporting that surfaces a campaign's hard, soft, and total bounce rate as soon as sending completes. Senders running clean lists see the benchmark numbers above; senders who skip list hygiene see the same AWS thresholds catch them regardless of platform.
FAQ
What is a normal bounce rate for Amazon SES?
Based on aggregate Mailblast campaign data, the aggregate hard bounce rate across Amazon SES marketing sends is 0.012% and the aggregate total bounce rate (hard plus soft) is 0.102%. AWS itself recommends keeping the hard bounce rate below 5%, places accounts under review at 5%, and may pause sending at 10% (AWS, 2026). The typical sender runs more than 400 times below the AWS review threshold.
What's the difference between hard and soft bounces in Amazon SES?
Hard bounces are permanent delivery failures: the address is invalid, the mailbox doesn't exist, or the domain is unreachable. Soft bounces are temporary: mailbox full, server timeout, message too large. AWS only counts hard bounces toward your account reputation - soft bounces do not affect the 5% threshold (AWS, 2026). SES retries soft bounces automatically. In the Mailblast data, soft bounces outnumber hard bounces by roughly 7.5 to 1.
How does AWS SES calculate bounce rate?
AWS SES calculates the bounce rate as a rolling average over a representative volume of recent sends - an amount of email that represents your typical sending practices, recalculated as patterns change (AWS, 2026). Only hard bounces count. Soft bounces, bounces to verified addresses or domains, and bounces from the SES inbox simulator are excluded from the calculation. One bad campaign won't suspend you; sustained elevated hard bounces will.
Why is my Amazon SES bounce rate higher than the benchmark?
Three common causes. List quality: imported old lists or purchased data show bounce rates 10-20x higher than the benchmarks above. Authentication gaps: missing or misaligned SPF, DKIM, or DMARC records cause spurious rejections at receiving servers - see our guide on why emails go to spam for the full breakdown. Sending pattern: cold lists or unwarmed IPs trigger conservative receiver behaviour. Walk through bounce reasons in your SES bounce notifications. They tell you specifically why each delivery failed.
What's the difference between AWS SES bounce rate and total bounce rate?
Most email metrics dashboards report total bounces (hard plus soft) per campaign. AWS SES reports only hard bounces in its account-level reputation metric, because soft bounces represent transient receiving-server issues rather than list-quality problems. When comparing your SES dashboard to a campaign-level bounce report, expect the SES number to be substantially lower. Across the Mailblast data, soft bounces account for about 88% of all bounces.
Methodology: we aggregate campaign-level bounce data across all non-suspended Mailblast accounts with a completed campaign report, sent on or after 2023-01-01. Hard, soft, and total bounce rates are computed both as per-campaign medians and as volume-weighted aggregates across all sends. AWS threshold figures are quoted directly from official AWS SES documentation.
Disclosure: Mailblast is a hosted management layer for your own Amazon SES account; the benchmark data above comes from real campaigns sent through that integration.