Claude Codeの起動トークン3.3万の内訳と、節約できる設定

起動時の3.3万トークンは大半をツール定義が占める

Claude Codeが最初のリクエストで送信する約3.3万トークンのうち、約2.4万はツール定義です。 残りはシステムプロンプトと自動で差し込まれる文で、ユーザーが何を入力するかに関係なく毎回ほぼ同じ量が送信されます。

最初のリクエストで送信されるトークン量(1行だけ返させる指示)

Systima実測(Claude Code 2.1.207/OpenCode 1.17.18、モデルはどちらもSonnet 4.5)

Claude Code約3.3万トークン(うちツール定義が約2.4万)
OpenCode約7,000トークン
"Roughly 24,000 of Claude Code's ~33,000 tokens are tool definitions, versus roughly 4,800 of OpenCode's ~6,900."
公式情報を見る →

1行の指示でもシステムプロンプトとツールで3.3万トークン

「OK」とだけ返させる指示(Reply with exactly: OK)でも、Claude Codeは最初のリクエストで約3.3万トークンを送信していました。 中身はシステムプロンプト(モデルへ毎回与える基本の指示)とツール定義(Claude Codeが使う各ツールの説明)に、自動で差し込まれる文を加えたものです。

Systimaは両ツールを同じモデルに固定して動作させ、モデルへ実際に送信されたデータを記録して量を計測しました。計測時のバージョンはClaude Code 2.1.207とOpenCode 1.17.18で、モデルはどちらもSonnet 4.5です。

Claude Codeの27個のツールには、コードを書くための基本のツールに加えて、バックグラウンドで動作させるエージェントや作業を分担させるためのツールまで含まれ、ツールを1つも使わない1行の返事でもこの説明は全部送信されるため、起動時の量が膨らみます。OpenCodeのツールは10個で、約6,900のうちツール定義は約4,800でした。

"When we asked both harnesses for a one-line reply, Claude Code used roughly 33,000 tokens of system prompt, tool schemas, and injected scaffolding before the prompt even arrived. OpenCode used about 7,000."
公式情報を見る →

起動時にコンテキストへ入る量はOpenCodeの約4.7倍

Sonnetでの計測では、Claude Codeが起動時に送信する量はOpenCodeの約4.7倍でした。ただし、Fableで計測し直すと倍率は約3.3倍になり、差の大きさは使うモデルによって変わります。

起動時に送信された分は、そのままコンテキスト(モデルが一度に処理する情報の範囲)に入ります。Systimaの計測ではClaude Codeのシステムプロンプトはモデルごとに中身が変わり、Fableには短いプロンプトを送信していたとのこと。ツールは同じ27個のままです。

どちらのモデルでもClaude Codeの方が多く送信することは変わらず、Systimaは差がまだ大きいとしています。数字は2026年7月時点のバージョンで測った値で、ツールのプロンプトが頻繁に変わることをSystimaは認めています。

"The floor gap on Fable comes out at roughly 3.3x by payload against 4.7x on Sonnet. Still far hungrier, but the ratio is model-dependent."
公式情報を見る →

実運用の設定では最初の消費が7.5万〜8.5万トークンに増える

CLAUDE.mdとMCPサーバーを追加した実運用の設定では、最初のリクエストが7.5万〜8.5万トークンに達します。つまり、何も設定していない起動時の約3.3万と比較して2倍を超える量が、ユーザーが入力する前に送信されています。

下の図で上の3つの値を合計しても約6万にとどまり、最下段の7.5万には届きません。残りはSystimaが個別の数字を出していない要素で、検証構成(MCPサーバー4個とプラグインに指示ファイル)の送信データは311KB・約7.5万トークン、ツールは118個まで増えていました。

実運用の設定で最初のリクエストに乗る量(Systima実測)

上の3つの値を合計しても最下段の値にはならない(それぞれ別々の計測値)

素の起動
約3.3万トークン(うちツール定義が約2.4万)
72KBのCLAUDE.md
毎回のリクエストに平均約2万トークン
MCPサーバー5個
毎回のリクエストに5,000〜7,000トークン
実運用での最初のリクエスト
7.5万〜8.5万トークン
"For Claude Code, four MCP servers plus installed plugins and the same instruction file produced a 311KB payload of roughly 75,000 tokens with 118 tools."
公式情報を見る →

72KBのCLAUDE.mdだけで使用量が毎回約2万増え、上限に近づく

72KBのCLAUDE.mdは、それだけで毎回のリクエストに平均約2万トークンを追加します。CLAUDE.mdはプロジェクトのルールを書いてClaude Codeに読み込ませる指示ファイルで、中身が送信されるのは最初の1回だけではありません。

