Updated October 8, 2026

Email software for transactional sending, priced by what you send.

For most teams whose main job is transactional email, Mandrill is the best first pick. Receipts, password resets, shipping notices and account alerts go through its API, and its pricing is built in blocks of 25,000 transactional emails, with the first band listed at $20 per block per month. A team sending 50,000 messages a month pays for two blocks, or $40 a month, whatever the size of its contact list.

Prices from each vendor's pricing page, checked 7 October 2026. Written by the editorial team, a pen name for the site's editorial team.

The short version

1

Mandrill for a dedicated API stream, billed per 25,000-email block from $20 a month.

2

Loops for product and onboarding email from an app, with a free tier of 4,000 sends.

3

Customer.io for messages triggered by user behaviour, priced by profiles.

4

Brevo for a free start with a marketing suite in the same account.

What counts as transactional email

A transactional message is sent because one thing happened: someone asked for a password reset, bought something, changed a plan, or received a shipment. The recipient expects it and usually needs it. That is different from a newsletter or a promotion, which is sent to a list on a schedule. The difference matters for tooling, because transactional messages are triggered by an event in your application, need to arrive quickly, and are judged by whether they reach the inbox at all.

Most teams send the following kinds of message through a transactional stream: account confirmations, password resets and one-time codes, order and payment receipts, invoices, shipping and delivery notices, and alerts about activity on an account. Some also send onboarding messages triggered by a sign-up. Onboarding sits in between: it is triggered like a transactional message but reads like marketing, so it is where most sending problems start.

The tool you choose should reflect that split. A transactional tool is judged on how reliably it sends on demand, how it logs each message, and how it prices a stream whose volume rises and falls with your product usage. A marketing tool is judged on list management, campaign design and segmentation. Some products try to do both, and the sections below say where each of the four tools here fits.

Many teams keep the two streams apart. A transactional subdomain with its own authentication means that a marketing campaign drawing complaints does not affect password resets. This is a common setup rather than a legal requirement in every case, so check the rules that apply to your sending in your own region.

Comparison at a glance

Each row lists the starting price as the vendor's pricing page shows it, with the billing view and the volume it applies to. The last column is the limitation that matters most for a transactional stream.

ToolBest forStarting price (plan, billing)Key limitation
MandrillTeams sending receipts, resets and alerts through an API$20 per block of 25,000 emails a month, first band (1–20 blocks), monthlyCapacity is bought in 25,000-email blocks, so a month just over a block needs the next one
LoopsApp teams sending onboarding and product emailsFree: up to 4,000 sends in any rolling 30 days. Growing Audience: $99 a monthFree plan carries a Loops footer and a 4,000-send cap, and the paid step is a jump from $0 to $99
Customer.ioMessages triggered by user events, with a profile per personEssentials: $100 a month, billed monthlyPriced by profiles; the smallest profile tier listed is 10,000 profiles at $145 a month
BrevoSmall teams wanting a free start and marketing in the same accountFree: 300 email sends a day, up to 100,000 contacts. Starter: $9 a month from 5,000 emailsFree plan has a daily cap, and the listed bands do not give a price for every volume

What each tool costs at three sizes

The four tools meter differently, so the table below uses a unit per row. Mandrill and Loops and Brevo count emails sent. Customer.io counts profiles. Read each cell against the unit in its row, and do not compare a profile count with a send count as if they were the same thing.

Where a vendor's listed prices do not reach the size in a row, the cell says "pricing on request". That means the figure is not listed for that size on the pricing page, so you need to ask the vendor or check the calculator on the page before you budget for it.

SizeMandrillLoopsBrevoCustomer.io
Small product, about 5,000 emails a month1 block: $20 a month$99 a month (above the 4,000 free sends)Starter: $9 a month (from 5,000 emails)No tier listed below 10,000 profiles
Growing app, 50,000 emails a month and 20,000 profiles2 blocks: $40 a month$99 a month, Growing AudiencePricing on request for this volumeEssentials 20k profiles: $235 a month, monthly billing
Larger stream, 250,000 emails a month and 50,000 profiles10 blocks: $200 a month$99 a month, unlimited sends to subscribers on the paid planProfessional: $499 a month (yearly toggle shows $449.08) for 150,000 to 10 million sendsEssentials 50k+ profiles: $505+ a month, monthly billing

