The short answer
- 1. Check which SES pricing plan each account and each Region is on. AWS now defaults new and dormant ones to Essentials at $0.16 per 1,000 instead of the $0.10 à la carte rate, and nothing on your bill announces it.
- 2. Find the fixed and per-gigabyte line items that are larger than your sending: dedicated IPs, attachment data, plan fees that multiply per Region.
- 3.Price a move off a managed provider honestly. At 100K the saving is $25–$167 a month. The reason to move is the shape of the curve above 1M, not the number at 100K.
- 4.Only then reduce volume — and only after multiplying the emails you would delete by your actual marginal rate. On SES that number is usually too small to fund the work.
Every figure in this post is either taken from a published pricing page or computed from published rates, and the arithmetic is shown so you can check it. AWS rates were verified against the SES pricing page in August 2026. Competitor pricing was verified against live pricing pages on July 13, 2026.
What 100,000 emails actually costs
Amazon SES has four billing modes since July 2026. Here is each one priced at exactly 100,000 emails a month. Monthly fees are charged per account, per Region.
| Mode | Monthly fee | Rate | 100K / mo | Notes |
|---|---|---|---|---|
| À la carte | $0 | $0.10 / 1,000 | $10.00 | No bands, no fee. Cheapest raw sending at any volume. |
| Essentials | $0 | $0.16 / 1,000 | $16.00 | AWS assigns this to new accounts and dormant Regions by default. |
| Pro | $105 / mo | $0.22 / 1,000 | $127.00 | Fee is per account, per Region. Bundles a managed dedicated IP. |
| Enterprise | $500 / mo | $0.23 / 1,000 | $523.00 | Multi-Region, tenants, 5 domains, 12 dedicated IPs. |
One conclusion falls straight out of that table and holds at every volume: à la carte is always the cheapest way to buy raw sending. Its $0.10 rate is lower than the best marginal band any subscription plan reaches — Essentials bottoms out at $0.11 above 100M, Pro at $0.12 — and it carries no monthly fee. There is no crossover point. If all you want is delivery, no SES plan ever beats à la carte on price.
That does not make the plans a trap. They bundle real products with real standalone prices — Essentials includes Virtual Deliverability Manager, which AWS otherwise sells at $1,250 a month for the global tier. At 100K a month, Essentials costs you $6 more than à la carte. If you use VDM, that is the cheapest VDM will ever be. If you don't, you are paying a 60% premium on sending for a dashboard you never open.
The rest of the bill, in full
"SES is $10" is true and incomplete. SES delivers email; it does not store your event history, and every open, click, bounce, complaint and delivery has to land somewhere. Here is the whole monthly bill for 100,000 emails through a standard SES event pipeline — EventBridge to SQS to Lambda to DynamoDB — in us-east-1, at 8 event types per email and 90-day retention.
| Line item | Monthly | Basis |
|---|---|---|
| SES sending | $10.00 | 100,000 emails × $0.10 / 1,000, à la carte |
| EventBridge | $0.80 | 800,000 events at 8 event types per email |
| SQS | $0.70 | 2.4M requests, after the 1M free tier |
| Lambda | $0.00 | Inside the free tier at 512 MB and 100ms average |
| DynamoDB | $1.00 | 800,000 writes plus 4.6 GB at steady state, 90-day retention |
| Total | $12.50 | $0.125 per 1,000, all in |
$2.50 of infrastructure on top of $10 of sending. That is the real floor for a 100K-a-month transactional sender with full event history in their own account. Hold that number in mind, because every optimization below gets measured against it.
Step 1: Find out which plan you're on
On July 21, 2026 AWS started assigning the Essentials plan to every new SES account, and to every account-and-Region pair with no metered SES activity since June 1, 2025. Accounts that were actively sending were not repriced. The unit is not "account" — it is account × Region.
So the answer to "which plan am I on" is not one answer. It is one answer per Region, and the Regions most likely to be sitting on Essentials are exactly the ones nobody audits: the staging account, the second Region you expanded into last quarter, the disaster-recovery Region you provisioned and never used. At 100K a month the difference is $6. At 1M it is $60. It compounds silently and it never shows up on your bill as anything other than a slightly larger number.
# Read the plan for every Region you send from, and model
# your real volume against all four billing modes
wraps email plan
# Model a specific volume
wraps email plan --volume 100000
# Move a Region back to à la carte
wraps email plan --region us-east-1 --set alacarteIf you'd rather do it by hand, the plan is readable through the SES GetAccount API and writable through PutAccountPricingAttributes, once per Region. One detail is worth knowing before you plan a migration window: an account that AWS defaulted onto Essentials can cancel back to à la carte with immediate effect. Every other downgrade waits for the next billing cycle.
Step 2: Find what costs more than your sending
At $10 of sending, the bar for "this line item dwarfs my sending" is very low. Four things routinely clear it.
A dedicated IP you probably shouldn't own — $24.95/mo
A standard SES dedicated IP is $24.95 a month. That is 2.5× your entire sending billat 100K, and it takes your effective rate from $0.10 to $0.35 per 1,000. Managed dedicated IPs are structured differently — $15 a month per account plus $0.02–0.08 per 1,000 — but the shape of the problem is identical.
The deeper issue is that 100,000 a month is about 3,300 a day, and dedicated IP reputation is built and held by consistent daily volume. Thin, spiky volume on a dedicated IP is a deliverability liability rather than an asset, because you own a reputation you don't send enough to maintain. Guidance phrased as "100K+" is generally about volume per day; a monthly figure gets substituted for it surprisingly often. Check which unit you are reading before you buy.
Attachments — $0.12 per GB
SES bills attachment data separately at $0.12 per GB. A 2 MB PDF on every one of 100,000 messages is roughly 200 GB, which is $24 a month — 2.4× what you paid to send the emails themselves. Replacing the attachment with a signed download URL takes that line to zero, shrinks your messages, and removes the single most common reason a transactional message gets held at a gateway. This is the highest-ratio change available to most senders at this volume and it is usually a one-day job.
Plan fees, multiplied by Region — $105 to $2,000/mo
SES Pro is $105 per month per account, per Region. Across four Regions that is $420 a month before a single email is sent — 42× your sending cost. Enterprise across four Regions is $2,000. If you subscribed a Region for a feature you use in one place, check whether the subscription quietly followed you into the others.
Retention you never chose
Event storage is small at this volume — 4.6 GB and $1.00 a month at 90 days — but it is the one line that grows without anyone deciding it should. Indefinite retention at 100K a month is roughly 24× a month's data before it stabilizes. Set a TTL deliberately. $1.00 is not worth optimizing; an unbounded table at 1M a month is.
Step 3: Price the switch honestly
Here is 100,000 emails a month across the providers most transactional senders are actually choosing between, computed from published plan prices and overage rates as verified on July 13, 2026.
| Provider | Plan | 100K / mo |
|---|---|---|
| AWS SES, à la carte | Pay per email | $10.00 |
| AWS SES, Essentials | AWS default for new accounts | $16.00 |
| SendGrid | Essentials | $34.95 |
| Resend | Pro | $35.00 |
| Mailgun | Foundation | $75.00 |
| SendGrid | Pro | $89.95 |
| Mailgun | Scale | $90.00 |
| Postmark | Platform, $18 + 90K × $1.20 | $126.00 |
| Postmark | Pro, $16.50 + 90K × $1.30 | $133.50 |
| Postmark | Basic, $15 + 90K × $1.80 | $177.00 |
Two things are worth pulling out of that table. First, the spread between the cheapest and most expensive way to send the same 100,000 emails is 17×, and nothing about the messages changed.
Second, look at the three Postmark rows. At exactly this volume their most expensivebase plan is the cheapest total: Platform at $18 a month with a $1.20 overage comes to $126, while Basic at $15 a month with a $1.80 overage comes to $177. Buying the higher plan saves $51 a month. That inversion is a general property of include-plus-overage pricing, not a Postmark quirk — if your provider prices that way, recompute your own tier at your own volume before you assume you're on the right one.
But at 100K a month, moving to SES saves $25 to $167. That is real money and it is not, on its own, a good reason to migrate email infrastructure. The actual reason is the shape of the curve:
| Volume / mo | À la carte | Essentials | Pro |
|---|---|---|---|
| 100K | $10 | $16 | $127 |
| 500K | $50 | $80 | $215 |
| 1M | $100 | $160 | $325 |
| 5M | $500 | $800 | $1,205 |
À la carte is a straight line at $0.10 per 1,000 forever. Managed providers price in tiers with step changes, and the steps get steeper. If 100K a month is where you are today and 1M is where you'll be in eighteen months, migrate for the 1M number, not the 100K one — and migrate while the volume is small enough that warming and cutover are easy.
The standard advice, priced out
Search this question and you'll get the same four suggestions everywhere. Three of them are good advice for reasons that have nothing to do with cost, and it's worth being precise about which is which.
"Reduce the number of emails you send"
This is routinely called the highest-ROI optimization. The value of deleting an email is exactly your marginal per-email rate, so here is what cutting 30,000 emails a month — a 30% reduction, which is an ambitious engineering project — is worth in each place you might be sending from:
| Where you send | Marginal rate | 30K fewer / mo |
|---|---|---|
| AWS SES, à la carte | $0.10 / 1,000 | $3.00 |
| AWS SES, Essentials | $0.16 / 1,000 | $4.80 |
| Resend, pay-as-you-go | $0.65–0.90 / 1,000 | $19.50–27.00 |
| Postmark Platform overage | $1.20 / 1,000 | $36.00 |
| Mailgun Foundation overage | $1.30 / 1,000 | $39.00 |
| Postmark Basic overage | $1.80 / 1,000 | $54.00 |
An 18× spread on identical work. On SES à la carte, deleting nearly a third of your email volume saves $3.00 a month — you cannot fund a sprint with that. On Postmark's Basic overage it saves $54.00 a month, and the same sprint pays for itself. Multiply before you scope.And if you find duplicate sends, race conditions firing two password resets, or a retry loop with no ceiling, fix them anyway — those are bugs your users can see, which is a much better reason than $3.
"Suppress bounces and complaints immediately"
Do this, but not to save money. A 3% hard bounce rate on 100,000 sends is 3,000 wasted emails, worth $0.30 a month. The reason to run a tight suppression list is that bounce and complaint rates are what get your sending paused, and a paused account costs you every email, not 3% of them. AWS maintains an account-level suppression list at no charge and it is on by default — the work is making sure your own retry logic respects it rather than reintroducing addresses it already dropped.
"Separate transactional from marketing"
Correct, and also not a cost measure — it's a reputation measure. Poor engagement on marketing sends drags the reputation that your password resets depend on. On SES the mechanism is configuration sets and, if volume justifies it, separate subdomains. The cost impact is indirect but large: it is the difference between your receipts landing in the inbox and landing in spam.
"Don't self-host SMTP"
Right, and the arithmetic is blunter than the usual framing. At 100K a month there is no sending cost left to recover — the entire prize is $10. What you would take on to win it is IP warming, bounce and complaint processing, DKIM, SPF and DMARC operations, queueing, retry policy, blacklist monitoring and deliverability triage. That is not a $10-a-month problem at any company.
The order to do this in
1. Audit your SES plan per Region — 10 minutes
One reading per Region. A defaulted account can leave Essentials immediately. Worth $6/mo at 100K, $60/mo at 1M, and it is the only item on this list that is silently wrong by default.
2. Kill the fixed line items — an afternoon
Dedicated IPs you don't have the daily volume to justify. Plan subscriptions in Regions that don't use the feature. These are the largest single numbers on the bill at this volume.
3. Move attachments to signed URLs — a day
$0.12 per GB stops. Messages get smaller, gateways get happier. Best ratio of saving to effort available at 100K.
4. Recompute your provider tier at your real volume
Include-plus-overage pricing regularly makes a more expensive base plan the cheaper total. Do the multiplication rather than assuming the entry tier is the frugal choice.
5. Reduce volume last, and only if the rate justifies it
Multiply emails removed by marginal rate. If the answer is under $10 a month, do the work for user-experience reasons or don't do it — but stop calling it a cost project.
What this costs with Wraps in it
It would be a strange post to argue that hidden line items are the problem and then hide ours. Wraps deploys the SES pipeline priced above into your AWS account — the $12.50 lands on your bill, from AWS, with no markup from us. What we charge for is the platform on top: the dashboard, templates, workflows, broadcasts and segments.
The Free tier includes the CLI and the TypeScript SDK with 5,000 tracked events a month, so a 100K-a-month sender who wants infrastructure and nothing else pays us nothing. If you want the full send history in the dashboard, 100,000 emails generates enough tracked events to need Starter at $19 or Growth at $79, depending on how many event types you record.
Which means the honest full-stack number at 100K a month is $12.50 to AWS plus $0–79 to us — and worth comparing against the $35–177 in the provider table, with the difference that the AWS half of it keeps costing $0.10 per 1,000 at 10M.
Continue reading
AWS SES Pricing Plans: What Actually Changed
The full detail on the four billing modes and the default
SES Cost Calculator
Your volume, your plan, your Regions, priced line by line
SES Production Architecture
The event pipeline the $12.50 above is paying for
AWS SES, Simplified
What SES gives you and what you still have to build
Price your own 100K
Put in your volume, your SES plan and your Regions, and get the whole bill line by line — sending, event pipeline, storage, all of it billed to your own AWS account.

