landing · amazon ses cost

How should a product team evaluate Amazon SES cost?

Evaluate Amazon SES cost as a workload model, not a single per-email rate. Count outbound recipients by region, attachment data, inbound processing, dedicated IPs, deliverability features, validation, multi-region routing, storage, events, monitoring, and engineering operations. Then compare the current SES pricing plans with à-la-carte billing for the same feature set. Use actual message sizes and traffic peaks, not only monthly averages. Also separate provider acceptance, receiving-server delivery, and inbox placement because paying for a send does not establish its final outcome.

Start by identifying the account's pricing model

Amazon SES no longer has only one pricing path. AWS introduced Essentials, Pro, and Enterprise plans on July 21, 2026 while retaining à-la-carte pricing. AWS says new SES accounts and account-region combinations with no metered SES activity since June 1, 2025 start on Essentials, with the option to upgrade or switch to à-la-carte. Existing account history and selected region can therefore change the starting point. Before making a spreadsheet, open the SES pricing-plan section for each production account and region, record the active model, and capture the date. Do not infer billing from an old blog post, another team's account, or a rate quoted without its included features. SES prices, plan eligibility, regional availability, and AWS Free Tier rules can change, so treat the official pricing page and the account's billing data as the source of truth at purchase time.

Build a complete cost equation

A useful monthly estimate starts with outbound recipients, not only API requests or message objects. Add billable outgoing data, especially attachments, then inbound messages and incoming data chunks if SES receiving is used. Add the selected plan's fixed charge, any volume tiers, and separately priced capabilities such as dedicated IPs, Global Endpoints, email validation, tenant features, Virtual Deliverability Manager options, Mail Manager endpoints, archiving, or security add-ons. Then include dependent AWS services: compute for the sender, queues, event destinations, logs and metrics, storage, encryption keys, data transfer, backups, and support. Finally, add engineering and operations: domain onboarding, IAM design, quota management, event processing, bounce and complaint handling, incident response, deliverability review, multi-region testing, and provider migration. The invoice formula and the total cost of operating application email are related but different numbers.

Compare plans and à-la-carte on identical features

AWS lists plan rates for the first 10 million monthly emails at $0.16 per 1,000 for Essentials, $0.22 for Pro, and $0.23 for Enterprise. Pro also lists a $105 fixed charge per account per region per month, and Enterprise lists $500. Lower marginal rates apply to higher volume tiers. Plans bundle different deliverability, validation, dedicated-IP, global, tenant, and Mail Manager capabilities, so the headline rates are not interchangeable. The à-la-carte table lists outbound email at $0.10 per 1,000 recipients plus $0.12 per GB of attachment data, with optional features charged separately. Compare scenarios using the same regions, volume distribution, attachments, inbound work, and features. A plan with a higher send rate can cost less than reconstructing its included capabilities individually, while a simple transactional workload may not need those capabilities. Use marginal tier calculations rather than applying the final tier to all volume.

Count recipients, regions, and data correctly

SES sending quotas and outbound accounting are recipient-oriented. A single message addressed to ten recipients consumes ten units of sending quota, and AWS recommends separate API calls per recipient because one invalid address can reject a multi-recipient call. Model To, Cc, and Bcc destinations rather than only rows in an application outbox. Split the forecast by AWS Region because identities, quotas, event configuration, plan charges, and some features are regional. For attachment-heavy mail, measure encoded production messages; MIME base64 expansion means the transmitted size is larger than the original binary file. AWS notes that an attached 5 MB file can become about 6.85 MB after encoding. Include seasonal peaks, retries before acceptance, mailbox-simulator tests when billed, and multi-region failover traffic. Do not double-count provider retries that occur after SES accepted responsibility, but do count a new application send request when billing rules treat it as another outbound recipient.

Price optional infrastructure deliberately

Dedicated IPs are not a universal requirement. SES shared addresses are included in standard sending prices and suit many low-volume or variable workloads. Standard dedicated IPs add a monthly fee per leased address and require the sender to warm and manage them. Managed dedicated IPs add a fixed account charge and usage pricing while SES handles adaptive warmup and scaling. AWS lists standard dedicated IPs at $24.95 per IP per month and managed dedicated IPs from $15 per account per month plus volume-based message fees. Other à-la-carte examples include Global Endpoints at $0.03 per 1,000 emails beyond base sending, email validation charges, and Virtual Deliverability Manager fees. Choose each item for an explicit operational requirement such as stable allowlisted IPs, reputation isolation, multi-region routing, or diagnostics. Adding infrastructure without sufficient volume or ownership can increase cost and complexity without resolving domain, consent, or content problems.

Include receiving and event-observability charges

Inbound SES and Mail Manager workloads have different units from outbound sending. The current à-la-carte table lists inbound email at $0.10 per 1,000 emails plus $0.09 per 1,000 complete incoming chunks of 256 KB. Mail Manager processing, ingress endpoints, archiving, security add-ons, and extra recipients can add separate fees. Storage in Amazon S3, notifications through Amazon SNS, event routing, CloudWatch dashboards, logs, and data retention can also appear on other AWS service lines. Outbound observability should be budgeted even when event publishing itself is not the largest charge. SES can publish send, delivery, bounce, complaint, reject, render-failure, delay, open, and click events through configured AWS destinations. A production service needs secure ingestion, deduplication, recipient suppression, retention limits, and operational alerts. Price the event volume, storage duration, query patterns, and on-call ownership, not just the message transfer.