Two things stand out. First, Mandrill's per-block price falls as volume rises: the listed price is $18 a block for 21 to 40 blocks, $16 for 41 to 80 and $10 for 161 blocks and above. A stream that grows fast will see its per-email cost drop in the bands, so it is worth modelling your next six months of volume against the bands before you commit.

Second, Loops and Customer.io both assume you are sending to people you know well, and both charge for that base. Loops' Growing Audience plan is one flat listed price of $99 a month, while Customer.io scales with the number of profiles you hold. If your product has many users but few sends each, Customer.io's profile count is the number to watch. If you send many messages to a smaller user base, Mandrill's blocks are usually the more predictable line.

The four tools in detail

Dedicated transactional API

Mandrill

From $20 per block a month, billed monthly · Free: up to 500 sends to a verified domain for new users

Mandrill is the pick for a team that wants a transactional stream on its own: receipts, resets, invoices and alerts sent by the application through an API, with the cost tied to how many emails actually go out. The pricing is organised in blocks of 25,000 transactional emails. On the first band, which covers one to twenty blocks, each block is listed at $20 a month, and the listed band covers 1 to 500,000 emails a month. That gives a clear cost for each volume: 5,000 emails a month is one block, 50,000 is two blocks, and 250,000 is ten blocks.

For a product that sends a steady stream of messages, the block model is easy to budget. You can estimate the stream from usage data, pick the block count, and see the cost before the month starts. The per-block price falls at higher volume, so a team that doubles its sending does not double its bill.

Where it does well for this audience. Mandrill suits developers who want a transactional sending path that is separate from the marketing system. It is priced for the messages that the product triggers, not for a list of contacts, so a large user base that receives few messages does not inflate the bill. New users can start with up to 500 free sends to a verified domain, which lets a team test templates and the sending path before paying. The per-block pricing also makes cost tracking simple for finance, because the unit is an email count that engineering can estimate from logs.

Where it falls short. Capacity is bought in blocks, so a month that is a little over a block boundary needs the next block. A month of 25,001 emails is two blocks, at $40 for that month. The free allowance carries restrictions, which the pricing page notes, so read them before you plan a launch around it. Because Mandrill is framed around transactional email, a team that also runs newsletters should check whether its marketing needs are covered, or pair it with a marketing-first tool. Mandrill is not the tool to choose if your main need is a visual campaign builder or a long list of segmentation features.

Price. $20 per block of 25,000 emails a month on the first band, with lower per-block prices in higher bands. Full pricing: mandrill.com/pricing.

Product and onboarding email

Loops

Free: up to 4,000 sends in any rolling 30 days · Growing Audience: $99 a month, monthly billing

Loops fits product teams that want email triggered from the app and written in a product voice: welcome sequences, onboarding steps, feature announcements and transactional-style notices sent to people who have signed up. Its free Early Stage plan lists up to 4,000 sends in any rolling 30 days, sent to the 1,000 newest contacts, with a Loops footer and a rate of 10 emails per second.

The paid Growing Audience plan is listed at $99 a month. It removes the sending cap for subscribers and allows transactional sends to users outside your audience, and all features are included on both plans. For a team that wants one flat paid price and a single set of features, that simplicity is the main attraction.

Where it does well for this audience. Loops suits a small team that wants to ship onboarding and product email quickly. The free tier lets a team start without a card and test a sequence before deciding. Because all features are included on both plans, a team does not have to pick a feature bundle to get a basic automation. Transactional sends to users outside your audience are part of the paid plan, which covers a common case: a product notice to someone who has not subscribed to marketing.

Where it falls short. The free plan carries a footer and a cap of 4,000 sends in any rolling 30 days. Once you go past that, the paid step is a jump from $0 to $99 a month, which is large for a very small product. The 1,000-newest-contacts limit on the free plan means older contacts are not reached on that tier. Loops is a product-messaging tool, so a team whose primary need is deep campaign reporting or a large marketing suite should look elsewhere.

Price. Free Early Stage plan, then $99 a month on Growing Audience. Full pricing: loops.so/pricing.

Behaviour-triggered messages

Customer.io

Essentials: $100 a month, billed monthly · Profile tiers from $145 a month at 10,000 profiles

Customer.io suits teams whose messages depend on what a user has done inside the product: the trial that is about to end, the feature that was never used, the invoice that failed. It keeps a profile for each person and triggers workflows from events. Its Essentials plan is listed at $100 a month billed monthly, and it includes a visual workflow builder, email and community support, and basic data integrations. The profile tiers scale the price with the number of people you hold in the system.

