Foundation

Transactional Email

Send the emails your app triggers — sign-up confirmations, password resets, receipts — and make sure they arrive.

Ask your AI about this, with this page as the source:ChatGPT ↗Claude ↗Perplexity ↗

The real choice

Transactional or marketing. Transactional services send one message the moment your app triggers it (a password reset, a receipt). Marketing/lifecycle tools send sequences and campaigns to lists. Most apps need the first on day one and the second later.

Pick by situation

Tap the ones that are you — the tools that fit light up below.
  • You write React or TypeScript and want email templates as components in the same codebaseResend
  • Your login codes and password resets must arrive within secondsPostmark
  • Your app also needs to receive and parse email that users send to itMailgun
  • You send at high volume and cost per email matters mostAmazon SES

The contenders

Grouped by the side of the choice they answer, not ranked. Open a row for when to use it, the trade-off and what makers say.

ToolBest for
Transactional API3
Resendapi · free tierA modern developer API with email templates written as React components.944+54 open source$20Pro 50k9.4M/wk4.1× vs npm

Use it whenYou're setting up sign-up and reset emails in a TypeScript app and want templates to live next to your UI code.

Trade-offA younger service than Postmark or SES, and costlier than SES at very high volume.

llms.txtIn Bolt, Lovable, Replit

Used by Actx0, Agentcard, Airbook AI, Anything, Apex and 939 more · in 54 open-source projects.

SendGrid and Mailgun still work but feel like 2015. Resend has the cleanest API and React-based email templates, so all my transactional mail took an afternoon instead of a sprint.
VC Boom, the makerSep 2026 ↗
Postmarkservice · free tierDeliverability when the mail has to arrive within seconds.615+5 open source$55Basic 50k1M/wk−8% vs npm

Use it whenLogin codes and password resets are arriving late or in spam with your current sender.

Trade-offStrict about transactional-only sending — marketing email goes through a separate stream — and the free developer plan is small.

llms.txt

Used by Agiled, AskReferral, BlogBowl, Bluedot, Buttondown and 610 more · in 5 open-source projects.

We use Postmark not only for our emails, but also to power Ply's built-in dynamic email capabilities. It's reliable, well documented and most of all - comes with awesome human support.
Ply, the makerSep 2026 ↗
Mailgunservice · free tierHigh volume and inbound email parsing and routing.49+11 open source$35Foundation 50k1.1M/wk−23% vs npm

Use it whenUsers need to reply to or email into your app, and you need to route and parse those messages.

Trade-offIts dashboard and API are older and busier than newer services, and the free tier is small.

In Lovable

Used by Amploo, Baboo Travel, browser extension, ByteStand, crtrdg and 44 more · in 11 open-source projects.

Common integrations include: ● Payment: Stripe , Paypal ● Newsletter Sending: Mailgun ● CRM: Salesforce ● Analytics: Google Analytics and Tag Manager ● Videos: YouTube, Vimeo…
Tendenci, the makerApr 2022 ↗
Raw infrastructure1
Amazon SESserviceSending at high volume, where cost per email matters more than tooling.4+32 open source$5.00À la carte3.6M/wk−15% vs npm

Use it whenYou already run on AWS, or your email volume makes per-message price the main cost.

Trade-offBare-bones; you build templates, bounce handling and tooling yourself.

Used by BetterPic, Chat Data, Scrapingdog, UptimeRobot · in 32 open-source projects.

Transactional + marketing1
SendGridserviceOne vendor for both jobs at large scale.1061+26 open source$20Essentials 50k4.5M/wk−33% vs npm

Use it whenYou want transactional and marketing sending under one account and one dashboard.

Trade-offHeavier than a small team needs.

llms.txtIn Replit

Used by ADYOUNEED, ASO, Assembly, BasedLabs.ai, Bricks and 1056 more · in 26 open-source projects.

…downside is that it’s much harder to implement than you might think! We’ve since moved to Sendgrid for delivery, which takes a lot of pain out of the process but it is expensive.…
Scirra Ltd, the makerSep 2021 ↗

Cost: the cheapest plan that fits emails 50k emails, from list prices. Try your own numbers →

Cost as you grow

Each contender's cheapest usable plan as usage rises.

$0$200$1,000$2,000$5,0001k5k10k25k50k100k250k500k1M5M
SendGridAmazon SESMailgunPostmarkResendx: emails per month (email) · cheapest usable plan at each point, list prices · try your own numbers

Who switches to what

Public pull requests on GitHub since Oct 2024 whose title says "X to Y" — real code changes, by developers in general rather than makers only. Pick a flow to see its pull requests.

SendGrid → Resend: 60 pull requestsResend → SendGrid: 17 pull requestsAmazon SES → Resend: 16 pull requestsResend → Amazon SES: 15 pull requestsSendGrid → Amazon SES: 12 pull requestsSendGrid → Mailgun: 11 pull requestsResend → Postmark: 6 pull requestsSendGrid → Postmark: 6 pull requestsSendGrid 89Resend 38Amazon SES 16Resend 76Amazon SES 27SendGrid 17Postmark 12Mailgun 11Moving fromMoving to
SendGrid → Resend60 PRs · Compare →

Before you choose

How to approach it

Send from a subdomain (mail.yourapp.com), set up SPF, DKIM and DMARC before launch, and keep marketing mail on a separate stream so a campaign can't hurt your password resets.

Common mistakes
  • Sending without SPF, DKIM and DMARC set up, so password resets land in spam or get rejected by Gmail and Yahoo.
  • Sending campaigns through the same stream and domain as transactional mail, so spam complaints about a newsletter hurt delivery of your password resets.
  • Sending email inline in the request, so a slow or failing provider breaks sign-up; queue it and retry instead.

Other options

Real choices most makers here won't need to weigh.

Decided alongside

What the 1,886 makers' products here chose for their other decisions.