Treat quotas and sandbox status as capacity constraints

A low unit price is irrelevant if the account cannot legally and operationally carry the workload. SES sending quotas are separate by AWS account and Region and are based on recipients. AWS documents a sandbox default of 200 emails per rolling 24 hours and one email per second; sandbox accounts also have recipient restrictions. Production limits vary by use case and can be increased through AWS. Model normal throughput, burst rate, campaign isolation, retry traffic, and full failover load, then obtain appropriate production access and quotas before launch. Do not multiply sandbox defaults into a cost estimate as though they were a purchasable plan. Build backpressure for throttling and monitor the actual maximum send rate and remaining daily allowance. When using multiple Regions, verify identities, configuration sets, quotas, and event destinations in each one. Capacity review is part of cost because rushed quota work, dropped jobs, or an untested failover can create support and engineering expense far beyond the transport charge.

Separate charged sends from delivery outcomes

SES billing and delivery state answer different questions. A successful send request means SES accepted the request and will attempt delivery, subject to suppression and later processing. A delivery event means SES reports that the recipient's mail server accepted the message. A bounce, complaint, rejection, render failure, or delay event describes a different outcome. Inbox placement happens after receiving-server acceptance and is controlled by recipient-side filtering and policy. Do not estimate value by multiplying paid sends by an assumed inbox rate, and do not label every accepted request as delivered. Build a cost dashboard beside an outcome dashboard: billable recipients and data on one side, then accepted, delivered-to-server, bounced, complained, suppressed, and delayed states on the other. Use these views to find waste such as repeated attempts to invalid or suppressed addresses, oversized attachments, unnecessary event retention, or optional features that do not support a defined decision.

Run a reproducible pricing evaluation

Collect at least four weeks of representative data by message class: recipients, message and attachment bytes, regions, hourly peaks, inbound count and size, event count, retention, and support incidents. Forecast a normal month, a peak month, and a regional failover month. For each scenario, calculate Essentials, Pro, Enterprise, and à-la-carte using the official current rates and the same optional capabilities. Add dependent AWS service estimates and named engineering responsibilities. Validate the result against the AWS Pricing Calculator or a controlled billing sample, then set cost alerts and unit metrics such as cost per accepted recipient and cost per receiving-server delivery. Record assumptions, source URLs, account-region plan state, and verification date. Repeat the review when AWS changes pricing, when traffic crosses a tier, when attachments grow, when a dedicated IP is proposed, or when a product adds inbound mail, validation, archiving, tenants, or multi-region routing.

Decide who owns the surrounding application layer

Raw SES charges cover provider infrastructure and the AWS capabilities selected for the account. A product team may still need domain onboarding, application-key controls, tenant boundaries, an outbound record model, inbound-message handling, event ingestion, suppression workflows, and a stable internal sending contract. Compare direct SES with any application-layer alternative using the full operating model, not only SES's per-recipient transport line. The comparison should include required features, engineering time, operational ownership, migration constraints, incident response, and the need for provider-specific AWS controls. No application layer changes SES pricing or recipient filtering, and neither a provider invoice nor an accepted request establishes inbox placement. Direct SES can fit teams that want full AWS ownership and already operate the surrounding layer. A managed application layer can fit teams that value a narrower integration boundary, but its capabilities and price must be verified from its own current deployed contract before comparison.

Frequently asked questions

How much does Amazon SES cost per 1,000 emails?

It depends on the active pricing model, volume tier, recipients, Region, data, and features. On August 21, 2026, AWS listed à-la-carte outbound email at $0.10 per 1,000 recipients, while plan rates and included capabilities differed. Verify the current official page before purchase.

Does one SES email to ten recipients count once?

No. AWS states that sending quotas are based on recipients, so a message addressed to ten destinations counts as ten against quota. Cost models should likewise measure billable recipient destinations according to the active pricing terms rather than only API calls.

Are Amazon SES attachments charged separately?

AWS lists an additional outgoing data charge for attachment data. Measure MIME-encoded production size because base64 encoding increases binary attachment size, and include any dependent data-transfer or storage charges from the surrounding AWS architecture.

Do I need dedicated IPs for Amazon SES?

Not necessarily. Shared addresses fit many low-volume or variable workloads. Dedicated addresses add cost and operational requirements and are most defensible when the team needs stable addresses, sufficient consistent volume, explicit reputation control, or isolation between mail streams.

Is the Amazon SES sandbox a free pricing tier?

No. The sandbox is a sending-access and quota state with recipient restrictions, not a pricing plan. AWS Free Tier credits and SES pricing plans are separate programs with their own eligibility and duration rules.

Does paying for an SES send mean it reached the inbox?

No. A send charge and successful request do not establish the final mailbox folder. Track provider acceptance, receiving-server delivery, bounces, complaints, suppressions, and delays separately, while treating inbox placement as a downstream recipient-system decision.

Sources