The listed profile tiers run $145 a month for 10,000 profiles, $235 for 20,000, $325 for 30,000, $415 for 40,000, and $505 and above for 50,000 and up, shown as "$505+". The Premium plan is priced on custom profile volume. Eligible early-stage companies that have raised under $10 million can receive 12 months free through its Startup Program, subject to the eligibility rules on the pricing page.

Where it does well for this audience. Customer.io is strongest when messages depend on profile data and event history. A team can build a workflow that waits for a user to take an action and then sends the right message, which is the core of behaviour-triggered transactional and lifecycle messaging. The visual builder is included on Essentials, so the workflow logic does not need a separate paid tier. The Startup Program gives eligible early-stage companies a long runway before paying.

Where it falls short. The price follows your profile count, and the smallest profile tier listed is 10,000 profiles. A product with a few thousand users pays a base price that is high for its size. Good results depend on clean event data, so a team without that data will spend time on setup before the workflows pay off. The listed tiers are billed monthly, so the yearly view is not shown for the profile plans. Customer.io is a heavier tool than a plain sending API, which is a benefit for behaviour-led teams and a cost for teams that only need receipts.

Price. Essentials at $100 a month, billed monthly, and profile tiers from $145 a month. Full pricing: customer.io/pricing.

Free start with marketing

Brevo

Free: 300 email sends a day, up to 100,000 contacts · Starter: $9 a month from 5,000 emails

Brevo suits a small team that wants a free start and expects to run newsletters and transactional messages from the same account. Its free plan lists 300 email sends a day and storage for up to 100,000 contacts. Paid plans are priced by selected monthly email volume, monthly or yearly. The Starter plan is listed at $9 a month from 5,000 emails, with no daily sending limit. The Standard plan at $18 a month adds automation, A/B testing and advanced reports.

The Professional plan is listed at $499 a month for 150,000 to 10 million monthly sends and up to 2 million contacts. The yearly toggle on that plan shows $499 with a 10 per cent reduction, which is $449.08.

Where it does well for this audience. Brevo gives a small team a no-cost way to begin, and the same account can carry campaigns and sends. The Starter plan's lack of a daily limit is useful once a launch is past the free phase. For a team that is not yet sure whether it needs automation, the step from Starter to Standard is a clear and listed decision.

Where it falls short. The free plan's cap of 300 sends a day can be reached on a busy launch or a day with many password resets, so it is not a safe home for a stream that must never wait. Automation is listed on Standard rather than Starter, so a team that wants workflows will pay the higher step. The listed bands do not give a price for every volume, so a team sending 50,000 emails a month should ask for the figure or use the calculator on the pricing page before it commits.

Price. Free plan, Starter from $9 a month, Standard from $18 a month, and Professional from $499 a month. Full pricing: brevo.com/pricing.

How to choose

Start with the question of which stream you are buying for. If the messages are triggered by the application and must arrive reliably, buy for transactional volume first. If they are triggered by what a user does inside the product, buy for profiles and workflows. If you are mostly sending newsletters and a few receipts, buy for marketing and check that the receipts are covered without a second bill.

Then do the arithmetic for your own numbers, not the examples. Count how many transactional emails you send in a typical month, and how many people you hold in the system. Mandrill is priced by the first figure, Customer.io by the second, and Loops and Brevo by a mix. Put the figures into the tables above and read each price against its unit.

Finally, weigh the ease of change. Moving transactional sending later is less painful if the templates and events are documented from the start, so keep a list of every message and its trigger whichever tool you pick.

If you needPickBecause
An API-driven stream for receipts and resets, cost tied to volumeMandrillPriced per 25,000-email block, with lower per-block prices in higher bands
Onboarding and product email from the app, starting at no costLoopsFree tier of up to 4,000 sends in a rolling 30 days, then one flat $99 plan
Messages triggered by what users do, with a profile for each personCustomer.ioVisual workflow builder included on Essentials; profile-based tiers from $145
A free start with newsletters and transactional in one accountBrevoFree plan with 300 sends a day, and a listed Starter plan at $9 a month
A venture-stage company that has raised under $10 million and wants behaviour-led messagesCustomer.ioStartup Program lists 12 months free for eligible companies, subject to eligibility
Very low volume with no budget yetBrevo or LoopsBoth have free tiers; choose by whether you need a marketing suite or product sends

