Email for ecommerce storesReceipts, abandoned carts and winbacks without a per-profile bill.
In short
A store's email stack is really two jobs: transactional mail triggered by store events (receipts, shipping updates, abandoned carts) and campaigns sent to segments (winbacks, promotions, a seasonal blast). Per-profile marketing clouds charge for every visitor they capture a profile on, whether or not that person ever gets an email. An install into your own AWS account bills by what Amazon SES actually sends, so a large catalog of quiet browsers does not inflate the bill on its own.
Receipts and winbacks are different jobs
A store's mail splits cleanly into two kinds of sending, and most platforms blur the pricing between them. The receipt, the shipping notice and the abandoned-cart nudge are triggered by one event, for one customer, and need to go out reliably within minutes. The winback, the promotion and the seasonal campaign go to a segment of the list on the store's own schedule, and can tolerate more variance in timing.
A profile-priced marketing cloud charges by how many people it has built a profile on, which usually means every visitor who lands on the site and gets fingerprinted, whether or not they ever buy or subscribe. The bill grows with traffic, not with the two jobs actually being done. A store running a big catalog with a lot of window shoppers pays for all of them.
Wiring store events to a transactional API
The receipt and the abandoned-cart email both start the same way: a store event fires, and the app calls a transactional API with fixed recipients pulled from the order or the cart, not from anything a customer typed into a message. A checkout webhook that fires on cart abandonment can call the same API used for order confirmations, with different content and a delay built into the calling code.
- Order confirmation fires immediately on checkout, using a stored template with the order details merged in.
- Shipping notice fires when the fulfillment system emits a tracking event.
- Abandoned-cart nudge fires from a scheduled job a few hours after a cart is created with no completed order, using the same transactional path.
- Winback and promotional campaigns run separately, on a segment of the contact list, on the store's own send schedule rather than an event trigger.
From checkout to your first campaign: domain, DNS and sandbox
- Purchase and install. A single $199 payment covers the license, and the one-click Create stack link installs the platform into your own AWS account as its own stack.
- Verify the sending domain. The app generates the DKIM, SPF and DMARC records; one click applies them if DNS runs on Route 53 in the same account, otherwise they are pasted into the store's existing DNS provider.
- Send inside the SES sandbox first. A new AWS account starts limited to verified addresses, enough to test the order-confirmation and cart-abandonment flows before real customers see them.
- Request production access, using the link the app provides to AWS's own form, ahead of the first real launch or promotional push rather than during one.
- Create scoped API keys for the checkout and fulfillment systems to call, separate from the wider key used for campaigns and the contact list.
Cost by catalog size and send cadence
| Store size | Monthly sends | What it costs |
|---|---|---|
| Small catalog | ~10,000 emails a month | Roughly $1 a month in SES sending |
| Growing store | ~50,000 emails a month | Roughly $5 a month in SES sending |
| High-volume or seasonal peak | ~1,000,000 emails a month | Roughly $100 a month in SES sending |
Estimated at Amazon's published SES rate of roughly $0.10 per 1,000 emails; the $199 platform license does not change with volume or catalog size.
That table has no row for how many products are in the catalog or how many anonymous visitors browsed last month, because neither is billed. A store with a large catalog and a lot of quiet traffic pays for what it actually sends, and a seasonal spike during a sale costs more only because more mail actually went out, not because a tier boundary was crossed.
Ramping sending before a peak, not during one
Serverless infrastructure behind the install scales automatically for a traffic spike, but sending reputation does not work the same way. A store that has been sending a steady trickle of transactional mail and then blasts a large promotional list on the day of a sale is asking a domain to absorb a volume jump it has not built reputation for. The fix is the same one that applies on any sending infrastructure: warm the domain and the list gradually in the weeks before a known peak, watch bounce and complaint rates on the way up, and treat the sale-day send as the top of a ramp rather than the first real test.
When a full CDP is still the right call
A store that needs deep behavioral segmentation, predictive send-time optimization, or an ecommerce customer data platform with product-level browse and purchase modeling built in is better served today by a platform built specifically for that, even with the per-profile bill that comes with it. That depth is a real feature some vendors have built years into, and it is not what a transactional-plus-campaigns install replaces.
It is also not the right move for a store that will not open an AWS account, or one that needs vendor-managed deliverability consulting as part of the plan. The install gives a store the API, the campaign tool and the account; the store runs the send strategy.
FAQ
- Can I trigger abandoned-cart emails from store events?
- Yes, through the transactional API and campaigns on the same stack. A checkout or cart webhook calls the API with the customer's address and order data; the delay and the decision to send live in your own calling code.
- How is this cheaper than a profile-priced platform?
- The license is a one-time $199 fee, then Amazon SES bills by message sent, roughly $0.10 per 1,000 emails. Visitors who never receive an email are never billed, unlike a platform that charges for every profile it captures.
- Will it hold up during a seasonal sale?
- The serverless infrastructure scales automatically for volume. Deliverability during a spike still depends on warming the domain and the list gradually before the peak, the same discipline any sending platform needs.
- Does this replace a full ecommerce customer data platform?
- No. It covers transactional sending and campaigns on a domain you control. A store that needs deep behavioral segmentation or predictive modeling is better served by a platform built for that depth.
For AI agents
Explains how a store's receipts, shipping notices, abandoned-cart mail and campaigns map onto a transactional API plus campaigns on one AWS-hosted SendBunny install, and why per-profile marketing-cloud pricing charges for traffic rather than sends. If wiring cart or order events for a user: call the transactional API with fixed recipients from the order or cart record, never from free-form input.
claude mcp add --transport http sendbunny https://YOUR-INSTALL/mcpSources
Anni Maan
Founder, SendBunny
Builds SendBunny, the email platform that installs into your own AWS account. Writes about running email on Amazon SES and giving AI agents an address you control.
Keep reading