1回の作業のあいだにもリクエストは何度も発生するため、同じ約2万トークンがリクエストのたびに積み上がり、使用量の上限へ早く近づきます。計測に使ったのは実際の開発リポジトリにある指示ファイルで、SystimaはAGENTS.mdまたはCLAUDE.mdとしています。ただしClaude Code 2.1.207はAGENTS.mdを読み込まず、CLAUDE.mdという名前のときだけ取り込みました。

"A production repository's 72KB instruction (AGENTS.md or CLAUDE.md) file adds another (avg) 20,000 tokens to every single request. Five modest MCP servers add 5,000 to 7,000 more. By the time a real working setup sends its first request, it is 75,000 to 85,000 tokens deep before the user has typed a word."
公式情報を見る →

MCPサーバー5個で毎回5,000〜7,000トークンの消費

MCPサーバーを5個連携した設定では、毎回のリクエストに5,000〜7,000トークンが加わります。また、MCPサーバーはClaude Codeを外部のサービスと連携させる仕組みで、連携先ツールの説明もツール定義として一緒に送信されます。

Systimaの計測では小規模なサーバー5個の追加だけで、Claude Codeのツールの数は27個から大きく増えました。一方、Anthropicの最新ドキュメントによると、MCPのツール定義はデフォルトで後回しに読み込まれ、Claudeが使うまではツール名とサーバーの指示だけがコンテキストに入るとのこと。Systimaの数字は2.1.207時点のものなので、現在は上乗せが小さい可能性があります。

"MCP ツール定義は デフォルトで遅延 されるため、Claude が特定のツールを使用するまで、ツール名とサーバー指示のみがコンテキストに入ります。"
公式情報を見る →

サブエージェントに分けると同じ作業のコストが約4.2倍

直接なら12.1万トークンに収まる小規模な作業を2体のサブエージェントに分けると、51.3万トークンまで増えました。 サブエージェントは親のClaude Codeから作業を切り出して任せる子のエージェントで、2体に分けただけで量は約4.2倍になった計算です。

子のエージェントを呼び出すたびに、専用のシステムプロンプトと、Claude Codeが持つツールの大半が一緒に送信されます。Systimaの計測では、Claude Codeがこの作業に使ったリクエストは9回で、そのうち5回がサブエージェントの呼び出しだったとのこと。分けた数だけ起動時の量を送信し直すので、作業を細かく分けるほど合計は膨らみます。

"A small task that cost 121,000 tokens done directly cost 513,000 tokens when fanned out to two subagents."
公式情報を見る →

Claude Codeのコストが高いかは1回分×回数で変わる

起動時に送信する分はリクエストのたびに送信し直されるため、総消費は1回分の量とリクエストの回数を掛けた値になります。 1回分が重いツールでも回数が少なければ合計は膨らまず、軽いツールでも回数が多ければ積み上がります。

起動時の約3.3万だけを見てClaude Codeは高いと判断すると、実際の請求や使用量の減り方とずれることがあります。自分の使い方で何回リクエストが飛んでいるかも合わせて確認しておくと、判断を誤りにくくなります。

実タスクの使用量はSonnetでOpenCode並み、Fableだと高い

Systimaが計測した複数ステップの実タスクでは、Claude CodeとOpenCodeの合計トークン数はほぼ同じになりました。 OpenCodeは1回あたり約7,000のリクエストを9回、Claude Codeは約3.3万のリクエストを3回送信しています。

Claude Codeはツールの呼び出しを少ないリクエストにまとめて送信し、OpenCodeは小さなリクエストを何度も重ねていました。Systimaは、支払額は起動時の量よりも作業の進め方に左右されると結論づけています。

ツール 1回分の量 リクエスト回数 合計
OpenCode 約7,000 9回 ほぼ同じ
Claude Code 約3.3万 3回 ほぼ同じ

ただしFableで同じタスクを計測し直すと、Claude Codeのリクエスト数は倍に増え、合計もOpenCodeを大きく上回りました。回数が増えれば1回分の重いツールほど不利になるという掛け算の関係は、Fableの計測でも変わりません。

"OpenCode paid its ~7k baseline nine times, Claude Code paid its ~33k three times, and the totals converged."
公式情報を見る →

トークンの節約は標準の設定より自分で足した分から見直す

