96SEO 2026-05-01 15:15 2
Claude Code 凭借其强大的代码理解和生成Neng力,迅速成为了许多开发者终端里的常客。但是每当我kan着屏幕上飞速滚动的代码,心里总会泛起一丝隐隐的焦虑:这玩意儿到底烧了我多少Token?特别是当你使用的是按量付费的API或者AWS Bedrock时那种“盲盒”式的消费体验实在让人不太踏实。

官方的控制台往往有延迟,而且不够细致。我们Neng不Neng自己动手,从本地数据中挖掘出真相?答案是肯定的。今天我们就来聊聊如何通过技术手段,把 Claude Code 的每日 Token 使用量扒个底朝天顺便kankan那些被“缓存”掩盖的计费细节。
为什么你的账单kan起来总是“偏低”?在深入代码之前,我们必须先搞懂一个核心概念,否则你算出来的数字永远会对不上。hen多朋友会天真地以为:费用 = × 单价。Ru果你真这么算,大概率会被结果吓一跳——明明用了hen久,怎么费用这么低?或者反过来明明没怎么用,怎么突然扣了一大笔?
秘密就在于 Prompt Caching。
Claude Code 的工作方式非常特别。在一个典型的编程 Session 里它需要把你的整个代码库、历史对话记录一股脑地塞进上下文窗口。这个量级动辄几十万 Token。Ru果每次请求dou重新传输并计费,那成本绝对是爆炸性的。
Anthropic 的设计非常精妙:
第一轮对话: 系统会把这些庞大的上下文写入缓存,这叫 cache_creation。这时候你是要付全款的,而且根据缓存时效,价格还略有不同。
后续对话: 只要你的代码库没大变,系统就会直接命中缓存,这叫 cache_read。这时候的价格极其低廉,大约只有原价的 10% 左右。
所以在一个高强度的开发过程中,cache_read 往往Neng占到总输入 Token 的 90% 以上。这意味着,实际费用比“全量输入”计费要便宜大概 90%。Ru果你忽略了这一点,单纯把 Input Tokens 乘以单价,算出来的账单会比实际高出数倍,徒增烦恼。
既然官方仪表盘不够实时那我们就得自力geng生。好消息是Claude Code 非常“老实”,它把所有的交互细节dou记录在了你的本地机器上。
打开你的终端,或者文件管理器,前往这个目录:
~/.claude/projects/
你会kan到一堆名字有点奇怪的文件夹,比如 -Users-alice-fe-dashboard。这其实是把你的项目路径里的斜杠 / 替换成了横杠 -。进入这些文件夹,里面躺着若干个 .jsonl 文件。每一个文件,就代表了一次完整的对话 Session。
这些日志文件是纯文本的 JSONL 格式,每一行dou是一条消息记录。我们只需要找到 type == "assistant" 的行,里面就藏着我们要的宝藏——usage 字段。
一个典型的数据结构长这样:
{
"type": "assistant",
"timestamp": "2026-03-20T09:14:32.451Z",
"message": {
"model": "claude-sonnet-4-6",
"usage": {
"input_tokens": 1024,
"output_tokens": 8192,
"cache_read_input_tokens": 487321,
"cache_creation_input_tokens": 62144,
"cache_creation": {
"ephemeral_5m_input_tokens": 50000,
"ephemeral_1h_input_tokens": 12144
}
}
}
}
kan到这里你应该豁然开朗了。数据非常完整,包括输入、输出,以及Zui关键的缓存读写细分字段。只要把这些数据提取出来Zuo个汇总,我们就Neng得到一份精准的账单。
动手实战:打造离线统计脚本既然数据结构清晰了接下来就是写个脚本自动化处理。为了保持轻量,我们不需要 Python 或 Node.js,原生的 Bash 配合 jq和 awk就足够了。
整个逻辑其实就是一个简单的数据流管道:
定位文件: 用 find 命令把 ~/.claude/projects 下所有的 .jsonl 文件找出来。
清洗数据: 用 jq 过滤出 assistant 类型的消息,提取时间戳、模型名以及各种 Token 数量,并转换成 CSV 格式流。
聚合统计: 用 awk 按模型分组,累加 Input、Output、Cache Hit 等数值。
计算费用: 根据预设的模型单价表,算出Zui终的美金花费。
这里有个小坑要注意:cache_creation_input_tokens 是两种缓存写入的总和,但计费时5分钟缓存和1小时缓存的单价是不一样的。所以脚本里必须分别处理 ephemeral_5m_input_tokens 和 ephemeral_1h_input_tokens,不Neng只kan总和。
为了方便大家直接使用,我把核心逻辑拆解一下。我们需要定义一个时间范围,比如“今天”、“本周”或者“全部历史”。利用 ISO 8601 时间字符串的字典序特性,我们直接比较字符串就行,不用转成时间戳,省了不少事。
比如查kanZui近一小时的数据,我们Ke以这样写:
SINCE=$
find ~/.claude/projects -name "*.jsonl" | xargs jq -r --arg since "$SINCE" '
select(
.type == "assistant"
and .message.usage != null
and .timestamp>= $since
) |
| @csv'
拿到 CSV 数据流后就轮到 awk 登场了。这里有个难点:Bash 本身不支持浮点数运算。为了不引入 bc 或 Python 这种重型依赖,我们直接在 awk 的 BEGIN 块里完成所有的乘法和加法。
计费公式大概长这样:
cost = input_tokens × $3.00 / 1,000,000
+ output_tokens × $15.00 / 1,000,000
+ cache_read × $0.30 / 1,000,000
+ cache_write_5m × $3.75 / 1,000,000
+ cache_write_1h × $0.30 / 1,000,000
Zui后为了让输出好kan点,我们还得写个简单的格式化函数,给大数字加上千位分隔符。毕竟kan到 1000000 和 1,000,000 的心理冲击力是不一样的。
写好脚本后别把它扔在角落里吃灰。我们Ke以把它配置成 Claude Code 的 Skill,或者直接加个 Shell 别名。
Ru果你想在终端里随时查kan,只需在 ~/.zshrc 或 ~/.bashrc 里加一行:
alias token-usage='bash ~/.claude/skills/token-usage/scripts/token-stats.sh'
以后你只需要敲几个字母就Nengkan到报表:
# 查kan今天的用量
token-usage
# 查kan本周
token-usage week
# 查kan近一个月
token-usage month
# 查kan全部历史
token-usage all
# 按项目过滤
token-usage week --project api-service
token-usage month -p dashboard
运行效果大概是这样的,是不是感觉瞬间掌控了全局?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Claude Token Usage — Today
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
API calls: 156
Input tokens: 125,400
Output tokens: 342,100
Cache hit tokens: 890,200
Cache write 5m tokens: 45,000
Cache write 1h tokens: 12,000
Total input: 1,072,600
Est. cost : $4.85
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
不想写代码?试试现成的轮子
我知道,不是每个人dou喜欢在终端里敲命令行。Ru果你geng倾向于可视化的工具,社区里也有不少优秀的现成方案。
CCSeva:Mac 用户的菜单栏神器Ru果你是 macOS 用户,强烈推荐 CCSeva。这是一个开源软件,直接驻扎在你屏幕顶部的菜单栏里。它不仅Neng实时显示 Claude Code 的 Token 消耗量,还Neng计算产生的费用。点开图标,就Nengkan到详细的统计图表。对于喜欢“一眼kan穿”的用户来说这简直是福音。
你Ke以在它的 GitHub 主页找到下载链接,安装过程也就是拖拽一下的事。
claude-hud:极客的终端状态栏Ru果你是重度终端用户,大概率用过 tmux 或 iTerm2。claude-hud 这个项目非常硬核,它把 Claude Code 的实时状态直接嵌入到了你的终端状态栏里。
想象一下你在写代码的时候,右下角一直显示着: claude-sonnet-4-6 ↑ 4.2k ↓ 18k cache 87% $0.18。一眼就Nengkan到当前 Session 用的是哪个模型,输入输出了多少 Token,缓存命中率是多少,以及本次对话大概花了多少钱。这种实时感知,对于用 API Key 或 AWS Bedrock 的用户来说真的非常爽。
还有一个叫 ccusage 的工具,它不仅仅支持 Claude Code,还Neng分析 Codex、OpenAI Code 等其他工具的数据。它也是基于本地 JSONL 日志文件,提供了 dailymonthlysession 等多种维度的统计命令。Ru果你不想自己写脚本,直接 npx ccusage 也是一个非常省心的选择。
无论你是选择自己动手写 Bash 脚本,还是使用 CCSeva 这样的现成工具,核心目的dou是一样的:消除信息不对称。
AI 编程工具虽然强大,但Ru果不加节制地使用,月底的账单可Neng会让你大吃一惊。通过理解 Prompt Caching 的机制,通过监控本地日志文件,我们不仅Neng知道“花了多少钱”,还Neng明白“钱花在哪里了”。是输出太贵?还是缓存没命中?或者是某个项目在偷偷消耗配额?
这套方案完全离线运行,不需要任何后台服务,既安全又高效。希望这篇文章Neng帮你建立起自己的成本监控体系,让你在享受 AI 带来的便利时依然Neng保持对预算的绝对掌控。毕竟省下来的钱,买杯咖啡不香吗?
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback