Free Tier Comparison
An honest comparison of free email API tiers — what each service gives you, where the limits are, and what happens when you exceed them. Covers tinysend, SendGrid, Mailgun, Resend, Brevo, Postmark, and Amazon SES.
Every developer wants to start with a free email API. The catch: not all free tiers are equal. Some cap you at 100 emails per day with no path to self-service growth. Others give you a generous free allowance and transparent pay-as-you-go after. Here's exactly what each service offers — with no marketing spin.
Here's what you actually get on each free plan, before hitting a credit card prompt:
| Service | Free monthly emails | Daily limit | Time-limited? | After free tier |
|---|---|---|---|---|
| tinysend | 1,000 | No limit | No — permanent | $1 / 1,000 emails |
| SendGrid | ~3,000 (100/day) | 100/day | No — permanent | From $19.95/mo |
| Resend | 3,000 | 100/day | No — permanent | From $20/mo |
| Mailgun | 5,000 | No limit | Yes — first 30 days only | $35/mo for 50k |
| Brevo | 9,000 (300/day) | 300/day | No — permanent | From $25/mo |
| Amazon SES | 62,000 (from EC2) | No limit | No (if on EC2) | $0.10 / 1,000 emails |
| Postmark | 100 test emails only | — | Trial only | $15/mo for 10k |
Note: SES's free 62k/month applies only when sending from Amazon EC2 instances. If you're sending via the SES API from outside EC2, you pay $0.10/1,000 from the first email — there's no permanent free tier.
tinysend gives you 1,000 emails per month on the free tier — permanently, no credit card required. There's no daily cap throttling your sends. You get the full API, webhooks, templates, and up to 3 automation sequences. When you exceed 1,000 emails, you pay $1 per 1,000 emails — exactly the same rate as the paid tier, no plan upgrade required.
curl -X POST https://api.tinysend.co/v1/email \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"from": "[email protected]",
"to": "[email protected]",
"subject": "Welcome to the app",
"html": "<h1>You're in!</h1><p>Click below to get started.</p>"
}'SendGrid's free plan gives you 100 emails per day — permanently. That's ~3,000 emails per month if you send consistently. The daily cap is the main constraint: you can't send 500 emails on Monday and 0 on Tuesday to balance out. Each day resets at midnight UTC.
The free tier does include a surprisingly good dashboard, delivery analytics, and the Twilio SendGrid API. What you lose: dedicated IPs, sub-user management, and the marketing campaigns module. If you're sending transactional email only, the free tier is functional for early-stage testing.
The jump from free to paid is steep: $19.95/mo for 50,000 emails (Essentials) or $89.95/mo for 100,000 (Pro with no sending limit). You can't gradually increase — it's a plan jump, not usage-based billing.
Resend offers one of the better developer-focused free tiers: 3,000 emails per month with a 100/day cap. Like SendGrid, the daily cap is the constraint — you can't front-load your monthly budget into a single day. The free plan includes 1 domain, 1 API key, and access to React Email integration.
Resend's DX is excellent — their onboarding is fast, the API is modern, and React Email templates are a genuine improvement over writing raw HTML strings. The trade-off: no automation sequences on any plan (only manual broadcasts), and no BYOK support. You're locked into Resend's infrastructure.
import { Resend } from 'resend'
const resend = new Resend('re_YOUR_API_KEY')
await resend.emails.send({
from: '[email protected]',
to: '[email protected]',
subject: 'Welcome',
html: '<p>You're in!</p>'
})Mailgun's free tier is deceptive: it looks generous at 5,000 emails/month but it only lasts for your first 30 days. After that, you're on Mailgun's Flex plan which costs $0.80 per 1,000 emails — and requires a credit card. There's no permanent free tier.
If you need a trial to validate your integration, Mailgun works. But don't build a free-tier production system on it — after day 30, you'll be billing immediately. The Foundation plan is $35/mo for 50,000 emails.
Heads-up: Mailgun requires a credit card even on the trial. If you don't cancel within 30 days, billing starts automatically on the Flex plan.
Brevo (formerly Sendinblue) has the highest absolute monthly limit in the free tier: 9,000 emails per month, with a cap of 300 per day. This makes it a reasonable choice if your volume is low and distributed throughout the month — think: a weekly newsletter to a small list, or low-volume transactional emails from a new project.
The main limitation: Brevo is primarily a marketing platform. Their transactional email API exists, but it's secondary to their contacts/campaigns focus. The free plan includes contact management for unlimited contacts, which is useful. After free, the Starter plan is $25/mo for 20,000 emails. Note that Brevo's plans are email-volume based (not contact-based like some competitors).
Amazon SES has a nuanced free offer: 62,000 emails per month at no cost — but only when sending from an application hosted on Amazon EC2. If you're deploying on EC2 (or Lambda, which is built on EC2), this is genuinely excellent free quota.
If you're sending from outside AWS (a local machine, a non-AWS VPS, Vercel, etc.), SES charges $0.10 per 1,000 emails from the first email. There's no free tier at all in that case. Additionally, new SES accounts start in sandbox mode — you can only send to verified email addresses until you request production access from AWS support, which can take 24–48 hours.
SES also has no dashboard-level features: no templates, no sequences, no built-in bounce handling. You're building everything yourself or using a higher-level tool (like tinysend with BYOK support to use your SES account).
SES sandbox: Every new account starts in sandbox mode. Emails only deliver to verified addresses. Production access requires a manual support request. Factor in 1–2 days before you can send to real users.
Postmark gives you 100 test emails when you sign up — enough to verify your integration, but not a production free tier. After that, Postmark starts at $15/month for 10,000 emails. There's no free tier to stay on.
This is by design. Postmark's positioning is "premium deliverability" — they maintain strict sending standards and dedicate significant infrastructure to keeping their shared IP pools clean. That's worth paying for if transactional deliverability is critical (password resets, receipts, account alerts). It's not the right choice if you're just starting out and want a free tier.
→ Use tinysend (1,000 emails/mo, no daily cap) or Brevo (9,000 emails/mo, 300/day cap). tinysend's advantage: no daily throttling means you can do a burst send without worrying about limits.
→ Resend's free tier is excellent for early testing. 3,000 emails/mo, clean API, React Email support. The 100/day cap will bite you if you need to send a batch.
→ Amazon SES is hard to beat if you're on EC2: 62k free emails/month. Just budget the setup time and account for the sandbox approval process.
→ Brevo's 9,000 emails/month (300/day) is the largest permanent free tier not tied to AWS infrastructure. Good for newsletters with a small audience or low-volume transactional apps.
→ Start on tinysend's free tier. You get up to 3 sequences free — so you can build the onboarding automation while still in the free tier, and the pricing model doesn't change when you grow.
1,000 emails/month free. Full API, webhooks, templates, and 3 sequences included. No credit card. No daily caps. Pay $1 per 1,000 emails when you grow.
Get your free API key →