标题意图分析与模式选择
标题“n8n Email节点发送邮件详解:收费吗?”包含两个核心诉求:一是“详解”(教程/实操类),二是“收费吗”(科普/解释类)。这是一个复合型标题,既需要讲解如何使用,又需要回答关于费用的问题。
考虑到“详解”是主要动作,且涉及具体操作步骤,**模式 A(教程/实战类)** 是最合适的框架,但需要在文章中穿插对费用问题的解答(模式 B 的元素)。我们将重点放在实操步骤上,同时在“准备工作”和“避坑指南”中明确费用问题。
n8n Email节点发送邮件详解:收费吗?
作为 N8N大学 的首席主编,笔者见过太多人在自动化流程的最后一公里——“邮件通知”环节卡住。你可能搭建了一个完美的数据抓取流程,却不知道如何稳定、低成本地把结果发到自己的邮箱里。
今天,我们就来硬核拆解 n8n 的 Email (SMTP) 节点。不整虚的,直接回答大家最关心的问题:用 n8n 发邮件,到底收不收费?怎么发才最稳?
一、费用真相:n8n 本身免费,但发信有成本
首先,直接回答标题的核心问题:n8n 软件本身是开源免费的。
但是,发送邮件这件事,本质上并不是 n8n 收费,而是你使用的邮件服务商(SMTP)是否收费。n8n 只是一个“搬运工”,它帮你把数据打包成邮件,通过你的邮箱服务器发出去。
通常有以下几种情况:
- 个人邮箱(Gmail/Outlook/QQ邮箱):通常免费,但有严格的发送频率限制(如每天50封),适合个人测试或低频通知。
- 企业邮箱(自建SMTP):取决于你的服务器带宽和IP信誉,通常包含在企业服务费用中。
- 邮件发送服务(SendGrid/AWS SES/Mailgun):这是专业自动化首选。通常有免费额度(如 SendGrid 每月100封免费),超出后按量付费,价格极低。
所以,结论是:n8n 不收钱,你只需要搞定 SMTP 账号即可。
二、准备工作:获取你的 SMTP 密钥
在拖拽节点之前,你必须拿到一把“钥匙”。这把钥匙就是你的 SMTP 授权码(或 API Key)。
⚠️ 笔者提醒:不要直接使用你的邮箱登录密码!现代邮箱系统(尤其是 Gmail 和 QQ 邮箱)都开启了“客户端授权码”机制,直接用密码登录会报错。
以最常用的 Gmail 为例:
- 登录 Google 账号 -> 安全性 -> 两步验证。
- 找到“应用专用密码”(App Passwords)。
- 生成一个 16 位的字符串,这就是你的 SMTP 密码,复制备用。
如果你使用的是 SendGrid(推荐用于高频自动化),则去后台创建一个 API Key,格式通常以 SG. 开头。
三、核心实操:3步配置 Email 节点
现在,进入 n8n 的工作流画布。我们将演示如何配置最常用的 Email (SMTP) 节点。
步骤 1:添加节点
在画布中点击“+”号,搜索 Email (SMTP) 并添加。注意不要选错成“Email (IMAP)”,那个是用来收邮件的。
步骤 2:配置 SMTP 凭证 (Credentials)
这是最关键的一步。点击节点面板中的“创建新凭证”:
- 主机 (Host):例如
smtp.gmail.com(Gmail) 或smtp.sendgrid.net(SendGrid)。 - 端口 (Port):通常为 587 (TLS) 或 465 (SSL)。建议优先尝试 587。
- 用户 (User):你的完整邮箱地址(如
yourname@gmail.com)。 - 密码 (Password):这里填入刚才生成的 16位授权码 或 API Key。
- 安全连接:勾选
TLS(通常对应端口587)。
点击“保存”,n8n 会自动测试连接。如果显示绿色对勾,说明凭证配置成功。
步骤 3:填写邮件内容
切换到“参数”选项卡:
- 收件人 (To):可以写死,也可以使用表达式
{{ $json.email }}从上游节点动态获取。 - 主题 (Subject):例如
【N8N大学】每日数据报告。 - 正文 (Text/HTML):支持 HTML 格式。你可以直接写文字,也可以用表达式嵌入数据。
💡 进阶技巧:如果你想发送富文本(带表格、样式的邮件),请在“HTML”字段中编写代码,而不是使用“Text”字段。
四、避坑指南:90% 的新手都会遇到的错误
即使配置正确,发送邮件时依然可能报错。以下是笔者在实战中总结的两个大坑。
1. Gmail 的“位置访问”拦截
如果你在 n8n 中配置 Gmail 时报错 Invalid login or Authorization failed,且确认密码无误,大概率是 Google 拦截了你的登录。
解决方案:
登录 Google 账号安全设置,查看“近期的安全事件”。通常会有一条提示:“Google 阻止了来自您所在国家/地区的登录尝试”。你需要点击“这是安全的”,并允许 n8n 访问。
2. n8n 无法解析变量(表达式错误)
很多新手在“收件人”一栏直接写 {{ $json.email }},结果报错 Parameter 'to' is empty。
原因分析:上游节点传来的数据结构可能层级较深,或者根本没有这个字段。
解决方案:
- 使用 Set 节点前置处理数据,确保字段名标准化。
- 在 n8n 的数据面板(Data View)中查看上游节点的输出 JSON,确认字段路径。例如,如果数据是
{ "user": { "email": "test@test.com" } },那么表达式应该是{{ $json.user.email }}。
五、FAQ 常见问题解答
Q1: n8n 云版本和自托管版本在发邮件上有区别吗?
A: 没有区别。无论你用的是 n8n.cloud 还是自己在服务器上搭建的 Docker 版本,配置 SMTP 节点的方法完全一致。唯一的区别是,云版本可能预装了部分邮件服务的 OAuth 凭证,但核心的 SMTP 方式依然是通用的。
Q2: 我可以用 Outlook 或 Yahoo 邮箱吗?
A: 可以。Outlook 的 SMTP 设置与 Gmail 类似,需要开启两步验证并生成应用密码。Outlook 的 Host 通常是 smtp.office365.com,端口 587。
Q3: 发送频率有限制吗?
A: 非常有。如果你使用免费的个人邮箱(如 163、QQ),每天可能只能发 20-50 封,超过就会被封禁。如果是做业务通知或营销,强烈建议使用 SendGrid 或 AWS SES,它们对自动化流程更友好。
总结与资源
用 n8n 发送邮件本身不收费,核心成本在于你选择的 SMTP 服务商。对于个人学习,Gmail 或 QQ 邮箱的授权码完全够用;对于生产环境,请务必接入专业的邮件发送服务(如 SendGrid),以保证送达率和稳定性。
推荐阅读:
如果你在配置过程中遇到具体的报错代码,欢迎在 N8N大学 社区留言,笔者会亲自为你排忧解难。