Resend is the best transactional email provider for most TypeScript SaaS apps in 2026: $20/month for 50,000 emails, an official Node.js SDK that renders React Email, SMTP for Supabase Auth, and an HTTP API that also runs on Cloudflare Workers. Pick Amazon SES when cost matters most ($10 for 100,000 emails at its à la carte rate) and Postmark when you want transactional-only infrastructure with up to 365 days of message history. Prices below were checked on each provider's own pricing page on 6 November 2026.
Best transactional email provider by use case:
| Use case | Pick | Why |
|---|---|---|
| Best overall for TypeScript SaaS | Resend | $20/month for 50k emails, React Email in the Node SDK, HTTP API and SMTP |
| Best free tier | Resend | 3,000 emails/month (100/day), 3 domains, no branding footer and no contact cap (Loops allows 4,000 sends but adds a footer and caps contacts at 1,000) |
| Cheapest per email | Amazon SES | $0.10 per 1,000 à la carte, $100 for 1M emails; PostShiba's flat $49 plan is cheaper if your peak fits it |
| Best for Cloudflare Workers | Resend today, Cloudflare Email Service once it leaves beta | Both send over HTTP; SMTP libraries need TCP sockets |
| Best for message history and stream separation | Postmark | 45-day history by default, up to 365 days on Pro and Platform |
| Cheaper alternative to Postmark and Mailgun | MailerSend | $68 for 100k and $600 for 1M, versus $115/$775 on Postmark |
| Product and marketing email in one tool | Loops | Unlimited transactional sends on paid plans, priced by contacts |
| Fixed monthly bill, sending from customers' domains | PostShiba (beta) | $15/month for up to 24,000 emails per 24 hours, no overage, per-customer tenants |
| Best open source | useSend | AGPL-3.0, self-hostable on top of your own SES account |
| Hard to recommend for new projects | SendGrid | Free plan retired in May 2025, 3-day activity history on Essentials |
Last updated: 6 November 2026. Disclosure: MakerKit sells SaaS starter kits that ship Nodemailer (SMTP) and Resend mailers. Paid placements on this page are labelled "Sponsored". Sponsors don't influence rankings, scores or verdicts, and no provider paid for its position in the list.
Transactional email is the one-to-one email your application sends in response to something a user did: sign-up verification, password resets, magic links, team invitations, receipts and alerts. It's sent through an API or SMTP relay, and unlike marketing email, users expect it within seconds and can't unsubscribe from it.
If you build on a MakerKit SaaS kit, every web kit (Next.js, TanStack Start, React Router) ships Nodemailer (any SMTP provider) and Resend (HTTP API) behind one MAILER_PROVIDER variable, so any provider on this list with SMTP works without code changes, and HTTP-only APIs plug in as a custom mailer.
How We Evaluated
We read each provider's pricing page, documentation and changelog on 6 November 2026, and computed the monthly cost of sending 10,000, 50,000, 100,000 and 1,000,000 transactional emails on monthly billing with overage enabled. We compared free tiers, HTTP API and SMTP support, the official TypeScript SDK, whether the provider works from edge runtimes, message history retention, and the volume at which a dedicated IP becomes available.
We did not run inbox-placement tests, so this guide doesn't rank providers by deliverability and doesn't repeat their deliverability claims as fact. Every price links to the page it came from.
Two Traps That Break Email in a Real SaaS
Most transactional email failures in a new SaaS come from the setup around the provider, not from the provider. Two cause most of the "emails aren't arriving" reports.
Trap 1: Supabase Auth's built-in email sender. If you use Supabase Auth, your app has two email systems. Supabase sends auth emails (verification, password reset, magic links) through the SMTP settings in the Supabase dashboard. Your app sends everything else (team invites, account deletion, OTP codes) through its own mailer. The built-in Supabase sender allows 2 emails per hour, delivers only to addresses on your project's team, and is "not meant for production use" according to Supabase. Configure custom SMTP in the dashboard before launch. Custom SMTP starts at 30 auth emails per hour, and you can raise that limit in the rate limits settings. Supabase's docs name Resend, Amazon SES, Postmark, SendGrid, ZeptoMail and Brevo as example SMTP providers.
Trap 2: SMTP on Cloudflare Workers. Nodemailer depends on Node.js TCP socket APIs, so MakerKit's Cloudflare deployment guide tells you to switch to Resend's HTTP mailer (MAILER_PROVIDER=resend) before deploying to Workers. The safe rule for Workers: send through an HTTP email API such as Resend's, or Cloudflare's own Email Service binding. See our Next.js hosting guide for the other Cloudflare dependency swaps.
MakerKit's Better Auth kits (Drizzle and Prisma) don't split email the way Supabase does: they ship 14 React Email templates, and every auth email (magic links, verification, password reset, OTP codes) goes through the kit mailer, so one provider and one set of credentials covers everything. The email inventory lists them.
Price Comparison (November 2026)
| Provider | Free tier | 10k/mo | 50k/mo | 100k/mo | 1M/mo |
|---|---|---|---|---|---|
| Resend | 3,000/mo, 100/day | $20 | $20 | $35 | $650 |
| Postmark (Basic) | 100/mo | $15 | $55 | $115 | $775 (1.5M tier) |
| Amazon SES (à la carte) | None for new accounts | $1 | $5 | $10 | $100 |
| MailerSend (Starter/Hobby) | 500/mo | $14.50 | $35 | $68 | $600 |
| Mailgun | 100/day | $15 | $35 | $75 | $700 |
| SendGrid | 60-day trial, 100/day | $19.95 | $19.95 | $34.95 | $799 (1.5M tier) |
| Cloudflare Email Service | 3,000/mo on Workers Paid | $2.45 | $16.45 | $33.95 | $348.95 |
| PostShiba (beta) | 7-day trial | $5-15 | $15 | $15 | $49 |
| useSend (cloud) | 3,000/mo, 100/day | $10 | $20 | $40 | $400 |
| Loops | 4,000 sends/30 days | $49 flat up to 5,000 contacts |
Monthly billing, transactional sends only, cheapest tier that covers the volume. Amazon SES at its à la carte rate; its default Essentials plan costs $0.16 per 1,000. Cloudflare's figures exclude the Workers Paid subscription. Loops prices by subscribed contacts, not by sends. PostShiba prices by peak capacity: the figures assume sends spread evenly (Micro allows 24,000 per 24 hours), so a bursty app needs a bigger cluster. Verified 6 November 2026 against each provider's pricing page, linked in its section below.
At 100,000 emails a month, Resend, SendGrid and Cloudflare Email Service all cost about $35, so price only separates providers at the low and high ends. At 1M, SES costs $100 at its à la carte rate, about a sixth of Resend ($650). PostShiba's flat Small plan ($49) is cheaper still if your sending stays under 40,000 an hour, because it prices peak capacity instead of volume. Postmark is the most expensive at 50k and 100k. Older articles that cite an SES free tier are out of date: new SES accounts lost the 3,000-message free tier on 21 July 2026.
The Providers
1. Resend: Best Overall for TypeScript SaaS
What it is. Resend is an email API built by the team behind React Email. It offers an HTTP API, SMTP, an official Node.js SDK, inbound email, webhooks, batch sends of up to 100 emails, and idempotency keys.
Pricing. Free covers 3,000 emails/month with a 100/day cap, 3 domains and 30 days of history. Pro costs $20/month for 50,000 emails or $35 for 100,000, with overage at $0.90 per 1,000 once you enable pay-as-you-go. Scale starts at $90/month for 100,000 and reaches $650 for 1M. Marketing email is a separate plan billed by contacts ($40/month for 5,000). Verified 6 November 2026 against resend.com/pricing.
Strengths.
- React Email templates render directly through the SDK's
reactoption - Generous free tier: 3,000/month and 3 domains since August 2026
- HTTP API works from Node.js, serverless and edge runtimes
- Documented Supabase SMTP setup
Weaknesses.
- 30-day history on every self-serve plan, including Scale
- Default rate limit of 10 requests per second per team, the same on every plan
- Dedicated IPs ($30/month) only on Scale, and only above 3,000 emails per day
- No SMTP server logs, and no annual billing on self-serve plans
Best for. TypeScript SaaS teams that write their templates in React Email and want one provider for auth email, app email and, later, broadcasts.
Next.js integration notes. npm install resend. The SDK's react option is Node.js only, so on Cloudflare Workers render the template to HTML first and pass html. In a MakerKit kit:
# apps/web/.envMAILER_PROVIDER=resendRESEND_API_KEY=re_your-api-keyEMAIL_SENDER=YourApp <hello@yourapp.com>For Supabase Auth, enter smtp.resend.com, port 465, user resend and your API key as the password in the dashboard's SMTP settings.
2. Postmark: Best for Message History and Stream Separation
What it is. Postmark is a transactional-first email service that keeps transactional and broadcast email on separate sending infrastructure through "message streams."
Pricing. The Developer plan is free for 100 emails/month and never expires. Basic is $15/month for 10,000 emails ($1.80 per extra 1,000), $55 for 50,000 and $775 at the 1.5M tier. Pro ($16.50) and Platform ($18) add features at a slightly higher price and lower overage. Postmark cut its Pro and Platform entry prices in August 2025 (Pro at 10k went from $60.50 to $16.50). Broadcast email has no extra fee. Dedicated IPs start at $50/month per IP for senders of 300,000+ emails/month on Pro or higher. Verified 6 November 2026 against postmarkapp.com/pricing.
Strengths.
- 45-day message history on every plan, customisable up to 365 days on Pro and Platform
- Transactional and broadcast streams run on separate infrastructure
- Batch API of up to 500 messages per call
- Detailed webhooks: delivery, bounce, spam complaint, open, click, inbound
Weaknesses.
- Most expensive provider here at 50k and 100k emails ($115 for 100k versus $35 for Resend)
- New accounts need approval before sending to addresses outside your verified domains
- Inbound processing isn't on the Basic plan
- Free plan is 100 emails/month, enough for testing only
Best for. SaaS teams whose support desk needs to answer "did the invoice email arrive?" months later, and teams that want broadcast mail kept off their transactional infrastructure.
Next.js integration notes. The official npm package is postmark. With a MakerKit kit you can skip the SDK and use Nodemailer: set MAILER_PROVIDER=nodemailer, EMAIL_HOST=smtp.postmarkapp.com, EMAIL_PORT=587, EMAIL_TLS=false, and your server's SMTP credentials in EMAIL_USER and EMAIL_PASSWORD. Apply for account approval in your first week, not your launch week.
3. Amazon SES: Cheapest at Scale
What it is. Amazon Simple Email Service is AWS's sending infrastructure: API, SMTP and the AWS SDK, with events delivered to SNS, EventBridge, CloudWatch or Firehose rather than HTTP webhooks.
Pricing. SES introduced pricing plans on 21 July 2026. New accounts start on Essentials at $0.16 per 1,000 emails with no monthly fee, which bundles features such as Virtual Deliverability Manager. You can switch to à la carte at $0.10 per 1,000 at any time: $1 for 10k, $10 for 100k, $100 for 1M. Pro is $105/month plus $0.22 per 1,000, and Enterprise $500/month plus $0.23 per 1,000. The SES-specific free tier of 3,000 messages a month is gone for new customers; new AWS accounts get a 6-month free plan with up to $200 in AWS credits instead. Attachments cost $0.12 per GB, and a standard dedicated IP is $24.95/month. Verified 6 November 2026 against aws.amazon.com/ses/pricing and the July 2026 announcement.
Strengths.
- Lowest price per email by a wide margin at every volume
- Sends transactional and marketing email on the same account
- Dedicated IPs on any plan, from $24.95/month
- Fits teams already on AWS with IAM, SNS and CloudWatch
Weaknesses.
- New accounts start in a sandbox: verified recipients only, 200 messages per 24 hours, 1 per second. AWS promises a first response to production-access requests within 96 hours.
- No hosted message log unless you use Virtual Deliverability Manager (30 days; included in plans, $0.07 per 1,000 on à la carte)
- Events need AWS plumbing (SNS or EventBridge) instead of a webhook URL
- AWS reviews accounts with a bounce rate of 5% or a complaint rate of 0.1%
Best for. Products sending 100k+ emails a month where the email bill is a line item, and teams already running on AWS.
Next.js integration notes. Use @aws-sdk/client-sesv2 for the API, or SMTP through Nodemailer in a MakerKit kit:
# apps/web/.envMAILER_PROVIDER=nodemailerEMAIL_HOST=email-smtp.us-east-1.amazonaws.comEMAIL_PORT=587EMAIL_TLS=false # 587 uses STARTTLS; set true only for port 465EMAIL_USER=your-ses-smtp-usernameEMAIL_PASSWORD=your-ses-smtp-passwordEMAIL_SENDER=YourApp <noreply@yourdomain.com>Request production access the day you create the account. The sandbox only delivers to verified addresses, so it will hide the problem in development and break sign-ups on launch day.
4. MailerSend: Best Budget Managed Alternative
What it is. MailerSend is the transactional email product from the team behind MailerLite, with an email API, SMTP relay, inbound routing on every plan and an official Node.js SDK.
Pricing. Free allows 500 emails/month (100/day) after approval, and needs a credit card. Hobby is $7/month for 5,000 emails plus $1.50 per extra 1,000, which makes 10k about $14.50. Starter is $35 for 50,000, $68 for 100,000 and $600 for 1M. Yearly billing takes 10% off. Verified 6 November 2026 against mailersend.com/pricing, monthly billing.
Strengths.
- Cheaper than Postmark and Mailgun at 100k ($68) and 1M ($600)
- Inbound routing included even on the free plan
- Official TypeScript-typed SDK (
mailersend) - Template builder for non-developers
Weaknesses.
- Activity history is 1 day on Free and Hobby, 7 days on Starter, 30 on Professional
- Dedicated IPs only on Enterprise, above 100k emails/week, price on request
- Its own pricing and help pages disagree on some limits (Hobby webhooks, Starter inbound routes)
Best for. Teams sending 100k+ emails a month that want a full managed dashboard at a lower price than Postmark or Mailgun.
Next.js integration notes. npm install mailersend, or use its SMTP relay with Nodemailer. Expect an approval step before the free plan sends.
5. Mailgun: Mature API With Dedicated IPs Included at 100k
What it is. Mailgun, owned by Sinch, is one of the longest-running email APIs, with a REST API, SMTP relay and webhooks on every plan, and inbound routing that grows from 1 route on Free to full access on Foundation.
Pricing. Free sends 100 emails/day with 1 domain and 1 day of logs. Basic is $15/month for 10,000 ($1.80 per extra 1,000). Foundation is $35 for 50,000 and $75 for 100,000. Scale reaches $700 for 1M. One dedicated IP is included from the Foundation 100k plan, and extra IPs cost $59/month. Verified 6 November 2026 against mailgun.com/pricing.
Strengths.
- Dedicated IP included at 100k emails/month, earlier than most competitors
- Full inbound routing from Foundation
- Typed Node SDK (
mailgun.js), actively maintained
Weaknesses.
- Log retention is short: 1 day on Free and Basic, 5 on Foundation, 30 on Scale
- Basic allows 1 domain and no extra users
- Since May 2025, SMTP credentials aren't generated automatically; create them manually before configuring Nodemailer
Best for. Teams that want a dedicated IP at around 100k emails a month without moving to an enterprise contract.
Next.js integration notes. Use mailgun.js or SMTP via Nodemailer (EMAIL_HOST=smtp.mailgun.org, EMAIL_PORT=587, EMAIL_TLS=false). Create the SMTP credentials in the Mailgun dashboard first.
6. Loops: Product and Marketing Email in One Tool
What it is. Loops is an email platform for SaaS that handles transactional, product and marketing email in one place, with templates built in the Loops editor.
Pricing. Free covers 1,000 subscribed contacts and 4,000 sends per rolling 30 days, transactional included, with a Loops footer. Growth is $49/month for up to 5,000 subscribed contacts with unlimited transactional sends. Pricing scales by contacts, not sends. Verified 6 November 2026 against loops.so/pricing.
Strengths.
- Unlimited transactional sends on paid plans
- One tool for onboarding sequences, newsletters and transactional email
- SMTP support, including a Supabase Auth guide
Weaknesses.
- The API doesn't accept HTML: templates live in the Loops editor, so existing React Email templates don't carry over
- Attachments aren't generally available and need support to enable them
- Rate limit of 10 requests per second per team
- Contact-based pricing gets expensive for apps with many low-value users
Best for. Early SaaS teams that want lifecycle and marketing email without running a second tool, and can live with templates outside the codebase.
Next.js integration notes. Use the loops npm package and call transactional emails by transactionalId. In a MakerKit kit this means a custom mailer, and rebuilding the kit's React Email templates in the Loops editor.
7. Cloudflare Email Service: Native Sending From Workers (Beta)
What it is. Cloudflare Email Service sends email from Cloudflare Workers through a send_email binding, a REST API or authenticated SMTP. It entered public beta in April 2026.
Pricing. Sending to arbitrary recipients needs the Workers Paid plan, which includes 3,000 emails/month, then $0.35 per 1,000: $2.45 for 10k, $33.95 for 100k, $348.95 for 1M, plus the Workers Paid subscription. Sends to your own verified addresses are free. Verified 6 November 2026 against Cloudflare's Email Service pricing.
Strengths.
- No API keys for Workers:
await env.EMAIL.send({ to, from, subject, html }) - Second-cheapest per email after SES
- Same account and dashboard as your Workers, R2 and DNS
Weaknesses.
- Still labelled beta in Cloudflare's docs
- New accounts start with a "conservative daily quota" that grows over time, with no published number
- No outbound delivery webhooks documented
- Not available on the Workers Free plan
Best for. Apps already deployed on Cloudflare Workers that are comfortable on a beta product, or as a second sender for internal notifications.
Next.js integration notes. The binding exists only inside a Worker, so it works for Next.js on Cloudflare via OpenNext, not on Vercel or a VPS. In a MakerKit kit it needs a custom mailer. Until it leaves beta, Resend's HTTP API is the safer choice for Workers.
8. PostShiba: Flat Monthly Price, Built for Sending From Customers' Domains (Beta)
What it is. PostShiba is the email infrastructure behind Bento, opened to everyone as a public beta on 25 October 2026. It sends over SMTP, HTTP inject or a REST API, receives mail into hosted inboxes with signed webhooks, and gives each of your customers a separate tenant for domains, SMTP credentials, inboxes and suppressions.
Pricing. PostShiba charges a fixed monthly price per "cluster," sized by your busiest hour and any rolling 24 hours, with no per-email overage and no per-domain fees. Nano is $5/month (100 emails/hour, 600 per 24 hours), Micro $15 (4,000/hour, 24,000 per 24 hours), Small $49 (40,000/hour, 240,000 per 24 hours), Medium $99 and Large $299. Receiving is free, inbox storage is $0.50 per GB-month, extra shared IPs are $15/month and dedicated IPs $50/month. There is no free plan: the first cluster has a 7-day trial and needs a payment method. Verified 6 November 2026 against postshiba.com/pricing.
Strengths.
- $15/month covers 50k-100k emails if your peak fits Micro, less than everything here except Amazon SES
- A spike can't produce an overage invoice: sends over the cap are refused, not billed
- Per-customer tenants, so one customer's suspension doesn't stop the others
- Free inbound email, and dedicated IPs as a $50/month add-on
- Node SDK on npm (
@postshiba/node) plus Convex, Inngest and Trigger.dev components
Weaknesses.
- Public beta since 25 October 2026, with manual production approval before you can send to external recipients
- Over the hourly or 24-hour cap, REST returns 429 and SMTP returns 451, and PostShiba says your app must keep and retry rejected messages. Size the plan for your peak, or password resets wait.
- No free plan, only a 7-day trial with a card
- Most non-JavaScript SDKs install from GitHub, not a package registry
- No published message-history retention period
Best for. B2B SaaS that sends email from its customers' domains, and teams that want a fixed email bill and can size for their peak hour.
Next.js integration notes. npm install @postshiba/node, then postshiba.emails.send({ from, to, subject, html }) with a Send only API key read from an environment variable. For SMTP, PostShiba offers port 587 with STARTTLS only (no port 465), which in a MakerKit kit means EMAIL_PORT=587 and EMAIL_TLS=false. It documents a Supabase Auth SMTP setup with the same port.
9. useSend: Best Open-Source Option
What it is. useSend is an open-source (AGPL-3.0) email platform with a hosted cloud version, a REST API, SMTP relay, webhooks and SDKs for TypeScript, Python, Go and PHP.
Pricing. The cloud free tier sends 3,000 emails/month with a 100/day cap. Paid has a $10/month minimum and charges $0.0004 per transactional email: $20 for 50k, $40 for 100k, $400 for 1M. Self-hosting is free, but useSend sends through your own Amazon SES account and needs SNS, Postgres and Redis. Verified 6 November 2026 against usesend.com and its self-hosting docs.
Strengths.
- Open source, with a self-hosted path
- Cheap cloud pricing at mid volume
- Adds a dashboard and webhooks on top of SES's low per-email price when self-hosted
Weaknesses.
- Self-hosting means you run SES, SNS, Postgres and Redis yourself
- Smaller company and community than every other provider here
- Free cloud tier allows 1 domain and 1 team member
Best for. Teams that want SES pricing with a usable dashboard and don't mind operating it. Plunk is a similar AGPL-3.0 option at $0.001 per email.
Next.js integration notes. npm install usesend-js, or point Nodemailer at its SMTP relay.
10. SendGrid: Hard to Recommend for New Projects
What it is. Twilio SendGrid is one of the largest email APIs, with HTTP and SMTP sending, an Inbound Parse webhook and a separate Marketing Campaigns product.
Pricing. SendGrid retired its free plan on 27 May 2025. New accounts get a 60-day trial of 100 emails/day, after which sending stops unless you upgrade. Essentials is $19.95/month for 50,000 emails or $34.95 for 100,000. Pro starts at $89.95 for 100,000 and reaches $799 at the 1.5M tier. Marketing Campaigns is billed separately from $15/month. Verified 6 November 2026 against SendGrid's pricing page.
Strengths.
- Essentials is competitive at 50k and 100k ($19.95 and $34.95)
- Large ecosystem and long track record
- Dedicated IP included on Pro
Weaknesses.
- No free plan, only a 60-day trial
- 3 days of email activity history on Essentials, 7 on Pro
- No dedicated IP on Essentials, so Essentials senders share IPs
- Marketing email is a separate product and bill
Best for. Teams already on SendGrid with working integrations. For a new SaaS, Resend costs about the same at 100k and keeps 30 days of history.
Next.js integration notes. npm install @sendgrid/mail, or SMTP via Nodemailer with EMAIL_HOST=smtp.sendgrid.net, EMAIL_PORT=587, EMAIL_TLS=false, EMAIL_USER=apikey and your API key as EMAIL_PASSWORD.
How to Choose a Transactional Email Provider
Choose based on where your app runs, then on volume, then on how long support needs message history.
- Choose Resend if you write TypeScript, use React Email, and send under a few hundred thousand emails a month. It's the default we'd pick for a new SaaS.
- Choose Amazon SES if you send 100k+ a month, the bill matters, and you're comfortable wiring SNS or EventBridge for bounce handling.
- Choose Postmark if support needs to look up messages from months ago, or you want broadcast mail on separate infrastructure from password resets.
- Choose MailerSend or Mailgun if you want a managed dashboard at 100k-1M for less than Postmark. Pick Mailgun if you want a dedicated IP included at 100k.
- Choose Loops if one tool for onboarding sequences, newsletters and transactional email matters more than keeping templates in your repo.
- Choose Cloudflare Email Service if you're already on Workers and accept a beta product's limits.
- Choose PostShiba if you send from your customers' domains or want a fixed bill, can size for your peak hour, and accept a beta.
- Choose useSend if you want open source or SES pricing with a dashboard.
- If unsure, start on Resend's free tier. Most providers here support SMTP, so with a Nodemailer setup switching later is usually a credentials change. Loops is the exception, because its templates live in its editor.
Whichever you pick, send transactional and marketing email from different streams or subdomains. In our view, a spam complaint about a newsletter shouldn't put your password-reset emails at risk.
Quick Recommendation
Resend is best for:
- TypeScript SaaS teams using React Email
- Apps deployed to Vercel, a Node.js server or Cloudflare Workers
- Projects that want one provider for Supabase Auth and app email
Skip Resend if:
- You send 1M+ emails a month and price dominates (Amazon SES à la carte is about a sixth of the cost)
- Support needs more than 30 days of message history (Postmark)
Our pick: Start on Resend, move high-volume sending to Amazon SES when the email bill passes about $100 a month, and use Postmark when message history matters more than price.
Frequently Asked Questions
What is the best transactional email provider for SaaS in 2026?
What is the cheapest transactional email service?
Does SendGrid still have a free plan?
Does Amazon SES still have a free tier?
Why are my Supabase auth emails not sending?
Can I send email from Cloudflare Workers?
Do I need a dedicated IP for transactional email?
Should transactional and marketing email use the same provider?
Sending Email From a MakerKit Kit
Every MakerKit web kit (Next.js, TanStack Start and React Router) ships two mailers in packages/mailers: Nodemailer for any SMTP provider and Resend over HTTP, switched with MAILER_PROVIDER. Any other provider, including Cloudflare's binding or Loops, plugs in as a custom mailer registered in the same registry.
- Supabase kits send app emails through the kit mailer and auth emails through Supabase Auth's SMTP settings. Configure both before launch: email configuration and authentication emails.
- Drizzle and Prisma kits (Better Auth) send every auth email through the kit mailer, alongside invites and account emails. One provider covers everything.
- Cloudflare deploys need
MAILER_PROVIDER=resendor a custom HTTP mailer, as the Cloudflare deployment guide explains.
If you're choosing the rest of your stack too, our Better Auth vs Clerk vs Supabase Auth comparison and Next.js hosting guide use the same method. MakerKit kits are a one-time purchase; see the kits if you'd rather start with the email, auth and billing wiring already done.