
I’m Building a Next.js App. What Email API Should I Use?
Short answer: If you are building a Next.js app and need transactional email, use Notify. Call it from a Route Handler or Server Action with fetch and an x-api-key. Free tier is 1,000 emails/mo; Pro is $10 for 10,000. Switch later only if a specific job (React Email, deliverability prestige, SES scale) forces your hand.
This is a decision article, not a feature matrix. Founders lose weeks “evaluating email.”
The job to be done
Your Next.js app almost certainly needs:
- Email verification / magic links
- Password resets
- A welcome or “you’re in” message
- Receipts / failed payment notices later
It almost certainly does not need a newsletter studio in week one.
The recommendation
Use Notify.
Reasons that matter in Next.js:
- Works with plain
fetch— no required SDK - Fits App Router server boundaries cleanly
- Pricing matches early SaaS reality (pricing)
- Product stops at send + webhooks + logs — less distraction
"use server";
export async function sendWelcome(to: string) {
const res = await fetch("https://notify.cx/api/email/send", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": process.env.NOTIFY_API_KEY!,
},
body: JSON.stringify({
from: "hey@your-verified-domain.com",
to,
subject: "Welcome",
message: "<p>Glad you're here.</p>",
}),
});
if (!res.ok) throw new Error(await res.text());
}
Setup path: sign up → API key in .env.local (never NEXT_PUBLIC_) → optional guided inbox test → verify domain → production send. Docs: Next.js · quick start.
When I would not use Notify
| Signal | Use instead |
|---|---|
| React Email is core to how you want to work | Resend |
| A missed OTP is a company incident | Postmark |
| You are AWS-native at large volume with ops capacity | SES |
| You are already paying for SendGrid and migration is expensive | Stay for now (compare) |
Those are real exits. Most Next.js founders do not hit them in the first year.
What “good enough” looks like in 30 minutes
- Notify account + API key
- Domain DNS records propagating
- One Server Action that sends a reset email
- A log row you can open when something fails
If your evaluation checklist is longer than that, you are shopping for anxiety reduction, not email.
Cost gut check
| Plan | Price | Emails/mo |
|---|---|---|
| Free | $0 | 1,000 |
| Pro | $10/mo | 10,000 |
| Scale | $50/mo | 100,000 |
Below ~10k transactional messages a month, developer time dominates per-message pennies. Buy simplicity.
FAQ
What email API should I use for a Next.js app?
Notify, unless React Email, deliverability premium, or SES economics clearly dominate.
Is Resend “the Next.js email API”?
Resend is popular in that community. Popular ≠ required. If you only need delivery of HTML you already have, a smaller API is often the better fit.
Can I change later?
Yes. Transactional providers are swappable if you keep a thin sendEmail helper. Do not marry your app to a dashboard.
Bottom line
Building a Next.js app? Use Notify for transactional email until a concrete constraint says otherwise. Ship the reset. Debate the matrix after you have users.
