很多开发者第一次接 Claude,卡在同一个问题上:同样一句话,为什么有的模型贵出好几倍,账单上还多出「缓存写」「缓存读」这些没听过的项。这篇不讲具体数字,只讲清楚 Claude 的 token 是怎么被计价的——哪种模型按什么口径收费、哪些因素会让单价变档、去哪一页看当期真实价格,最后给你一套自己算一遍的步骤。
很多开发者第一次接 Claude,卡在同一个问题上:同样一句话,为什么有的模型贵出好几倍,账单上还多出「缓存写」「缓存读」这些没听过的项。其实原因不复杂——Claude 不是按「说了几句话」收费,而是按 token 分几条线计价,进和出、普通请求和缓存请求,走的都是不同的单价表。
这篇不讲具体数字,因为数字会变。我们只把 Claude 的 token 是怎么被算钱的讲清楚:哪种模型按什么口径收费、哪些因素会让单价变档、去哪一页看当期真实价格,最后给你一套能自己算一遍的步骤。看完你至少能判断:手上这个任务,到底该用哪档模型、账单里多出来的那几项是怎么回事。
先搞懂 Claude 的 token 是怎么被算钱的
Claude 按量计费的核心是两条线:输入 token 单价和输出 token 单价。同一段内容,你发给它算一笔,它回给你再算一笔,不是「一问一答一个价」。所以预算超了,先看是输入太长还是输出太多,这两个方向的优化手段完全不同。
- 输入侧和输出侧单价通常不在同一档,输出普遍更贵;任务里谁占大头,决定了你该往哪边省
- 不同模型档位(旗舰、均衡、轻量)走的是不同的单价表,选错档位比调错参数代价大得多
- 单价会随官方调价变动,任何文章里的数字都只能当参考,当期数字要去站内核对
- 同一模型下,普通对话和带缓存、带批处理的请求,账单结构也不一样,不能只看一个「单价」
| 计价项 | 什么时候产生 | 对账单的影响 |
|---|---|---|
| 输入 token | 每次把内容发给模型时 | 按输入单价乘 token 数 |
| 输出 token | 模型生成回复时 | 按输出单价乘 token 数,通常更贵 |
| 缓存写入 | 首次把一段内容存进缓存时 | 独立计价,不是白存 |
| 缓存读取 | 后续请求命中缓存时 | 独立计价,单价通常低于普通输入 |
| 批量通道 | 走批处理/异步提交时 | 可能有折扣,但交付时间变长 |
同一模型,什么情况下单价会变档
同一个模型,账单金额可能差好几倍,原因往往不在模型本身,而在请求的形态。下面这几件事都会让单价换一档,接之前最好逐条对一遍。
- 上下文长度
- 超长输入可能触发更高的计价档位,长文档类任务要单独算一遍
- 缓存命中
- 缓存写入和读取是独立计价项,命中能省钱,但不是每个请求都能命中
- 批量/异步通道
- 走批处理往往有折扣,代价是交付时间,值不值得等要按业务算
- 区域与渠道
- 走不同云厂商托管入口时计价口径可能不同,横向比较前先对齐单位
这里要提醒一句:缓存的命中条件和它到底省在哪一段,站内已经有专文拆过,这篇不重复。你只需要记住一件事——如果你的预估里没把缓存写和缓存读分开列,那这个预估和真实账单大概率对不上。
去哪看当期价格,而不是记数字
价格是会动的,背数字没有意义。正确做法是把它当成一个查表动作:需要的时候去站内对应页面抄当期数字,抄完立刻算,不要凭记忆估。
- 第一步,看官方单价基准到 /official-api/providers/anthropic 核对,那页是按模型分档列的价格与规格,输入输出分开看
- 第二步,横向比多家口径需要比较不同厂商时,从 /official-api 总入口进,避免只拿一家数字就下结论
- 第三步,做单价换算手上只有人民币预算时,用 /tools/token-price-calculator 做单价换算
- 第四步,算整月量用 /tools/model-cost-calculator 把月调用量套进去算总额,别停在单次价格
- 第五步,盯变动和真实用量用 /price-watch 看价格变动记录,用 /usage 看自己真实的用量分布
这五步做完,你手里会有一张「当期数字 + 自己的用量」的对照表,而不是一堆过期记忆。以后别人问你 Claude 的 token 多少钱,你也能说清楚是哪个模型、哪条线、什么条件下的价格。
按订阅还是按量:先分清你在为哪种东西付钱
这两者经常被混着比,其实买的不是同一种东西。订阅制买的是额度使用权,按量 API 买的是 token 本身。弄混了,就会得出「订阅更便宜」或「API 更便宜」这种没有前提的结论。
| 维度 | 订阅制 | 按量 API |
|---|---|---|
| 你付钱买的是 | 额度使用权 | token 本身 |
| 适合谁 | 人天天在用、用量波动大 | 接进产品、调用量可预测 |
| 预算控制 | 固定档位,超了降速或换档 | 随用量浮动,需要自己设上限 |
| 附带的东西 | 客户端体验和会员功能 | 更细的参数和集成控制 |
判断标准可以简单化成一句:如果你的月用量换算成 token 价之后,低于某档订阅的等效成本,而且你不需要订阅附带的客户端体验,那就走 API。各档订阅额度怎么折算,见 /coding-plans/anthropic-claude-product-subscription-pro,那页有当期口径。
反过来也有不适用的场景:团队多人共用、需要固定预算上限、或者必须用客户端里的会员功能,这时候订阅更省心,别硬按 token 算,算出来的结论落地会很难受。
自己算一遍的四个步骤
与其看别人的估算,不如拿自己的真实数据算一遍。下面四步,第一次做大概十几分钟,之后改改数字就能复用。
- 取真实样本挑一段你实际会发的请求,量出输入 token 和输出 token 的比例,别凭感觉猜
- 抄当期单价到 /official-api/providers/anthropic 抄输入、输出两条线的当期单价,不要用平均值代替
- 套用量算基础值预计月调用次数 × 单次输入 token × 输入单价,输出用同样算法,两边相加;缓存和批量折扣等基础值算完再单独打折
- 和预算比一遍把结果和你的预算上限比,差距超出可接受范围就换档位或换模型;换之前用 /tools/model-cost-calculator 复核,别拍脑袋
Claude 的 token 价格不是一个数字,而是一组条件:哪个模型、走哪条线、有没有缓存、是不是批量,条件不同,单价就不同。下一步与其继续记数字,不如现在去站内把当期单价抄一遍,再用自己的用量算一次;算完你会发现,该省的省在哪、该换的换哪档,都清楚了。→
常见问题
Claude 的 token 价格是不是所有模型都一样?
不一样。Claude 分旗舰、均衡、轻量几个档位,每个档位的输入和输出单价都不同,输出普遍高于输入。而且同一模型在超长上下文、缓存、批量通道这些条件下计价还会变档。所以问「多少钱」之前要先说清用哪个模型、什么调用方式。
为什么我按单价估的账单和实际差挺多?
常见原因是漏算了输出侧、缓存读写项、以及长上下文触发的档位变化,另外重试和工具调用也会重复计费。建议先按真实样本量一遍输入输出比例,再对照 /usage 里的实际分布校准,光看单价估出来的数通常会偏低。
想省钱的话,是换便宜模型还是做优化?
先看你的任务对质量有多敏感。质量容忍度高就直接降档换轻量模型,收益最直接;质量不能降就做结构优化,比如压缩提示、拆分长文档、提高缓存命中。两条路可以叠加,但顺序错了会白花时间。具体单价去 /official-api/providers/anthropic 核对。