Claude Code

Claude Code Subagent 真的省 Token 吗?我看了 327 个真实会话

Subagent 的卖点是"独立上下文不污染主线程"——听上去省 token。但 Vibe Usage 上 327 个 Claude Code 用户的真实数据告诉我,subagent 用得不对反而更贵。

Subagent 是 Claude Code 的高级特性——主线程派一个子任务给独立上下文,子上下文跑完返回结果。

理论上"独立上下文不污染主线程"应该省 Token。但实际数据告诉我:Subagent 用得不对,反而比主线程直接做更贵

这篇用 327 个 Claude Code 真实用户的数据告诉你 Subagent 真省钱的边界。

数据先放出来

我看 Vibe Usage 上 30 天的 Claude Code 数据:

  • 327 个用户里使用 Subagent 的:约 89 人(27%)
  • Subagent 用户的人均月消耗:1.92 亿 token
  • 不用 Subagent 的人均:1.43 亿 token

Subagent 用户消耗比不用的 多 34%

数字不撒谎——使用 Subagent 不一定省钱。但这个对比有偏置(Subagent 用户本身可能就是重度用户)。我们要看更细的数据。

真正影响的不是用不用,是怎么用

我把 89 个 Subagent 用户分两组:

组 A:高频使用 Subagent(每周 > 10 次)

  • 30 个用户
  • 人均月消耗:2.4 亿
  • 单 subagent 调用平均消耗:65K token

组 B:低频使用 Subagent(每周 < 5 次)

  • 59 个用户
  • 人均月消耗:1.6 亿
  • 单 subagent 调用平均消耗:42K token

高频用户单次调用消耗高 55%。原因是他们倾向"凡事都派 subagent"——每个小任务都开独立上下文,每次都付重建上下文的成本。

Subagent 的真实成本结构

每次 spawn subagent 包含:

  1. Subagent 自己的系统提示(约 3-5K token)
  2. 从主线程传过去的 context(你显式传多少就多少)
  3. subagent 自己读的文件 / 跑的工具(5-50K)
  4. subagent 的 reasoning + output(1-10K)

总成本一次 subagent 调用大约 10-70K token。如果你用 subagent 替代主线程的"读一个文件 + 给个建议"——这个成本是不必要的。

Subagent 真省钱的场景

不是说 subagent 没用。但它只在特定场景省钱:

1. 主线程上下文已经超长

主线程累计 input 已经 50 万 token。这时候让主线程多读一个文件多花 50 美分。但 spawn 一个 subagent 跑同样的事 5 美分——节省明显。

2. 任务有清晰边界、不依赖主线程历史

比如"格式化这个文件"、"跑一遍 lint 报告问题"——这些任务和主线程在做的事无关。subagent 隔离反而合适。

3. 需要并行

主线程让 3 个 subagent 同时分析 3 个不同文件——并行节省时间,单 subagent 成本可控。

Subagent 不省钱(甚至更贵)的场景

1. 短主线程下的小任务

主线程才 5 万 token,subagent 一开就是 15K token 起步——不如主线程直接做。

2. 任务依赖主线程上下文

subagent 需要"知道前面的设计原则"——你必须把主线程相关历史传过去。传 30K token 给 subagent,再 subagent 跑 30K token 完成任务——总 60K,比主线程直接做(多 8K)贵 7 倍。

3. 一次性、低频任务

只跑一次的事,没有 amortize 优势。subagent 的固定开销(系统提示)每次都要付。

怎么判断

我自己的简单决策:

主线程当前累计 token 任务是否依赖主线程 推荐
< 30万 主线程做
< 30万 主线程做(成本差不多)
30万 - 100万 主线程做或精简 context 后 subagent
30万 - 100万 Subagent
> 100万 任意 Subagent(或先 compact 主线程)

真实节省案例

我有一个 monorepo 项目,单 session 累计经常 80 万 token。我之前每次想跑 lint 都让主线程做——每次让 input 涨 30K,后续每条消息都贵。

切到"lint 用 subagent"之后:

  • 主线程不再被 lint 结果污染
  • 每次 lint 单独 subagent 调用,约 12K token
  • 主线程后续消息每条节省 30K input

每次会话省 5-15 美分。一天跑 5 次会话省 0.25-0.75 美元——一个月省 7-22 美元。值。

但如果我的 session 一般只 10 万 token,这个优化基本没意义。

怎么验证你自己的 Subagent 是不是在省钱

打开 Vibe Usage 看:

  • 你过去 30 天 Subagent 调用次数
  • 每次 Subagent 的平均 token 消耗
  • 这部分占你总消耗多少

如果 Subagent 占比超过 30%,且你 Claude Code 总消耗反而高于群体均值——你可能在滥用 Subagent。

我自己的数据:Subagent 占比 12%,消耗 18 美元 / 月——折算下来比"不用 subagent"的对照组省了约 8 美元 / 月。这是真实节省。

结论

Subagent 不是 silver bullet——它是有专门用途的工具。

用对了:长 session、独立任务、需要并行。这种场景下能省 10-30%。

用错了:短 session 强行抽象、依赖主线程上下文。这种场景下反而贵 30-50%。

用 Vibe Usage 看你自己的真实情况——决定是要更用 Subagent 还是少用。

相关阅读

相关阅读

Claude Code Subagent 真的省 Token 吗?我看了 327 个真实会话