Menu
Accedi Crea account
Confronti

Resend, Postmark, Mailgun: Which One for Developers?

Three modern developer-oriented ESPs. Resend leans new and clean, Postmark leans reliable and transactional, Mailgun leans flexible. Here is the decision framework.

30 Sep 2025 · 10 min read · Target SMTP

Resend, Postmark and Mailgun all market themselves to developers. They share the basics — clean REST APIs, webhook delivery, decent SDKs — but they have very different personalities. Picking the wrong one is rarely catastrophic, but it costs you onboarding time, integration debt, and occasionally a deliverability incident.

This article compares the three on the axes that matter to engineering teams shipping transactional email: API quality, deliverability, pricing, ecosystem, support and unique tradeoffs.

The Three at a Glance

ResendPostmarkMailgun
Founded202320102010
FocusModern devs, React EmailTransactional puristFlexible / configurable
EU regionYes (since 2024)NoYes (EU region)
Pricing modelPer-messagePer-messagePer-message + plans
Pricing at 100k/mo~$20$15$35

API Quality

Resend

The newest of the three and the most opinionated. Their SDK is built around React Email — you write your email template as a React component and the SDK renders it server-side. If your stack is Next.js / Remix this is delightful.

import { Resend } from "resend";
const resend = new Resend(process.env.RESEND_API_KEY);

await resend.emails.send({
  from: "onboarding@example.com",
  to: "user@example.com",
  subject: "Welcome",
  react: 
});

Postmark

The most boring API of the three, and that is the highest compliment we can give. Postmark's API has barely changed in a decade. It just works.

import { ServerClient } from "postmark";
const client = new ServerClient(process.env.POSTMARK_TOKEN);

await client.sendEmail({
  From: "service@example.com",
  To: "user@example.com",
  Subject: "Welcome",
  HtmlBody: "

Welcome, Alice

", TextBody: "Welcome, Alice" });

Mailgun

The most flexible API. Multipart form-encoded by default, REST-ish. Many parameters, many configuration options. Powerful but more verbose.

import formData from "form-data";
import Mailgun from "mailgun.js";

const mg = new Mailgun(formData).client({ username: "api", key: process.env.MAILGUN_KEY });

await mg.messages.create("example.com", {
  from: "Service ",
  to: ["user@example.com"],
  subject: "Welcome",
  html: "

Welcome, Alice

" });

Deliverability

All three have strong deliverability for transactional. Independent seedlist tests in 2025 placed them within 1-2% of each other for typical SaaS transactional traffic.

  • Postmark: best at separating transactional from marketing (they refuse marketing on transactional servers, by policy).
  • Mailgun: strongest among the three for high-volume marketing where reputation management is hands-on.
  • Resend: comparable to Postmark for transactional, lighter on marketing tooling.

The Transactional/Marketing Boundary

Postmark is unique: it sells two separate products (Transactional Streams and Broadcasts) with policy enforcement. You cannot accidentally send a marketing campaign from the transactional stream. This single architectural decision protects reputation more than any other feature.

Mailgun has subdomains but no policy enforcement. Resend recently launched Audiences for marketing; it is younger.

Webhooks

All three deliver webhooks for delivery, bounce, complaint, open, click. Quality:

  • Postmark: signed (HMAC), retried 5x, very reliable.
  • Mailgun: signed, retried 8x, occasionally laggy under high load.
  • Resend: signed, retried, modern format, fewest event types.

Ecosystem

  • Resend: deep integrations with Next.js, Remix, Vercel; React Email is theirs.
  • Postmark: native integrations with most CRMs and help desks; longest list of legacy integrations.
  • Mailgun: Zapier, Segment, every major iPaaS.

Pricing Math

At 100k/month transactional only:

  • Resend: $20/month (Pro)
  • Postmark: $15/month (10k included, $1.25 per 1k extra → 100k = $15 base + $115 = effective ~$112; or Streams 100k plan at ~$50)
  • Mailgun: $35/month (Foundation, includes 50k, extra $0.80/1k → $35 + $40 = $75)

Pricing schemes change frequently — verify current rates. The structural difference: Resend and Mailgun bill on volume; Postmark bills in pre-purchased buckets that get cheaper per bucket.

EU Data Residency

Resend launched EU region in 2024. Mailgun has an EU region (data stays in EU). Postmark does not — data is processed in the US.

If you are a European company under GDPR transfer scrutiny, Postmark requires a DPA and SCCs but cannot offer EU-only processing today.

Support

  • Postmark: legendary. They publicly post their response times. Founder still responds occasionally.
  • Resend: good for a young company. Twitter/Discord-first.
  • Mailgun: decent on paid plans, very slow on free tier.

Quirks

Postmark: zero marketing tolerance

Send anything that looks like marketing from a transactional stream and they will pause you. This is a feature when it protects your reputation, an annoyance when you misjudge what counts.

Resend: limited template features

If you do not use React Email, you write HTML yourself. There is no drag-drop template builder.

Mailgun: configuration sprawl

So many features, so many places to configure them. New team members struggle to find settings.

When to Pick Which

Resend

  • Greenfield Next.js/Remix project.
  • You write emails as React.
  • You ship pure transactional, under 500k/month.

Postmark

  • You ship pure transactional and reliability is paramount.
  • You do not need marketing in the same product.
  • You are not EU data residency constrained.

Mailgun

  • You need a flexible API with many configuration knobs.
  • You ship mixed transactional + marketing.
  • You want hands-on deliverability control.

How They Compare to Target

Target SMTP overlaps the developer-oriented positioning of Resend and Postmark with two differences: EU data residency by default (like Mailgun EU but stricter), and the Send-Time Firewall — policies enforced at the SMTP boundary, which none of the three offer. For European SaaS that wants Postmark-style reliability with explicit send-time policies, Target is the closest match.

Closing

All four (the three above plus Target) are competent. Picking is about fit. Resend if you live in the React Email ecosystem. Postmark if reliability is the only metric. Mailgun if you need configuration depth. Target if EU residency and policy-as-code matter. The wrong choice is rarely fatal but the right choice saves time every week.

Tag #comparison #resend #postmark #mailgun

Related posts