Email API benchmarks
Compare real-time performance, reliability, and uptime benchmarks for top email providers, powered by proprietary data from billions of messages sent through Knock.
Performance at a glance
Sort and filter providers by API response time (how fast each provider's API accepts a request), error rate, and growth.
| Provider | Message volume | Median response time | Error rate | Growth |
|---|---|---|---|---|
100M–500M | 14ms | 0.00% | 2nd | |
10M–25M | 60ms | 0.00% | 4th | |
1M–10M | 81ms | 0.00% | 1st | |
<1M | 82ms | 0.00% | 9th | |
100M–500M | 122ms | 0.00% | 5th | |
100M–500M | 166ms | 0.00% | 3rd | |
<1M | 239ms | 0.00% | 8th | |
<1M | 320ms | 0.00% | 7th | |
<1M | 321ms | 0.00% | 10th | |
<1M | 404ms | 0.00% | 6th |
Compare providers
Pick any two providers for a head-to-head comparison of performance, reliability, and pricing.
| Provider | Volume | Median response time | Error rate | Growth |
|---|---|---|---|---|
100M–500M | 166ms | 0.00% | 3rd → | |
1M–10M | 81ms | 0.00% | 1st → |
Explore provider benchmarks
Explore detailed performance benchmarks, feature comparisons, and pricing for each provider.

Amazon SES
Send high-volume email on AWS with API or SMTP and keep costs predictable as you scale.
Learn more
MailerSend
Send transactional email and SMS from one stack with receipts, resets, and alerts, plus templates your team can edit without code.
Learn more
Mailgun
Send, validate, and parse inbound mail with APIs so you can ship transactional email without running MTAs yourself.
Learn more
Mailjet
Ship transactional and marketing email from one API with collaborative editing and EU residency when you need it.
Learn more
Mailtrap
Test in staging, then send and monitor production email from one place without leaking mail to real users.
Learn more
Mandrill
Send transactional mail with Mailchimp-grade delivery and analytics when marketing and product email share one stack.
Learn more
Postmark
Send transactional email fast with separate streams and analytics so receipts and alerts do not mix with marketing.
Learn more
Resend
Ship email from React or plain HTML across domains and regions with a minimal API surface.
Learn more
SendGrid
Send transactional and marketing email at scale with APIs and deliverability tooling your team can operate in production.
Learn more
Sparkpost
Push high-volume email with predictive analytics and rules so you can optimize delivery before inbox placement drops.
Learn moreKnock
Knock is a notification infrastructure platform that enables you to integrate any combination of email providers into a single workflow.
Learn moreMissing a provider?
If there is an email provider you would like to see benchmarked here, let us know.
Request a provider
Best email providers by use case
| Use case | Provider | Performance | Volume |
|---|---|---|---|
| Fastest email API | SendGrid | 14ms median | 100M–500M |
| Low latency at moderate volume | Resend | 81ms median | 1M–10M |
| High volume at scale | SendGrid, Mailgun, Amazon SES | 14ms median, 122ms median, 166ms median | 100M–500M |
| Fastest-growing adoption | Resend | Growth rank 1 of 10 | 1M–10M |
Based on billions of messages sent through Knock from Aug 1, 2026 to Oct 30, 2026, updated daily. Only providers with enough volume for high-confidence metrics are eligible for a pick. SendGrid, Mailgun, Amazon SES, Postmark, Resend, and Mandrill are tied for the lowest error rate (0.00%), so the table doesn't name a most reliable email API.
Using more than one provider
Knock sits above your email service providers as an orchestration layer. With one workflow API, 25+ provider integrations, per-user preferences, and a single log and debugger from API request to delivery, you can:
- Choose the right provider per message type. Use a high-volume provider for transactional emails, a deliverability specialist for marketing, and a testing service for staging.
- Switch providers without rewriting application code. Change routing rules in the Knock dashboard while your app continues calling the same API.
- Run failover and load balancing. Automatically retry failed sends through a backup provider or distribute load across multiple APIs.
- Migrate providers gradually. Route a percentage of traffic to a new provider, monitor the results, and roll back if needed.
Our methodology
How we collect, measure, and present the data behind these benchmarks.
All metrics reflect a trailing 90-day window. Point-in-time load tests don't capture the variability of a production system handling thousands to millions of requests daily, so we use a longer window to surface the effects of system congestion and public incidents without penalizing providers that are actively improving.
Volume represents the total number of sampled email API requests routed through Knock during the period. Because Knock is an orchestration layer, we cannot influence the sending patterns of our customers, so volume varies by provider. To normalize for this, we group providers into volume bands (e.g. <1M, 1M–10M, 10M–25M) that indicate how statistically confident we are in the observed metrics. Providers with low volume are flagged so you can weigh the results accordingly.
Response time is measured as the elapsed time from when Knock sends an API request to when the provider returns a 200 status indicating message acceptance (a "sent" event in Knock). We compute percentiles (p50, p90, p95, p99) using the quantile function in ClickHouse, which uses an approximate algorithm with up to 2% error tolerance. In practice, this produces values within 0–3ms of exact percentiles for typical latency distributions, well within the margin of meaningful difference when comparing providers. The measurement includes HTTP connection pooling time and network latency, applied consistently across all providers. Each API request is measured individually — if Knock's automatic retry logic triggers a new request, that retry is recorded as a separate measurement with its own response time rather than being added to the original request's duration. This measures API acceptance latency, not end-to-end delivery to the recipient's inbox.
Error rate is the ratio of requests that received a 5xx status code (500, 502, 503, etc.) to total requests for the period. We treat all 5xx responses equally — whether a 503 Service Unavailable indicating an overloaded server or a generic 500 Internal Server Error — because they either indicate provider-side issues or represent cases where input could be rejected with a more instructive 4xx code. Within Knock's retry logic, most 5xx codes are retryable, so a single request can produce multiple error entries if each retry also fails. We believe this accurately represents the provider's availability during those periods.
In Knock, a connection to a provider API is modeled as a channel. Growth rank (1st through 10th) reflects how many new channels were created for each provider during the 90-day window. To detect directional trends, we split the window into two 45-day halves and compare them, producing the trend indicators (up, down, or stable) shown alongside each rank.
On provider detail pages, we integrate with each provider's public status page via RSS or API and overlay reported incidents on the performance data we collect. Our view is that a severe degradation in measured performance should correspond to a status page entry, and the degree of correlation between observed metrics and public incidents is a useful signal for how a provider handles incident management. Incidents are not inherently negative — status page updates paired with observed degradation are indicators of engineering discipline.
When modeling pricing curves and cost-per-email estimates, we select the lowest-cost plan that covers a given sending volume. This means we optimize purely for volume — we do not factor in premium features like dedicated IPs, advanced analytics, or priority support that may only be available on higher-tier plans. If a provider offers multiple plans at the same volume level, we use the one with the lower base price. Overage rates are applied on top of the included email allowance for each plan. The result is a floor estimate of what each provider costs at a given volume, making it straightforward to compare providers on price alone.
Frequently asked questions
Based on real-world data from 100M–500M messages sent through Knock from August 1st to October 30th, SendGrid has the lowest median API response time at 14ms (p50). The top three by response time are SendGrid (14ms), Postmark (60ms), Resend (81ms).
SendGrid, Mailgun, Amazon SES, Postmark, Resend, and Mandrill are tied for the lowest error rate at 0.00% for 5xx responses and timeouts among providers with high-confidence volume, so no single provider leads on reliability. Knock automatically retries failed requests across all providers.
By volume on the Knock platform, SendGrid leads with 100M–500M messages from August 1st to October 30th. The top three by volume are SendGrid (100M–500M), Mailgun (100M–500M), Amazon SES (100M–500M).
Resend currently ranks 1st in growth among 10 providers tracked on the Knock platform. The top three fastest-growing providers are Resend, SendGrid, Amazon SES.
9 of the 10 providers tracked here offer a free tier: Amazon SES (3,000 emails), MailerSend (500 emails), Mailgun (3,000 emails), Mailjet (6,000 emails), Mailtrap (4,000 emails), Postmark (100 emails), Resend (3,000 emails), SendGrid (3,000 emails), Sparkpost (500 emails). Free tier limits vary, and some providers impose daily rather than monthly caps.
Yes. Knock enables you to integrate any combination of email providers into a single notification workflow. You can route between providers, run migrations, or use different providers for different message types, all without changing your application code.
Browse other API benchmarks
Compare real-time performance for providers on other channels, measured the same way across requests sent through Knock.
SMS API benchmarks
Compare response time, reliability, and pricing across 7 providers.
Push API benchmarks
Compare response time, reliability, and pricing across 4 providers.