讨论 n8n 的成本,很多人只比较订阅价,结果上线一个月后发现账单主要来自模型调用。n8n 本身负责流程编排,真正处理内容的往往是后面的模型 API;前者按套餐或服务器计费,后者按 Token 或请求量计费,两者的成本结构完全不同。

本文把 n8n 相关成本拆成可计算的四块,给出估算步骤和控制手段。具体金额会随套餐、模型和汇率变化,本文不写死数字,请以 n8n 官方定价页和站内模型价格为准。

说明:n8n 为其权利人的商标,本文与 n8n 官方无隶属关系,仅作技术与成本讨论。

一、成本由哪几块组成

先建立一张成本地图,避免只盯软件订阅费。

成本项 计费口径 容易漏算的部分
n8n Cloud 订阅 按套餐与每月执行次数分档 团队人数、超额执行、升级档位
模型 API 按输入与输出 Token 用量 重试、重复上下文、长输出
自托管基础设施 服务器、数据库、备份、带宽 运维人力、监控、升级与安全
流程运维 调试、失败重跑、日志存储 无人值守流程的重复执行

这四块里,Cloud 订阅最直观,模型 API 最不可预测,自托管 infra 最容易被低估,流程运维则常常完全不在预算表里。算总账时要把它们放在一起。

二、Cloud 与自托管:别只算软件费

n8n Cloud 的价值是省去部署、升级、备份和可用性维护,套餐通常按执行次数分档,超出后需要升级或另购额度。它适合没有专职运维、希望快速上线的小团队。

自托管的社区版可以自行部署,不按席位收取订阅费,但“免费”只指软件许可。服务器、PostgreSQL、队列模式下的 Redis、对象存储、备份、监控、日志、安全补丁和升级窗口都是真实成本。n8n 采用 Sustainable Use License(fair-code 模式),对再分发和对外提供托管服务有额外限制,商用前应阅读许可证原文。若团队没有运维能力,自托管的总成本经常高于预期。

一个简单的判断:如果每月用于维护实例的时间价值超过 Cloud 套餐差价,就选 Cloud;如果数据必须留在自有网络、流程量大且团队有运维能力,再考虑自托管。

三、执行次数:最容易被低估的变量

n8n 的套餐通常围绕“执行次数”设计。一次工作流运行一般计为一次执行,但实际消耗会被这些因素放大:

  • 轮询触发器:定时检查没有新数据时,也可能产生执行记录,具体以当前版本规则为准。
  • 循环与子工作流:批量数据逐条处理,或把逻辑拆成子流程,都会增加运行次数。
  • 失败重试:节点重试和工作流重跑往往会再次计入执行。
  • 调试执行:在编辑器里反复手动运行,同样消耗额度。

降低执行次数的办法很直接:能用 Webhook 就不用轮询;能批量合并就不要逐条触发;入口先做去重;定时任务设置合理间隔;调试时先用单条样本。

在 n8n 的 Code 节点里,可以顺手汇总每次调用的模型用量,便于事后核对:

// 汇总单次运行中的 Token 用量(字段名以实际响应为准)
const usage = $json.usage ?? {};
const input = usage.prompt_tokens ?? 0;
const output = usage.completion_tokens ?? 0;

return [{ json: {
  input_tokens: input,
  output_tokens: output,
  total_tokens: input + output
  // 单价以站内价格页为准,这里只记录用量
}}];

四、API 按量计费:Token 花在哪里

模型 API 的账单由输入和输出共同决定。输入不只是用户那句话,还包括系统提示、历史对话、检索到的文档、工具定义和格式说明;输出则按生成长度计费。三个常见放大因素:

  1. 上下文重复:多轮对话每轮都携带历史,长对话的输入成本会持续累积。
  2. 长文档直塞:把整份合同或整页网页放进提示词,单次费用高,重复调用更明显。
  3. 重试与多版本:同一请求失败后重发,或并行让多个模型各答一遍,都会成倍增加用量。

