Claude Code 토큰은 실제로 어디에 사용되는가. 출력(Output)이 차지하는 비중은 0.2%다.
요약
이 글은 Claude Code 사용 시 토큰이 실제로 어디에, 얼마나 많이 사용되는지 측정하고 분석합니다. 핵심 내용은 모델의 답변(Output)보다 이전 대화 기록을 재전송하는 컨텍스트(Re-sent context)가 압도적으로 많은 비용과 토큰을 차지한다는 것입니다. 이는 매 턴마다 전체 대화 내용을 다시 전송하기 때문에 발생하는 현상입니다.
핵심 포인트
- Claude Code는 답변(Output)보다 이전 대화 기록(Context) 재전송에 토큰이 집중됩니다.
- 토큰 사용량은 크기보다는 세션 내 '머무르는 턴 수'에 비례합니다.
- Anthropic의 캐싱 덕분에 컨텍스트 읽기 비용은 일반 입력 대비 저렴하지만, 여전히 가장 큰 비용 요인입니다.
- 출력(Output) 토큰이 전체 비용에서 차지하는 비중은 생각보다 낮습니다.
점심시간 전에 사용량 제한에 도달했습니다. 그래서 온라인에서 모두가 하는 대로 합니다. AI가 말을 적게 하도록 만듭니다. '훌륭한 질문입니다!' 같은 문구를 금지하고, 요약 기능을 자르고, 답변을 줄여주는 스킬 중 하나를 설치합니다.
저는 토큰이 실제로 어디에 사용되는지 알고 싶어서 세어보았습니다. 추정치가 아닙니다. 계산했습니다. Claude Code가 이미 사용자 컴퓨터에 보관하고 있는 기록(transcript)에서 측정한 것입니다. 저의 모든 세션, 총 173개이며, 약 60,000개의 턴(turns)이 있었습니다.
Claude가 제게 답한 모든 내용은 토큰의 0.2%에 불과했습니다. 나머지는 제가 직접 입력한 세션 내용이었습니다.
이 수치는 실제이지만, 이것만이 전부는 아닙니다. 왜냐하면 재전송되는 토큰들 대부분은 비용이 저렴하기 때문입니다. 이 게시물은 두 가지 측면을 다룹니다. 즉, 토큰이 어디에 사용되는지, 그것들이 실제로 얼마의 비용을 차지하는지, 그리고 숫자를 움직이는 몇 가지 중요한 요소들입니다.
계산 결과
터미널에서 얻은 모든 프로젝트를 아우르는 요약본입니다:
$ baggage --all
baggage — 173 sessions, all projects, 60,454 turns
...
두 줄이 중요합니다. 출력(Output) (Claude가 작성한 모든 답변, 모든 코드 라인, 그리고 그 사고 과정까지 포함)은 56.6백만 토큰입니다. **재전송된 컨텍스트(Re-sent context)**는 253억 토큰입니다. 이는 대략 450:1의 비율입니다.
저는 이런 형태를 처음 본 것이 아닙니다. Claude Code에 대한 GitHub issue에서도 다른 사람의 기록 30일 동안 같은 것을 발견했으며, dev.to 게시물에서는 32개 세션에 걸쳐 0.5%의 출력을 측정했습니다. 다른 사람, 다른 작업이지만 그림은 같습니다. 다만 그들이 보여주지 않는 것은 한 세션에서 _어떤 것들_이 가장 많은 비용을 차지하는지, 그리고 그것이 청구서에 어떤 의미를 가지는가 하는 점입니다. 이것이 이 게시물의 나머지 내용입니다.
왜 그렇게 작동하는가
모델은 턴(turn) 사이에 기억이 없습니다. 매번 Enter 키를 누를 때마다 Claude Code는 전체 대화 내용을 다시 전송합니다: 시스템 프롬프트, 도구 정의, 읽었던 모든 파일, 모든 명령어 출력, 지금까지의 모든 답변, 그리고 사용자의 새로운 메시지까지입니다.
계단마다 들고 올라가야 하는 여행 가방을 상상해 보세요. 200층짜리 건물 2층에 벽돌 하나를 쌓아두면, 나머지 198개 층까지 그것을 계속 들고 올라가야 합니다. 200턴 세션의 12번째 턴에서 나오는 4,000 토큰 분량의 빌드 로그는 4,000 토큰이 아닙니다. 그것은 4,000 토큰이 188번 더 전송된 것입니다.
따라서 세션 내 어떤 항목의 비용은 그 크기가 아니라, 머무르는 턴 수에 비례합니다.
캐싱(Caching) 덕분에 저렴해지지만, 작아지지는 않는다
이것이 대부분의 가이드가 절반만 이해하는 부분입니다. Claude Code는 대화 내용을 캐시하고, Anthropic은 캐시 읽기 비용을 일반 입력(Normal Input)의 1/10 수준으로 책정합니다 (Opus 5.5에서는 1/20, Fable 5.1에서는 1/40). 출력(Output)은 입력보다 5배 비쌉니다. 따라서 토큰 중 97.5%가 돈의 97.5%를 차지하는 것은 아닙니다.
저는 제가 직접 분할한 비용을 공개된 요율에 맞춰 책정했으며, 한 시간 캐시 구독이 사용됩니다. 출력은 모델에 따라 **비용의 714%**를 차지합니다. 세션을 다시 읽고 재캐싱(re-caching)하는 것이 나머지 **8693%**를 차지합니다.
0.2%보다 드라마틱하지는 않습니다. 여전히
이것은 매 턴마다 따라다닙니다. 모든 세션을 통틀어, 이 바닥(floor)만으로도 제가 이것을 사용했는지 여부와 관계없이 청구되는 전체 비용의 **17%**를 차지합니다. 또한, 30초 만에 고칠 수 있는 부분이기도 합니다. 필요 없는 CLAUDE.md의 모든 단락은 매 세션의 매 턴마다 다시 비용을 지불하게 되며, 사용하지 않는 모든 스킬의 설명도 마찬가지입니다.
제가 가장 많이 지니는 것들
비용이 가장 많이 드는 항목들을 간추린 하나의 프로젝트, 즉 이 웹사이트가 있습니다:
$ baggage
baggage — singhlabs에서 13 세션, 9,307 턴
...
두 가지가 저를 놀라게 했습니다.
Claude 자체의 답변이 가장 큰 비중을 차지합니다: 19.4%. 이것이 작성하는 데 비용이 많이 들었기 때문은 아닙니다. 이 모든 것을 작성하는 것은 이미 0.2%에 포함되어 있었습니다. 이것들이 비싼 이유는 각각의 답변이 세션 내에 남아 있다가 그 이후의 매 턴마다 다시 전송되기 때문입니다. 따라서 '말을 적게 하라'는 스킬들은 틀리지 않습니다. 잘못된 이유로 맞습니다. 짧은 답변 하나가 작성하는 데 드는 비용보다 재전송으로 절약해 주는 금액이 훨씬 크기 때문입니다.
브라우저 자동화가 그 뒤를 바짝 쫓고 있습니다: 15.6%. 그리고 이것은 텍스트만 계산한 수치입니다: 페이지 내용, 요소 목록, 각 클릭의 로그입니다. baggage는 이미지를 계산하지 않으므로, 모든 스크린샷이 이 수치 위에 추가되어 계산되지 않은 채 따라다닙니다. 웹사이트를 순회하는 세션 하나가 그 사진들을 한 묶음으로 가지고 다닙니다.
실제로 숫자를 움직이는 것들
위의 카운트들이 말해주는 바에 따라, 글쓰기 쉬운 주제 순서가 아닌 실제 중요도 순서로 나열했습니다:
실제로 숫자를 움직이는 것들
위의 카운트들이 말해주는 바에 따라, 글쓰기 쉬운 주제 순서가 아닌 실제 중요도 순서로 나열했습니다:
-
관련 없는 작업 사이에는 새로 시작하세요.
/clear는 지금까지 가지고 있던 모든 것을 지워버리며, Anthropic의 문서에 따르면 비용이 들지 않습니다. 벽돌은 2층 바닥에 그대로 있습니다. -
바닥을 낮추세요. 사용하지 않는 스킬은 제거하고,
CLAUDE.md는 Claude가 스스로 해결할 수 없는 내용만 남기며,/context를 한 번 실행하여 타이핑하기 전에 무엇이 로드되는지 확인하세요. -
큰 출력을 메인 세션에서 빼내세요. 긴 로그는 채팅창에 출력하는 대신 파일로 보내서 검색하고, 소음이 많은 탐색 작업이나 브라우저 작업은 서브 에이전트에게 맡겨 그 답변만 받도록 하세요.
-
세션 중간에 캐시를 깨지 마세요. 캐싱 문서에 따르면, 모델을 전환하거나, 노력을 변경하거나, 빠른 모드를 켜거나 MCP 서버를 변경하는 것은 캐시를 무효화할 수 있으며, 그러면 전체 세션이 더 높은 비율로 다시 캐시에 기록됩니다. 이들은 시작할 때 결정하세요.
-
더 짧은 답변을, 올바른 이유로. 에세이를 빼고 답변만 요청하세요. 도움이 되는데, 왜냐하면 에세이는 계속 누적되기 때문입니다.
유료 플랜에서는 /usage가 이제 어떤 스킬, 서브 에이전트 및 MCP 서버가 할당량을 사용했는지 보여줍니다. 무언가를 변경하기 전에 확인해 볼 가치가 있습니다.
직접 계산하기
위의 모든 것을 출력한 도구는 baggage라고 불립니다. 무료이며, 이미 장치에 있는 기록을 읽고, 아무것도 외부로 나가지 않습니다. npm 상의 이름은 다른 사람의 것이므로 레포지토리에서 설치하세요:
$ npm install -g github:manpreet171/baggage
$ baggage # 이 프로젝트
$ baggage --all # 모든 프로젝트
이것이 알려주지 않는 것, 그러니 너무 읽지 마세요:
-
금액이 아닌 토큰. 총계는 API가 보고한 정확한 카운트입니다. 가격 책정은 사용자님의 모델과 플랜에 달려 있습니다.
-
항목 크기는 추정치입니다. 이 목록은 모든 항목에 동일하게 적용되는 대략적인 4자 문자/토큰 자를 사용하여 순위를 매겼습니다. 그 위의 총계는 정확합니다.
-
사용자의 기기에 남아있는 것만 기록됩니다. Claude Code는 기본적으로 약 30일간의 기록을 유지합니다.
-
헤비 유저 한 명. 이 수치는 저의 데이터입니다. 사용자님의 데이터는 다를 것이며, 그것이 바로 이것을 실행하는 목적입니다.
작동 방식은 이렇습니다. 아무것도 변경하기 전에 실제로 무슨 일이 일어나고 있는지 측정하고, 그 숫자가 가리키는 것을 변경합니다. 이는 우리가 비즈니스를 위해 구축한 AI 시스템의 비용이 과도하게 발생하기 시작할 때 사용하는 것과 같은 규칙입니다.
출처: 두 터미널 블록 모두 2026년 10월 5일 저의 기기에서 실행된 실제 baggage 실행 기록이며, 두 번째는 길이 때문에 전체 줄로 간소화되었습니다. 가격 및 캐시 승수는 Anthropic의 가격 책정 페이지에서 가져왔습니다. 비용 분할은 저의 정확한 토큰 카운트를 기반으로 계산했습니다. 캐시 및 사용량 동작은 Claude Code의 비용(costs) 및 프롬프트 캐싱(prompt caching) 문서를 참고했습니다.
다음 읽을거리: 가장 좋은 CLAUDE.md 규칙은 채팅 기록에 숨겨져 있습니다 · 제품을 만들기 위해 루프 엔지니어링을 연구했습니다. 아무것도 만들지는 못했습니다.
원래 게시일: singhlabs.dev.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기