Claude 与 ChatGPT API 哪个更便宜?
没有一种 API 能在所有工作负载中胜出。掌握 token 计算方法,查看 3 个带成本明细的任务,了解 Claude 账单具体在哪些情况下更高。
简短结论
Claude 与 ChatGPT API 的定价没有绝对赢家,因为两家供应商在每个层级对输入和输出采用了不同的定价方式。截至 2026 年 8 月,Claude 的上面两个层级与对应的 OpenAI 层级收取相同的输入 token 费用,但输出 token 费用更低,因此在输出占比较高的工作负载中,Claude 略占优势。在较小层级中,Claude 对同一任务的费用可能高出数倍。任何不说明层级和 token 组成的结论都只是猜测。
因此,本页先介绍计算方法,然后列出 3 个包含 token 组成和费用的工作负载,最后说明哪些倍数因素会让实际账单偏离页面标示的费率,而且偏离程度通常高于费率本身造成的差异。
您只需掌握的公式
两个 API 对文本采用相同的计费方式。您需要为发送的 token 付费,也需要按更高的单价为模型返回的 token 付费。
cost = (input tokens / 1,000,000) * input rate + (output tokens / 1,000,000) * output rate
一个 token 约对应 4 个英文字符,接近 0.75 个单词。这里只能用于初步估算。实际账单应使用每个 API 在每次响应的 usage 对象中返回的数量。
# Rates are US dollars per million tokens.
def cost(in_tok, out_tok, in_rate, out_rate):
return in_tok / 1e6 * in_rate + out_tok / 1e6 * out_rate
# One support-chat turn: 1,400 tokens in, 220 tokens out, on a $2 / $10 model.
print(round(cost(1400, 220, 2.0, 10.0), 6))该脚本输出 0.005,即每轮交互半美分。将其乘以您预计每月进行的交互轮数,即可得到预算。如果分母中的百万 token 单位不够直观,Claude 中一百万个 token 实际能生成多少内容会用具体的文本量说明它。记住这个公式后,今后的每次价格调整都只需修改一行,无需重新分析。
已公布的价格,August 2026
以下是两家厂商在 1 August 2026 公布的标价。本段是全文唯一明确写出价格的地方。在确定预算前,请对照 claude.com/pricing 和 OpenAI 的定价页面进行核验。
The data behind this chart
[
{
"label": "Frontier",
"claude_input": 5,
"claude_output": 25,
"openai_input": 5,
"openai_output": 30
},
{
"label": "Workhorse",
"claude_input": 2,
"claude_output": 10,
"openai_input": 2,
"openai_output": 12
},
{
"label": "Workhorse from September",
"claude_input": 3,
"claude_output": 15,
"openai_input": 2,
"openai_output": 12
},
{
"label": "Small",
"claude_input": 1,
"claude_output": 5,
"openai_input": 0.2,
"openai_output": 1.2
}
]各组模型按产品线中的位置对应,而不是按知名度对应。Frontier 对比的是 Claude Opus 5 和 gpt-5.6-sol。Workhorse 对比的是 Claude Sonnet 5 和 gpt-5.6-terra。Small 对比的是 Claude Haiku 4.5 和 gpt-5.6-luna。两家厂商还销售高于本段所列级别的产品,OpenAI 也继续按原价列出旧一代模型。在 Claude 一侧,该级别是 Fable 5。它的输入和输出价格都是 Frontier 行的两倍,但仍保持相同的 5 倍输出比例。因此,在假定 Opus 5 是账单上限之前,值得阅读Fable 5 的价格及其何时值得这一价格。一方使用旗舰模型、另一方使用低价模型进行比较,得出的数字没有意义。这也是大多数公开比较能够登上标题的原因。
本段有两点需要明确说明。Sonnet 5 的 2 和 10 是优惠价格。Anthropic 说明这些价格截至 31 August 2026,之后 Sonnet 5 的价格为 3 和 15。这项变化会使 Workhorse 级别从 Claude 小幅领先变为 OpenAI 明显领先,而且会在本文仍具参考价值期间生效。
第二点是一个值得记住的规律:上表每一行中,Claude 的输出价格恰好是其输入价格的 5 倍,而 OpenAI 的输出价格是输入价格的 6 倍。决定胜负随 token 组成变化的,正是这个比例,而不是绝对价格。
为什么每百万 token 的价格不能跨供应商比较
价格是每个 token 的费用。账单金额等于每个 token 的费用乘以 token 数量,而一段文本的 token 数量取决于模型,而不是文本本身。
Anthropic 对此有明确说明:Claude 4.7 及更高版本的模型,包括 Claude Opus 5 和 Claude Sonnet 5,使用更新的 tokenizer。对于相同文本,其生成的 token 数量比 Claude Sonnet 4.6 及更早版本多约 30%。价格没有变化,但账单金额变了。
因此,看起来相同的两个价格并不对应两张相同的账单。在相信任何比较结果(包括本比较)之前,请使用您自己的文本计算两边的 token 数量。
curl https://api.anthropic.com/v1/messages/count_tokens \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-sonnet-5",
"messages": [{"role": "user", "content": "Summarise the attached contract."}]
}'正常响应应是一个包含 input_tokens 的小型 JSON 对象。出现 401 表示 shell 中的关键变量为空。使用另一家供应商的 tokenizer 处理相同文本,将一方的数量除以另一方的数量,再将该比值乘以公布的价格,然后进行比较。如果该比值使某一家供应商相差超过约 1.2 倍,其影响将超过上方价格区块中的所有价格差异。
场景一:聊天功能
Web 应用中的支持助手。每月处理 120,000 轮对话。每轮会发送系统提示词、工具 schema、两段检索到的帮助台内容和几条较早的消息,约 1,400 个输入 token;模型回复约 220 个 token。该功能具有交互性,因此始终无法使用批处理折扣。将其部署在 workhorse 层级。
The data behind this chart
[
{
"label": "List price",
"claude_usd": "600.00",
"openai_usd": "652.80"
},
{
"label": "Cached prefix",
"claude_usd": "427.20",
"openai_usd": "480.00"
},
{
"label": "Small tier, cached",
"claude_usd": "213.60",
"openai_usd": "48.00"
}
]按目录价格计算,Claude 费用为 600.00,OpenAI 为 652.80。两者的输入费用相同,因为输入价格相同。全部差距都来自输出费用,而 Claude 的优势太小,不足以据此选择供应商。
现在将这 1,400 个输入 token 中的 800 个标记为稳定前缀:系统提示词和工具 schema 在不同轮次之间不会变化。两家供应商对缓存命中均按基础输入价格的 10% 收费。Claude 的费用降至 427.20,OpenAI 的费用降至 480.00。缓存带来的收益大于供应商选择本身,而且两个平台都支持缓存。
Claude 在这里处于劣势。大多数支持答复不需要 workhorse 模型。将相同流量迁移到 small 层级后,Claude 的费用为 213.60,OpenAI 的费用为 48.00。用前者除以后者,Claude 完成相同任务的成本约为 4.5 倍。Claude Haiku 4.5 的输入价格为每百万输入 token 1,而 gpt-5.6-luna 为 0.2;无论采用多少缓存,都无法弥合近 5 倍的差距。如果工作负载适合 small 模型,OpenAI 更便宜,而且价格优势很大。
场景二:长上下文文档处理流水线
每月处理 25,000 份合同。每个请求都包含相同的 9,000-token 指令和 JSON schema,随后是 12,000 token 的合同正文,模型返回约 700 token 的结构化字段。在这项任务中,输出不足总 token 数的 4%,而这一点决定了比较结果。
The data behind this chart
[
{
"label": "Chat feature",
"claude_usd": "427.20",
"openai_usd": "480.00"
},
{
"label": "Document pipeline",
"claude_usd": "820.00",
"openai_usd": "855.00"
},
{
"label": "Coding agent",
"claude_usd": "116.10",
"openai_usd": "124.20"
}
]双方都缓存 9,000-token 前缀后,Claude 的费用为 820.00,OpenAI 的费用为 855.00。输入部分的费用精确到美分,因为 2026 年 8 月两者的输入单价相同。全部差异都来自输出部分:Claude 的输出单价是输入单价的 5 倍,OpenAI 则是 6 倍。
这项任务还可以使用批处理。两家厂商都为异步任务的输入和输出提供 50% 折扣,因此两边的总费用都会减半,差距的比例保持不变。批处理是任一平台提供的最大单项折扣,而夜间运行的文档流水线始终可以使用该功能。
Claude 的劣势仍然来自之前提到的相同层级逻辑。按照固定 schema 提取字段,正是小型模型擅长的任务;在这里,输入占总 token 数的 97%。下调一个层级后,OpenAI 的输入单价变为原来的 0.1 倍,Claude 的输入单价变为原来的 0.5 倍。先使用 200 份文档测试小型模型,再决定是否确实需要更大的模型;评估方法应与为任务选择合适的 Claude 层级时使用的方法相同。
场景三:持续运行的编码代理
一名开发者在 VPS 上运行代理,每月大约进行 900 次模型交互。每次交互包含约 60,000 个仓库上下文输入 token,其中 80% 命中缓存,并生成约 1,800 个编辑和说明 token。按顶级模型档位计价,因为编码任务中的能力差距会直接带来实际成本。
Claude 的费用为 116.10,OpenAI 的费用为 124.20。输入费率相同,缓存读取费率相同,Claude 更低的输出费率使其成本低约 7%。
这个 7% 的差异处于前文 tokenizer 误差范围内,因此应将该场景视为费率相同。真正不同的是计费模式。对于这种用量的一名开发者,订阅席位通常比按量 API 调用更便宜;计入订阅费用后,整个比较结果都会改变。在让代理使用按量计费前,请先完成API 与订阅费用的比较。如果采用按量计费,应先了解 token 的消耗位置,因为编码代理的 token 用量主要来自每次交互重新发送的上下文,而不是它生成的代码。
决定账单的倍数项
标题价格是这份清单中影响最小的一项。下面每一项都会让实际账单产生更大的变化,超过同一档位两家供应商之间的价格差。
缓存输入。两家供应商都会对缓存命中收取基础输入价格的 10%。Anthropic 还会收取缓存写入费用:缓存条目保留五分钟时,按基础输入价格的 1.25 倍收取;保留一小时时,按 2 倍收取。后续命中会按读取价格刷新该条目。因此,五分钟缓存条目命中一次后即可收回成本。请求间隔较长的工作负载写入次数多于读取次数,此时缓存成本高于节省的费用。流量稳定时,缓存效果较好。流量突发时,缓存效果较差。
批处理折扣。两家平台都对输入和输出提供 50% 的折扣,但仅适用于异步任务。如果任务可以等待,在任一供应商处都能将账单减半,并且可与缓存叠加。
输出占比。Claude 的输出价格是输入价格的 5 倍。OpenAI 的输出价格是输入价格的 6 倍。在输入价格相同的情况下,写入的令牌占比越高,Claude 的价格优势越明显;对于输入占主导的工作负载,结论相反。
重试。每次重试都要再次支付完整的输入费用,并且不会返回可用结果。如果 6% 的请求因架构验证失败而重试,实际输入量会比计划值多 6%。应将重试记录为成本项,而不是错误项。团队通常最后才发现这个倍数,而它往往比团队花费一周争论的供应商价格差还大。
哪一方在哪些方面处于劣势
Claude 在小型档位上完全落败。gpt-5.6-luna 的每百万输入 token 价格为 0.2,而 Claude Haiku 4.5 为 1;输出价格分别为 1.2 和 5。对于高流量分类和短文本提取,Claude 的成本大约高出四倍。
从 1 September 2026 起,Claude 在主力档位上处于劣势,因为 introductory rate 到期后,Sonnet 5 的价格将调整为 3 和 15,而 gpt-5.6-terra 的价格保持不变。Claude 在前沿档位的输出价格上占优,但这一差距可能被您自己的 token 用量抵消。2026 年 8 月,双方在输入占主导的工作负载上都没有优势,因为双方的每百万输入价格均为 2,输入部分的价格相同。
如何在自己的流量上进行测量
读取每个响应中的 usage 对象,并为每个请求记录 4 个数值:输入 token、输出 token、缓存读取 token 和缓存写入 token。在 Claude API 中,这些数值分别位于 input_tokens、output_tokens、cache_read_input_tokens 和 cache_creation_input_tokens。按天汇总这些数值,乘以当前费率,再将总额与账单进行比较。两者之间的差额通常来自重试,或来自您忘记已经发布的代码路径。
使用一周的真实流量进行比较,不要只使用示例提示词。比较每个已完成任务的成本,而不是每个 token 的成本。一个模型如果以 2 倍费率一次完成任务,成本可能低于一个以一半费率但需要尝试 3 次的模型。每个 token 的成本是费率。每个已完成任务的成本才是账单金额。
在让任何服务持续运行前,设置明确的支出上限。两个平台都可在控制台中设置支出限制,而陷入重试循环的代理可能在一夜之间耗尽一个月的预算。请按照 持续运行代理的成本控制 的方式接入。如果您要在自己管理的服务器上构建第一个版本,在 VPS 上构建第一个 Claude API 应用介绍了密钥处理方式,以及该计算逻辑所依赖的请求循环。
FAQ
Claude API 是否比 ChatGPT API 更便宜?
不一定。2026 年 8 月,两个平台的 frontier 和 workhorse 层级对每个输入 token 收取相同费用,而 Claude 的输出 token 费用更低,因此在输出占比较高的工作负载中,Claude 的运行成本低几个百分点。在小型层级中,OpenAI 的 gpt-5.6-luna 每个输入 token 的费用是 Claude Haiku 4.5 的五分之一,因此高容量分类任务使用 OpenAI 便宜得多。请根据您自己的 token 组合计算实际成本,因为这么小的差异最终取决于工作负载,而不是价目表。
为什么相同文字在不同 API 上的 token 数量不同?
因为每个模型都有自己的 tokenizer,token 数量取决于模型。Anthropic 文档说明,Claude 4.7 及更高版本的模型处理相同文本时,生成的 token 大约比 Claude Sonnet 4.6 及更早版本多 30%。将您自己的文本发送到每个供应商的 token 计数 endpoint,计算两个结果的比值,然后在比较前将该比值乘入公布的费率。20% 的 token 差异会超过大多数公布的费率差异。
prompt caching 是否可能让账单更高?
是,在 Anthropic 上可能如此。对于五分钟的缓存条目,写入缓存的费用是基础输入费率的 1.25 倍;对于一小时的缓存条目,费用是 2 倍;命中缓存的费用是 0.1 倍。如果您的流量突发性较强,大多数条目在被读取前就已过期,您只会支付写入溢价,却没有缓存读取收益。请在日志中比较 cache_creation_input_tokens 和 cache_read_input_tokens。如果比值接近 1,说明缓存正在增加成本,因此应延长条目有效期或删除该缓存。
我应该通过 API 运行 coding agent,还是使用订阅?
对于普通用量的单个开发者,订阅席位通常比按量计费的 API 更便宜,因为 coding agent 每次交互都会重新发送较大的上下文,而该上下文每次都会计费。请先按量统计一周,然后将 API 总费用与席位价格进行比较。当用量具有突发性,或您需要订阅席位无法提供的程序化访问时,API 更有优势。如果促使您使用 API 的原因是达到用量限制,而不是价格,那么解决 Claude 用量限制的方法中有几种方案的成本低于改用按量计费。