优化顺序通常是:先做模型分级,分类、清洗、摘要用便宜模型,复杂生成再用强模型;再压缩上下文,只传必要字段;然后限制输出长度,要求结构化、简短回答;最后才考虑缓存。部分模型厂商提供提示缓存,可降低重复前缀的输入成本,是否支持及折扣幅度以厂商文档为准。

五、重试、缓存与隐性成本

重试是自动化里必要的,但它有两个账单后果:执行次数增加,模型请求也可能重复计费。失败请求是否收费取决于上游厂商,不能默认免费。建议把重试次数控制在 2–3 次,使用指数退避,并为写操作做幂等检查,避免重复发消息或重复记账。

缓存要分两层看。工作流层缓存的是“结果”,例如同一条记录处理过就跳过;模型层缓存的是“前缀”,例如固定的系统提示和长文档。前者靠数据库或 Redis 实现,后者依赖模型厂商能力,两者不能互相替代。

还有几项常被忽略:执行历史和工作流日志会占用数据库空间;图片、音频、转写等多媒体调用有独立计价;调试期间对全量数据跑一遍,可能瞬间产生大量执行和 Token。

六、预算控制:限额、告警与复盘

提前设边界:

  • 按项目或工作流分配独立的 API Key,便于归因和停用。
  • 在网关侧设置月度预算或用量上限,接近阈值时告警。
  • 把每次调用的 usage 写入表格或数据库,按工作流聚合。
  • 为高消耗流程单独设置并发和重试上限。
  • 每月复盘消耗最高的三条流程,检查是否有重复调用。
  • 预留一定余量应对业务增长和价格调整。

使用统一的 OpenAI 兼容网关,可以把多个模型供应商的 Key、用量和限额收口到一处,切换模型时不必改工作流。需要试用可先注册,具体模型与价格见模型价格。

七、一套可复用的估算步骤

不要凭感觉报价,按下面的顺序跑一遍:

  1. 选一条有代表性的工作流,取 20–50 条真实样本,而不是造测试数据。
  2. 统计每月触发次数,包含定时、Webhook、轮询空跑和手动执行。
  3. 从响应中记录每次调用的输入、输出 Token,算出平均值。
  4. 乘以重试系数,例如按历史失败率上浮 20%–50%。
  5. 加上 Cloud 订阅或服务器、数据库、备份、日志存储的月成本。
  6. 再加上维护实例和排查故障的人力折算。
  7. 每季度复核一次,套餐规则、模型价格和业务流程都可能变化。

举例来说,若一条流程每月触发一万次,其中三成会调用模型,每次平均输入两千 Token、输出五百 Token,那么先把三千次乘以两千五百,得到每月约七百五十万 Token 的总用量,再按所选模型的当前单价折算。单价请查模型价格,不要沿用旧文章里的数字。

常见问题

n8n Cloud 的执行次数怎么计算?

通常每次工作流运行计为一次执行,轮询、重试和手动运行是否计入要看当前套餐规则。最稳妥的做法是在账号的用量页面观察一周,再对照自己的触发频率估算。

自托管 n8n 真的免费吗?

社区版不按席位收取订阅费,但服务器、数据库、备份、监控和运维人力都要自己承担。企业功能需要单独授权,商用前还应确认 Sustainable Use License 的限制。

为什么模型账单比预估高很多?

常见原因是上下文重复、批量循环逐条调用、失败重试和调试时跑全量数据。先看用量明细里输入与输出的比例,再检查是否有流程在重复处理同一条记录。

重试失败也会计费吗?

执行次数通常会增加;模型请求是否计费取决于上游厂商的规则。建议限制重试次数、记录每次请求的结果,并对写操作做幂等处理。

怎么给团队设置预算上限?

按项目拆分 API Key,在网关侧设置月度额度与告警,把用量日志接到内部报表。发现异常时先停用对应 Key,再定位具体工作流。

下一步

n8n 的成本优化,核心是两件事:减少不必要的执行次数,控制每次模型调用的 Token。先把这两项量化,再决定用 Cloud 还是自托管。需要统一管理模型 Key、用量和预算,可以从注册中商起航 AI 网关开始,价格以模型价格页面为准。

相关阅读: