Resend

Free tierUpdated 2026-04

Developer-friendly email API. Send transactional emails from your app.

🟢Beginner10 minutes to set upTry Resend

What is Resend?

Resend is an email API designed for developers who need to send transactional emails from their apps — things like welcome messages, password resets, order confirmations, and in-app notifications. You call their API with a recipient address and some content, and Resend handles the hard parts: routing the email through trusted infrastructure, maintaining deliverability reputation, and making sure your message lands in the inbox instead of the spam folder.

The team that built Resend previously worked at Vercel, and it shows — the developer experience is clean, the documentation is excellent, and the Next.js integration feels native. SimpleAI uses Resend to send the weekly newsletter to subscribers.

Why use Resend?

Sending email sounds simple until you actually try to do it. If you use a basic SMTP server, your emails will almost certainly land in spam. Getting good deliverability requires maintaining a reputation with major email providers — something that takes years of work and proper infrastructure to build.

Resend gives you that reputation out of the box. Their sending infrastructure is pre-warmed and trusted. Combined with React Email — a companion library that lets you write email templates as React components — you can go from zero to sending polished, reliable emails in under 10 minutes.

The free tier (3,000 emails/month) covers the sending needs of most early-stage apps entirely.

Free vs Paid

FreePro ($20/month)
Emails per month3,00050,000
Daily sending limit100 emails/dayNo daily limit
Custom domain1 domainUnlimited
API keys1Unlimited
Delivery logs1 day retention3 days retention
WebhooksNoYes
Team members1Unlimited

The daily limit of 100 emails on the free tier is the constraint to watch. If you're sending in bulk (e.g. a newsletter blast), you'll hit it quickly. For standard transactional email — one email per user action — you'll likely never notice it.

Step-by-step setup

  1. Go to resend.com and create a free account — no card required
  2. From the dashboard, go to API Keys and create a new key; copy it immediately
  3. Add it to your .env.local file as RESEND_API_KEY=re_... — never commit this to Git
  4. Install the SDK: npm install resend
  5. In a Next.js server action or API route, initialise Resend: const resend = new Resend(process.env.RESEND_API_KEY)
  6. Call resend.emails.send() with your from, to, subject, and either html or react content
  7. Test it — an email should arrive within a few seconds
  8. To send from your own domain (e.g. hello@yourdomain.com), go to Domains in the dashboard and add the DNS records Resend provides to your domain registrar
  9. Once your domain is verified (usually takes a few minutes), update your from address in code

That's the entire setup. Your first working email takes about 10 minutes from account creation.

Common questions

Can I use Resend for newsletters and marketing emails? Resend is designed for transactional email — one email triggered by one user action. For broadcast newsletters and marketing campaigns (sending the same email to a list), use a dedicated tool like Loops, Mailchimp, or ConvertKit. Resend even recommends this themselves.

What's the difference between Resend and SendGrid? SendGrid is older, more feature-rich, and handles very high volume. Resend is simpler, cheaper at low volumes, and has a better developer experience. For new projects under ~50K emails/month, Resend is the easier starting point. You can always migrate later.

Do I need to verify my domain? Not immediately. Resend gives you a shared sending domain to use while testing. For production, verifying your own domain improves deliverability and makes your emails look professional — it's worth doing before launch.

What is React Email? React Email is a free companion library (npm install @react-email/components) that lets you build email templates using React components. You write JSX with components like <Button>, <Heading>, and <Section>, and React Email compiles them to HTML that renders correctly across email clients. Pass the template to Resend's react field instead of html.

How do I know if my emails are being delivered? The Resend dashboard shows a delivery log for every email sent — including whether it was delivered, opened, or bounced. On the free tier, logs are retained for 1 day. Upgrade to Pro for longer retention and webhook events you can act on in code.