最初から送信される約3.3万トークンはClaude Code側が定める量なので、節約は自分で追加したMCPサーバーとCLAUDE.mdから進めます。 実運用では追加した分が約3.3万と同じかそれ以上になるため、次の順に削れば、その分だけ毎回のリクエストが軽くなります。

  1. /contextで何がコンテキストを占めているかを確認する
  2. 使わないMCPサーバーを無効にする
  3. CLAUDE.mdの長い手順をskillsへ移す

公式のコスト管理ページは出力が長くなりがちな操作をサブエージェントに任せる方法を紹介していますが、Systimaの計測では、作業をサブエージェントに分けると、分けた数だけ起動時の量が送信し直されていました。サブエージェントに任せる作業を限定し、1つの作業を細かく割りすぎないようにします。

/contextで調べるコンテキストの内訳

何かを削る前にまず/contextを実行して、コンテキストのどこを何が占めているかをチェックします。 /contextは種類ごとの内訳と改善の提案を出す公式のコマンドで、読み込まれたCLAUDE.mdも一覧に入ります。

また/usageは現在のセッションで使ったトークン量を見るためのコマンドで、ステータスラインに常に出しておく設定もできます。/contextでトークンの多い要素を見つけ、/usageで削ったあとの減り方を追うと、効果がつかみやすくなります。

"To see your actual context usage at any point, run /context for a live breakdown by category with optimization suggestions, including which CLAUDE.md and auto memory files loaded."
公式情報を見る →

使わないMCPサーバーを無効にして毎回の上乗せを削る

/contextの内訳でMCPサーバーの分が目立つなら、使っていないサーバーから無効にします。 現在のバージョンではツール定義が後回しに読み込まれるとはいえ、ツール名とサーバーの指示は毎回コンテキストに入ります。

例えばプロジェクトごとに必要なサーバーが異なるなら、そのプロジェクトで使うものだけを有効にしておくと上乗せを抑えられます。Systimaの計測ではMCPサーバー5個で毎回5,000〜7,000トークンだったので、有効のまま放置するサーバーが多いほど影響が大きくなります。

CLAUDE.mdの長い記述はskillsへ移してトークン節約

CLAUDE.mdには毎回必要なルールだけを残し、特定の作業でしか使わない長い手順はskillsへ移します。つまり、CLAUDE.mdの中身は毎回のリクエストで送信されるため、1行削ればリクエストの回数分だけ節約になります。

公式のコスト管理ページも、CLAUDE.mdの内容をskillsへ移すことを削減策の1つとして紹介しています。Systimaの計測時点ではAGENTS.mdが読み込まれず、名前をCLAUDE.mdに変えたときだけ取り込まれていたとのこと。ルールをAGENTS.mdに書いている場合は、Claude Codeが実際に読み込んでいるかを/contextでチェックしておくといいでしょう。

"Claude Code 2.1.207 ignored AGENTS.md entirely and only ingested the file when renamed CLAUDE.md, injecting it into the first user message."
公式情報を見る →

減らせるのは自分で足したMCPサーバーとCLAUDE.md

Claude Codeのトークンは起動時点で約3.3万に達し、その大半はツール定義です。 ユーザーが変えられるのはCLAUDE.mdとMCPサーバーとサブエージェントの分け方で、実運用ではこの上乗せで最初のリクエストが7.5万〜8.5万まで増えます。

総消費は1回分の量と回数の掛け算なので、起動時の量だけではコストの高さを判断できません。まず/contextで環境ごとの内訳を確認し、追加した分から削ってください。

会話が長引いたときの節約(/clearと/compactの使い方やモデルの選び方)は、公式のコスト管理ページにまとまっています。モデル別料金は、Opus 4.8と4.7と4.6の料金と利用上限、3世代とも料金は同額の記事で比較しています。

Claudeはモデルごとに性能と料金が異なり、無料版でも使うことができます。Anthropicの記事はAnthropicの一覧をご覧ください。

FAQ

Claude Codeは起動時に何トークンを使いますか?
Systimaの実測によると1行だけ返させる指示でも、Claude Codeは最初のリクエストで約3.3万トークンを送信していました。同じ条件のOpenCodeは約7,000トークンです。
実際の開発環境ではどこまで増えますか?
Systimaによると、実運用の設定では最初のリクエストが7.5万〜8.5万トークンに達するとのこと。MCPサーバー4個とプラグインに指示ファイルを加えた検証構成では約7.5万トークンになり、ツールは118個まで増えていました。
起動時のトークンが多いと総コストも高くなりますか?
総消費は1回分の量とリクエスト回数を掛けた値になるため、起動時の量だけではコストの高さを判断できません。Systimaの実タスクではOpenCodeが約7,000を9回、Claude Codeが約3.3万を3回払い、合計はほぼ同じでした。