Claude Run
CLAUDE RUNBLOG
BLOG

Claude Code 한 달 치를 뜯어봤다 — 비용의 71%는 캐시 읽기였다

2026-07-30 · 7

Claude Max 20x($200/월)를 한 달 굴린 기록을 열어봤다. 토큰 203억 개, API 정가로 환산하면 $15,514. 구독료의 78배다.

배율 자체보다 궁금했던 건 그 돈이 어디로 갔느냐였다. 막연히 “출력 토큰이 비싸니까 거기겠지” 싶었는데, 갈라보니 완전히 달랐다.

토큰의 98%는 캐시 읽기다

모델별로 나눈 7월 한 달 토큰이다.

모델입력출력캐시읽기캐시쓰기
opus-4-82.1M28.0M11,129M220M
fable-50.6M7.0M2,981M43M
opus-50.0M6.6M3,138M36M
sonnet-50.3M5.6M3,007M52M
합계3.1M47.4M20,278M352M

캐시 읽기가 전체 토큰의 98.1%다. 입력·출력을 다 합쳐도 1%가 안 된다. 에이전트가 긴 컨텍스트를 매 턴 다시 읽기 때문인데, 그 규모가 이 정도일 줄은 몰랐다.

그런데 비용에서도 71%다

캐시 읽기는 입력 단가의 10분의 1이다. 토큰이 98%여도 비용에선 작을 거라 생각했는데, 물량이 워낙 커서 결국 비용에서도 압도적이었다.

항목물량단가비용비중
캐시 읽기20,278Minput×0.1$11,01971%
캐시 쓰기352Minput×2~$3,10020%
출력47.4M$25~50/1M~$1,1908%
입력3.1M$5~10/1M~$160.1%

Opus 4.8 하나만 봐도 캐시 읽기 11,129M × $0.50 = $5,565로, 그 모델 비용 $8,425의 3분의 2다. 출력 토큰은 8%밖에 안 된다.

캐시 TTL은 역산으로 알 수 있다

위 표에서 캐시 쓰기 단가가 input×2인 게 눈에 걸렸다. 프롬프트 캐시 쓰기는 5분 TTL이 1.25배, 1시간 TTL이 2배다. 즉 이 계정은 1시간 TTL을 쓰고 있다는 뜻이다.

설정을 뒤질 필요 없이 청구 내역만으로 알 수 있다. 아는 항목을 먼저 빼고, 남은 금액을 캐시 쓰기 물량으로 나누면 된다.

단계계산
캐시읽기11,129M × $0.5$5,564
출력28.0M × $25$700
입력2.1M × $5$10
나머지$8,425 − $6,275$2,150
캐시쓰기 단가$2,150 ÷ 220M$9.77/1M

입력 단가 $5의 1.95배. 5분 TTL(1.25배)이 아니라 1시간 TTL이다. 세션을 오래 붙잡고 쓰면 5분은 계속 만료돼서 1시간 쪽이 유리한데, 대신 쓰기 비용이 60% 비싸진다. 배율 관점에선 캐시 쓰기 비중을 8%에서 20%로 밀어올린 요인이었다.

서브에이전트가 도구 호출의 17%

하나 더. 사용량을 세는 스크립트가 projects/*/*.jsonl만 훑고 있었는데, 서브에이전트 기록은 <세션>/subagents/*.jsonl에 따로 쌓인다. 파일 153개만 보고 있었고 832개를 통째로 놓치고 있었다.

지표수정 전수정 후
도구 호출43,15152,283
커밋976994
캐시 적중98.1%97.9%

서브에이전트가 도구 호출의 17%(9,042회)였다. 다만 채팅 수에는 넣지 않았다. 서브에이전트의 user 레코드는 사람이 친 게 아니라 부모 에이전트가 던진 프롬프트라서, 그걸 대화로 세면 “사람이 얼마나 쳤나”가 부풀려진다. 실제로 그 레코드 9,902건은 전부 isSidechain: true로 표시돼 있어 깔끔하게 갈린다.

그래서 뭘 하면 되나

배율을 올리고 싶다면 출력이 아니라 컨텍스트다. 긴 컨텍스트를 오래 붙잡고 서브에이전트를 병렬로 돌리는 작업이 캐시 읽기를 만들고, 그게 비용의 71%다. 짧게 묻고 끊는 사용은 아무리 많이 해도 이 물량이 안 나온다.

반대로 절약이 목적이라면 손댈 곳도 같은 자리다. 출력 토큰을 줄이는 건 8%를 건드리는 일이고, 컨텍스트를 줄이면 71%를 건드린다.

표본은 한 명이다. 이 글의 숫자는 내 계정 한 달치를 뜯어본 것이고, 통계가 아니다. 모델 믹스·작업 성격에 따라 구성비는 크게 달라질 수 있다. 다만 “캐시 읽기가 비용의 대부분”이라는 구조 자체는 에이전트형 사용이면 대체로 비슷하게 나올 것이라고 본다. 본인 숫자는 npx @m1kapp/clauderank 한 줄로 바로 볼 수 있다.