コード実行ツールが無料になる条件 — Web検索・Web Fetch併用時のみ
コード実行ツールは、Web検索かWeb Fetchと同じリクエストに含めると無料になります。単体利用の料金体系・コンテナの制限・使えないプラットフォームまで一次ソースの数値で押さえます。
コード実行ツールとは — Bashとファイル操作をサンドボックスで実行する
コード実行ツールは、Anthropic APIのリクエストの中でBashコマンドとファイル操作をサンドボックス環境で走らせる仕組みです。データの分析、可視化、複雑な計算、システムコマンドの実行、アップロードしたファイルの処理まで、会話の中で完結できます。Anthropic APIの料金体系全体はAnthropic API完全ガイドで扱っています。コード実行ツールには、そことは別に単体で押さえておくべき料金ルールがあります。コード実行は、Web検索またはWeb Fetchと同じリクエストに含めるときだけ無料になります。
そもそもいつコードが実行されるか
課金は「コード実行ツールが呼ばれたとき」に発生するので、Claudeがどんな場面で実際にコードを実行するかを知っておくと、コストの見積もりがしやすくなります。
| 実行する場面 | 実行しない場面 |
|---|---|
| 大きな桁の計算・複数手順にわたる精度が要る計算 | 実行しない場面簡単な四則演算・広く知られた数学的事実 |
| データ分析・ファイル解析・可視化 | 実行しない場面事実確認・雑談・創作的な依頼 |
| アルゴリズムの実行・シミュレーション | 実行しない場面単純な単位変換・翻訳 |
| ユーザーが「実行して」「計算して」と明示したとき | 実行しない場面— |
境界線上の依頼でコード実行させたいなら、「コードを実行して検証して」のように明示的に頼むのが確実です。逆に言えば、コード実行ツールをリクエストへ含めていても、Claudeが実際にそれを呼ぶかどうかは依頼の内容次第です。ファイル添付が無いリクエストであれば、ツールを渡しただけでは課金は発生しません。
いつ無料になるか — Web検索・Web Fetchと併用する場合
リクエストにweb_search_20260209(またはそれ以降)、あるいはweb_fetch_20260209(またはそれ以降)のいずれかが含まれているとします。この場合、そのリクエスト内のコード実行ツール呼び出しに追加課金は発生しません。かかるのは通常の入力・出力トークンのコストだけです。
この無料条件は、開発者が明示的にコード実行を組み合わせた場合だけでなく、Web検索・Web Fetchが内部で自動的に有効化する動的フィルタリングにも及びます。動的フィルタリングとは、検索結果をコンテキストウィンドウへ渡す前に、コード実行環境の中でClaudeが結果を絞り込む処理のことです。動的フィルタリングが走るときは、APIが必要なコード実行を自動的にプロビジョニングするため、そのためにコード実行ツールを自分でリクエストへ足す必要はありません。Web検索自体の有効化手順や挙動の違いはClaude Web検索の使い方にまとめてあります。
単体利用の料金体系 — 月1,550時間の無料枠と1時間0.05ドル
Web検索・Web Fetchを含まないリクエストでコード実行を使う場合、課金はトークン使用量とは別に、実行時間ベースで発生します。
| 項目 | 内容 |
|---|---|
| 最低課金単位 | 内容実行時間の最低5分 |
| 無料枠 | 内容組織ごとに月1,550時間 |
| 超過分の単価 | 内容コンテナ1つあたり1時間0.05ドル |
| ファイル添付時の扱い | 内容ツールを呼ばなくてもファイルはコンテナへ事前ロードされるため実行時間が課金される |
表の最後の行は見落としやすいポイントです。リクエストにファイルを含めると、そのファイルをコンテナへプリロードする処理自体が実行時間として扱われます。Claudeが結局そのファイルを一度も読まなかったとしても、コンテナが起動した時点で課金対象になります。「コード実行ツールを一度も呼んでいないから課金は無い」という前提は、ファイル添付がある限り成り立ちません。
使用量はレスポンスのusageオブジェクトに記録されます。
{
"usage": {
"input_tokens": 105,
"output_tokens": 239,
"server_tool_use": {
"code_execution_requests": 1
}
}
}Messages Batches APIでコード実行ツールを使う場合も、通常のMessages APIリクエストと同じ料金体系が適用されます。バッチでまとめて実行するからといって、コード実行の実行時間課金が割り引かれるわけではありません。
組み合わせにはツールバージョンの条件がある
無料条件を活かすには、Web検索・Web Fetch側のツールバージョンにも条件があります。現行のweb_search_20260209・web_fetch_20260209(以降)は、内部で使うコード実行のバージョンとしてcode_execution_20260120以降を要求します。開発者が自分でコード実行ツールをリクエストへ足す場合も、code_execution_20260120以降を選んでおくのが無難です。プログラマティックツールコーリングやREPL状態の永続化といった新しい機能とも足並みが揃います。
コード実行ツール自体には3つのバージョンがあり、対応モデルはすべて3つとも受け付けます。
code_execution_20250825: Bashコマンドとファイル操作の基本機能code_execution_20260120: REPL状態の永続化とプログラマティックツールコーリングを追加code_execution_20260521: ランタイムは20260120と同じ。Pythonの各セルに90秒のウォールクロック制限があることをツールの説明文自体がClaudeへ伝える点だけが違う
旧世代のcode_execution_20250522(Python専用)をまだ使っている実装でも、料金体系そのものは変わりません。ただし、Web検索・Web Fetch併用時の無料条件を得るには、上記いずれかの新しいバージョンへの切り替えが前提になります。
コンテナの実行環境と制限
コード実行はPython 3.11が動くLinuxベースのコンテナ(x86_64)で走ります。インターネット接続は完全に遮断されているため、Claudeは実行時にパッケージを追加インストールできず、あらかじめインストール済みのライブラリだけが使える範囲です。
| 用途 | ライブラリ / ツール |
|---|---|
| データサイエンス | ライブラリ / ツールpandas・numpy・scipy・scikit-learn・statsmodels |
| 可視化 | ライブラリ / ツールmatplotlib・seaborn |
| ファイル処理 | ライブラリ / ツールopenpyxl・pypdf・pdfplumber・python-docx・python-pptxなど |
| 数学 | ライブラリ / ツールsympy・mpmath |
| コマンドラインツール | ライブラリ / ツールunzip・7zip・bc・rg(ripgrep)・fd・sqlite |
| リソース制限 | ライブラリ / ツールメモリー5GiB・ディスク5GiB・CPU1基 |
この一覧に無いライブラリが必要なタスクは、事前にファイルとしてアップロードして持ち込みます。
コンテナはリクエストのたびに新しく作られますが、直前のレスポンスに含まれるコンテナIDを次のリクエストへ渡せば、同じコンテナを再利用できます。再利用の間はファイルが引き継がれ、code_execution_20260120以降とプログラマティックツールコーリングを使っていればPythonのインタープリタ状態(変数の束縛など)も引き継がれます。MCPツールをコードとして呼び出すことでコンテキストを節約する発想についてはMCPでコード実行する設計で詳しく扱っています。
コンテナは作成から30日で失効します。約5分間操作がないとチェックポイントが作られ、30日以内であればコンテナIDを指定したリクエストで復元できます。レスポンスに含まれるexpires_atはこのチェックポイントに基づく短いローリング値で、30日という上限そのものを表しているわけではありません。失効したコンテナは復元できず、containerパラメータを付けずに送り直すと新しいコンテナが作られます。
実行時間の上限に達するとどうなるか
最低5分課金という下限がある一方、上限を超えたときの挙動も押さえておくと想定外の課金を防げます。1回のツール呼び出しが最大実行時間を超えるとexecution_time_exceededエラーが返り、それ以上は実行されません。このほか、unavailable(ツールが一時的に利用できない)・invalid_tool_input(パラメータが不正)・too_many_requests(レート制限超過)が、全ツール共通のエラーコードとして定義されています。Bash実行では出力が大きすぎるoutput_file_too_largeも返ります。
長時間の処理では、レスポンスがpause_turnというstop_reasonで返ってくることもあります。これは長時間実行中のターンをAPIが一旦区切ったことを示すサインで、レスポンスをそのまま次のリクエストに含めて送り返せば続きから再開します。単体利用の最低5分課金・月1,550時間の無料枠は、こうしたエラーや中断が挟まっても同じ体系で計算されます。
どの面で使えるか — Amazon BedrockとGoogle Cloudでは非対応
コード実行ツールが使えるのはClaude API・Claude Platform on AWS・Microsoft Foundryの3面です。Amazon BedrockとGoogle Cloudでは提供されていません。Microsoft Foundryで使う場合は、Hosted on Anthropicとしてデプロイしていることが条件です。
対応モデルはclaude-fable-5-1・claude-mythos-5-1・claude-fable-5・claude-mythos-5・claude-opus-5・claude-opus-4-8・claude-opus-4-7・claude-opus-4-6・claude-opus-4-5-20251101・claude-sonnet-5・claude-sonnet-4-6・claude-sonnet-4-5-20250929・claude-haiku-4-5-20251001で、いずれのモデルも3つのツールバージョンすべてを受け付けます。ただしClaude Haiku 4.5だけは例外で、プログラマティックツールコーリングとそれに依存するREPL状態の永続化に対応していません。新しいバージョンを渡してもcode_execution_20250825と同じ挙動になります。
ZDR(Zero Data Retention、ゼロデータ保持)の対象外という制約もあります。組織全体でZDRプランを契約していても、コード実行ツールを使った分のデータは通常のリテンションポリシーに従うということです。コンテナ内のデータ(実行結果・アップロードしたファイル・出力ファイル)は最大30日間保持されます。Files API経由で生成したファイルはこの30日ルールの対象外で、明示的に削除するまで保持され続けます。保持ポリシーの違いは、コンテナ内で完結する処理とFiles APIを介する処理を分ける判断材料になります。
まとめ
コード実行ツールの料金判断は1点に集約できます。Web検索かWeb Fetchと同じリクエストに含めるなら無料、単体で呼ぶなら実行時間課金です。単体利用は最低5分課金・組織あたり月1,550時間の無料枠・超過分はコンテナ1つ1時間0.05ドルという体系で、ファイルを添付しただけでツールを呼ばなくても課金される点には注意が必要です。無料条件を活かすにはcode_execution_20260120以降のツールバージョンを選ぶことが前提で、Web検索・Web Fetch側もweb_search_20260209・web_fetch_20260209以降であることが条件になります。コンテナは30日で失効し、失効後は復元できず新しいコンテナが作られる点も、コストと状態管理の両面で見落としやすいポイントです。Amazon BedrockやGoogle Cloudでは使えない面の制約も合わせて確認しておくと、想定外の請求を避けられます。