head to head
Cloudflare Email Service vs Resend
Sending at $0.35 per 1,000 from the edge, still in beta, against a settled API at $20/mo for 50,000.
What matters for teams building autonomous agents
An agent stack treats email as a two-way primitive. Inbound has to arrive as structured JSON a tool call can consume, sends have to be safe to retry when a model loop repeats itself, and every action needs an audit trail. A provider without inbound parsing only solves half the problem.
| Priority | Cloudflare Email Service | Resend |
|---|---|---|
| Inbound parsing | Yes | Yes |
| Idempotency keys | No | Yes |
| Webhooks | No | Yes |
| Operating since | Not published | 2023 |
| Event stream | Yes | Yes |
| Best published rate per 1,000 | Tiers not published in comparable form | $0.35 |
| Batch sending | Yes | Yes |
| SDKs | node | node, python, go, ruby, php, rust, java, elixir, cli |
| Multi-tenant | Yes | No |
For an agent that reads and writes email running inbound parsing into tool calls and model-generated sends that must not duplicate, Resend takes idempotency keys, webhook coverage, and SDK breadth, while Cloudflare Email Service takes multi-tenant support. That ordering reflects this audience. Weigh the same table differently and the answer changes.
Side by side
| Feature | Cloudflare Email Service | Resend |
|---|---|---|
| Webhooks | No | Yes |
| SDKs | node | node, python, go, ruby, php, rust, java, elixir, cli |
| Multi-tenant | Yes | No |
| Tagline | Free routing, programmable inbound via Workers, sending in beta. | Email API tightly coupled to React Email. |
| Free tier | Email Routing free; Email Workers on Workers Free plan | 3,000/mo permanent, capped at 100/day, one domain |
| Starts at | Sending: $0.35 per 1,000 messages (Workers Paid required, $5/mo) | $20/mo for 50,000 emails |
| Pricing model | pay-as-you-go | tiered |
| API | Yes | Yes |
| SMTP | No | Yes |
| Templates | none | react-email |
| React Email | No | Yes |
| Inbound | Yes | Yes |
| Idempotency | No | Yes |
| Dedicated IP | No | Yes |
| Deliverability | Free Email Routing forwards reliably and inherits Cloudflare's operational maturity. The new Sending API has no track record; treat any deliverability claim as unverified until public history appears. | Acceptable, but the deliverability track record is shorter than Postmark or SendGrid. Independent inbox-placement studies vary. Dedicated IPs are available on higher tiers. |
| DX score | 8/10 | 8/10 |
| Best for | Domains already on Cloudflare that want free routing, programmable inbound, and a cheap sending API in one place. | Early-stage React or Next.js product teams sending under 50k/mo. |
Cloudflare Email Service
pros
- ›Email Routing is free, including catch-all addresses and forwarding to any inbox
- ›Email Workers let you process inbound email in TypeScript with no extra infrastructure
- ›Sending priced at $0.35 per 1,000 (about a third of most managed providers)
- ›Native fit when DNS, Workers, and KV/D1 already live on Cloudflare
- ›No separate API keys; auth is via Cloudflare API tokens
cons
- ›Email Sending is in public beta; no deliverability history yet
- ›No SMTP relay; everything routes through Workers or the REST API
- ›Templates and event-log debugging are minimal compared to Postmark or Mailgun
- ›Tightly coupled to the Cloudflare ecosystem; not portable
- ›Best-of-breed providers will outpace it on pure sending features for some time
Resend
pros
- ›Idiomatic SDKs across major languages
- ›React Email integration is the smoothest of any provider
- ›Idempotency keys supported
- ›Clean dashboard and event log
cons
- ›Volume pricing is significantly higher than AWS SES at large volumes
- ›Founded 2023, so deliverability track record and incident history are still building
- ›No drag-and-drop template editor; non-React stacks get a thinner experience
- ›Free tier is capped at 100 sends a day, so a 3,000/mo allowance cannot absorb a launch spike
- ›January 2024 breach exposed email metadata, contacts, and encrypted API tokens for all users; message bodies were not reached
- ›Status page logged roughly ten incidents in the three weeks to 2026-08-01, mostly outside the sending path: dashboard, webhooks, domain verification, and automations
- ›Single-region historically; multi-region setup is newer
- ›Smaller support footprint than Twilio SendGrid or Sinch Mailgun