SendGrid vs Mailgun vs Resend:2026年邮件服务商深度对比
无论是发送交易邮件(密码重置、订单确认)还是营销邮件(Newsletter、促销活动),选择一款可靠的邮件服务商都至关重要。SendGrid、Mailgun 和新兴的 Resend 是开发者社区中最受关注的三款产品。
选型往往不是“哪家最好”,而是“哪家最适合当前的阶段”。个人项目几百封的月发送量,和电商大促一天几百万封,对服务商的要求完全不同;同样的预算,不同服务商能买到的功能也不一样。下面从价格、送达、开发体验、功能四个维度展开,最后给出分场景的选型建议。
一、平台概览
| 特性 | SendGrid | Mailgun | Resend |
|---|---|---|---|
| 所属公司 | Twilio | Sinch | 独立(YC W23) |
| 成立年份 | 2009 | 2010 | 2023 |
| 核心定位 | 营销邮件+交易邮件 | 开发者邮件 API | 开发者邮件体验 |
| 免费额度 | 100封/天 | 5,000封/月(前3月) | 500封/月 |
二、价格对比
2.1 免费套餐
| 平台 | 免费额度 | 限制 |
|---|---|---|
| SendGrid | 100 封/天 | 每日限制,不可累积 |
| Mailgun | 5,000 封/月(前 3 个月) | 需验证域名,有发送限制 |
| Resend | 500 封/月 | 无时间限制,功能完整 |
2.2 付费套餐(性价比)
| 平台 | 起步价 | 50,000 封/月 | 100,000 封/月 |
|---|---|---|---|
| SendGrid Essentials | $19.95/月(50K 封) | $19.95 | $34.95 |
| Mailgun Foundation | $35/月(50K 封) | $35 | $50 |
| Resend Pro | $20/月(50K 封) | $20 | $35 |
注:以上为基础套餐价格,额外发送量有单封计费方案。
需要提醒的是,上表只是“入门价”。真正决定长期成本的是超出部分的单价,以及是否按“联系人数”计费:SendGrid 按邮箱地址数量而不是发送量收费,活跃订阅者越多、单价越低;Mailgun 和 Resend 则更接近纯按量付费。如果你的列表里有大量长期未活跃的地址,前者可能会悄悄抬高成本。
三、送达率
3.1 送达率对比
| 平台 | 交易邮件送达率 | 营销邮件送达率 | 延迟表现 |
|---|---|---|---|
| SendGrid | 97-98% | 95-97% | 良好 |
| Mailgun | 97-99% | 95-98% | 良好 |
| Resend | 98-99% | 96-98% | 优秀 |
3.2 影响送达率的因素
送达率不仅取决于邮件服务商,还与以下因素密切相关:
- 域名信誉:新域名的发送信誉需要逐步建立
- SPF/DKIM/DMARC 配置:未正确配置会导致邮件被标记为垃圾邮件
- 邮件内容质量:垃圾邮件关键词、过多图片链接会影响送达
- 发送频率:突然大量发送会触发 ISP 的限制
- 退信率:高退信率会严重损害域名信誉
送达率数字只能作为参考,真正的瓶颈往往在发送方。一个很常见的错误是:新域名刚配置完就一次性群发几万封,结果触发 ISP 的风控,整体域名信誉被拉低,连交易邮件也进垃圾箱。稳妥的做法是先“预热”:从每天几百封开始,观察退信率和垃圾箱率,再逐步加量,这个过程通常要 2-4 周。
3.3 发送域配置示例
无论选哪家,上线前都要在 DNS 里配好三个记录。以 send.yourdomain.com 为例:
# SPF:声明哪些服务器有权用你的域名发信
send.yourdomain.com TXT "v=spf1 include:spf.sendgrid.net ~all"
# DKIM:公钥记录,服务商会在控制台给出具体的 selector 与值
s1._domainkey.send.yourdomain.com TXT "k=rsa; p=MIGfMA0GCSq...AQAB"
# DMARC:告诉收件方验签失败时怎么处理,并接收聚合报告
_dmarc.send.yourdomain.com TXT "v=DMARC1; p=none; rua=mailto:[email protected]"
先用 p=none 观察 1-2 周聚合报告,再逐步收紧到 quarantine 或 reject,避免误伤正常邮件。
四、API 与开发者体验
SendGrid
// SendGrid Node.js SDK
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);
const msg = {
to: '[email protected]',
from: '[email protected]',
subject: '订单确认 #12345',
html: '<h1>感谢您的购买!</h1><p>您的订单已确认。</p>',
};
sgMail.send(msg).then(() => console.log('发送成功'));
特点:
- SDK 支持多种语言
- 动态模板功能强大
- 完善的统计和分析
- 文档丰富但稍显复杂
Mailgun
// Mailgun API
const formData = require('form-data');
const Mailgun = require('mailgun.js');
const mailgun = new Mailgun(formData);
const mg = mailgun.client({ username: 'api', key: process.env.MAILGUN_API_KEY });
mg.messages.create('yourdomain.com', {
from: '[email protected]',
to: ['[email protected]'],
subject: '验证您的邮箱',
html: '<p>请点击链接验证邮箱</p>',
});
特点:
- API 简洁直观
- 邮件路由和解析功能强大
- 详细的发送日志
- 可自定义 SMTP 端点
Resend
// Resend Node.js SDK
import { Resend } from 'resend';
const resend = new Resend(process.env.RESEND_API_KEY);
const { data, error } = await resend.emails.send({
from: '[email protected]',
to: ['[email protected]'],
subject: '欢迎加入!',
html: '<strong>欢迎注册!</strong>',
});
特点:
- API 设计最现代、最简洁
- React Email 原生支持(可用 React 组件写邮件)
- 冷启动快,开发者体验极佳
- 平台较新,生态正在快速发展
五、功能对比
| 功能 | SendGrid | Mailgun | Resend |
|---|---|---|---|
| 邮件模板 | ✅(动态模板) | ❌(需自行实现) | ✅(React Email) |
| A/B 测试 | ✅ | ❌ | ❌ |
| 统计分析 | ✅(详细) | ✅(基础) | ✅(基础) |
| Webhooks | ✅ | ✅ | ✅ |
| SMTP 接入 | ✅ | ✅ | ✅ |
| 邮件解析 | ❌ | ✅(入站邮件) | ❌ |
| API 密钥管理 | ✅ | ✅ | ✅ |
| 子用户管理 | ✅ | ❌ | ❌ |
| 批量发送 | ✅ | ✅ | ✅ |
| 垃圾邮件检测 | ✅ | ✅ | ✅ |
| IP 池管理 | ✅(付费) | ❌ | ❌ |
六、SMTP 配置参考
无论选择哪家,最终都需要配置 SMTP 参数:
| 参数 | SendGrid | Mailgun | Resend |
|---|---|---|---|
| SMTP 服务器 | smtp.sendgrid.net | smtp.mailgun.org | smtp.resend.com |
| 端口(TLS) | 587 | 587 | 587 |
| 端口(SSL) | 465 | 465 | 465 |
| 认证方式 | API Key | API Key | API Key |
七、选型建议
选 SendGrid 的场景
- 需要发送大量营销邮件(Newsletter)
- 需要 A/B 测试和详细统计分析
- 需要动态邮件模板
- 预算有限但需要稳定服务
选 Mailgun 的场景
- 主要发送交易邮件
- 需要邮件解析和入站邮件处理
- 需要详细的 API 日志排查问题
- 需要自定义 SMTP 端点
选 Resend 的场景
- 追求最佳的开发者体验
- 使用 React/Next.js 技术栈
- 希望用 React 组件编写邮件模板
- 项目规模不大,对高级管理功能需求少
八、总结
三款邮件服务各有特色。SendGrid 功能最全面,适合需要完整邮件营销功能的场景;Mailgun 稳重大气,适合对 API 灵活性和控制力要求高的开发者;Resend 体验最佳,是现代开发者的清新选择。建议根据技术栈和业务需求选择,也可以同时使用多个服务——用 Resend/SendGrid 发交易邮件,用 Mailgun 处理入站邮件和日志。
一个务实的组合方案:交易邮件用 Resend(体验好、送达快),营销邮件用 SendGrid(模板与统计强),入站解析用 Mailgun(原生支持)。各取所长,成本也比单用一家的大套餐更可控。无论选哪家,都建议先跑通发送域配置与预热,再评估长期账单。
参考:SendGrid 定价 https://sendgrid.com/en-us/pricing;Mailgun 文档 https://documentation.mailgun.com/;Resend 文档 https://resend.com/docs;SPF/DKIM/DMARC 说明 https://www.cloudflare.com/learning/dns/dns-records/