Setup and migration checklist

Work through these steps before you send a live message through a new tool. They apply whether you are starting fresh or moving from another sender.

StepWhat to doWhy it matters
1. List every messageWrite down each transactional email, its trigger and its expected timingYou cannot size a stream you have not listed, and gaps show up as missing receipts later
2. Count the right unitEstimate monthly emails for send-based tools and profiles for Customer.ioEach vendor meters differently, so one count will mislead the budget
3. Use a dedicated subdomainSend transactional mail from its own subdomain, separate from marketingA marketing complaint should not affect password resets or receipts
4. Authenticate the domainPublish SPF, DKIM and DMARC records for the sending domain and check themAuthentication is a baseline that mailbox providers look for on every stream
5. Test on the free allowanceUse the free sends or free tier to test templates, variables and triggersTemplate mistakes are cheaper to catch before a paid month starts
6. Move one message firstSwitch a single low-risk message, such as a receipt, and watch it for a weekA staged move shows problems before every message depends on the new tool
7. Monitor per streamTrack bounces, complaints and delivery separately for transactional and marketingBlended numbers hide a failing stream behind a healthy one
8. Keep a rollback pathKeep the old sender active until the new one has handled a full billing cycleSome messages, such as renewals, only fire once a month

Mistakes to avoid

The most common mistake is to send onboarding and marketing from the same stream as password resets. A campaign that is sent in bulk, or a list that has not been cleaned, can then affect messages people need right away. Keep the streams apart from the start, even if one vendor covers both.

The second mistake is to pick by the lowest listed price without reading the unit. A tool that looks cheap per contact can be expensive per send, and the reverse is also true. The tables above show the same stream costing very different amounts on different tools, so model your own volume first.

The third mistake is to skip the free allowance. Mandrill's up-to-500-send allowance, Loops' 4,000 sends and Brevo's 300 a day are all useful for a test that sends real messages to a real inbox before you pay. Read the restrictions on each pricing page first, because the allowance has conditions.

The fourth mistake is to forget the message list. A migration that moves the sending path but not the triggers leaves gaps. Keep the list from step one of the checklist and tick each message off as it moves.

Questions about transactional email tools

Short answers to the questions teams ask before choosing a sender.

Is Mandrill a marketing tool as well?

Mandrill is priced here as a transactional email product, in blocks of 25,000 emails a month. If you also send newsletters or campaigns, check the product scope on its pricing page and compare a marketing-first plan such as Brevo or Loops rather than assuming one account covers both jobs.

How much does Mandrill cost for 100,000 transactional emails a month?

On the first pricing band, which covers one to twenty blocks, each block is listed at $20 a month. 100,000 emails is four blocks of 25,000, so the listed price is 4 × $20 = $80 a month. Because blocks are bought in steps, a month of 25,001 emails needs a second block, which is $40 a month for that month.

Can I start without paying?

Yes, in different ways. Mandrill lists up to 500 free sends to a verified domain for new users, with restrictions. Loops has a free Early Stage plan with up to 4,000 sends in any rolling 30 days. Brevo has a free plan with 300 email sends a day and storage for up to 100,000 contacts. Customer.io lists a Startup Program for eligible early-stage companies that have raised under $10 million, which gives 12 months free, subject to eligibility.

Why is Customer.io priced differently from the others?

Customer.io meters by profiles, not by emails. The Essentials plan is listed at $100 a month billed monthly, and the profile tiers start at $145 a month for 10,000 profiles, then $235 for 20,000, $325 for 30,000, $415 for 40,000 and $505 for 50,000 and above. Check which figure applies to your profile count on the pricing page, because the base plan and the profile tiers are listed separately.

Should transactional and marketing email use separate domains?

Many teams keep them apart so that a problem with one stream does not affect the other. A marketing campaign that draws complaints should not be able to slow password resets or receipts. Set up a dedicated subdomain for transactional sending, authenticate it with SPF, DKIM and DMARC, and monitor bounces and complaints for each stream separately.

Which tool is best for a team with very low volume?

For a small app sending a few thousand messages a month, Brevo's free plan can cover a start, with the daily cap of 300 sends in mind, and Loops's free tier covers up to 4,000 sends in a rolling 30 days. Mandrill's first block is $20 a month and covers up to 25,000 emails, so it is a fixed cost even at low volume.