Opus 4.6とSonnet 4.5、200Kコンテキストで回した実コストの差
Claude Opus 4.6とSonnet 4.5で200Kトークンのコンテキストを使った場合の実際のAPI費用を比較検証した記録
先月、受託案件のコードレビュー自動化をClaude APIで組んでいて、ふと気になった。Opus 4.6とSonnet 4.5、どちらも200Kトークンまでのコンテキストは使える。Sonnet 4.5のコンテキスト上限がちょうど200Kだから、「200Kまでならどっちでもいけるなら、コスト差だけで選んでいいのか?」という疑問が出てきた。
料金表を眺めるだけでは見えない部分がある。実際にAPIを叩いて、同じ入力で両モデルを走らせた結果を残しておく。
料金表上の差と、実際のリクエスト単価
Anthropic公式の料金はこう。
| モデル | 入力 | 出力 |
|---|---|---|
| Opus 4.6 | $5 / MTok | $25 / MTok |
| Sonnet 4.5 | $3 / MTok | $15 / MTok |
MTokは100万トークンあたりの価格。入力がOpusはSonnetの約1.67倍、出力も同じく約1.67倍。単純な倍率だけ見れば「Sonnetのほうが安い、以上」で終わりそうだが、話はそう単純でもなかった。
手元でTypeScriptプロジェクトのソースファイルを連結して約180Kトークンの入力を作り、「このコードベースのセキュリティリスクを列挙して修正案を出せ」というプロンプトを投げた。出力トークン数はモデルによって変わる。ここが料金表だけでは読めないところ。
Opus 4.6は指摘が網羅的で、出力が長くなる傾向がある。同じプロンプトでSonnet 4.5は要点をまとめて返してくる。手元の検証では、Opusの出力トークン数がSonnetのざっくり1.5倍くらいになった。
1リクエストあたりの実コストを概算すると:
- Opus 4.6: 入力180K × $5/MTok + 出力(多め) × $25/MTok
- Sonnet 4.5: 入力180K × $3/MTok + 出力(少なめ) × $15/MTok
入力だけで見るとOpusが$0.90、Sonnetが$0.54。出力の差も加わると、1リクエストあたりの総コストはOpusがSonnetの2倍〜2.5倍くらいになる。
「安いほうでいい」が通用しないケース
コスト差だけ見ればSonnet 4.5の圧勝だが、問題は精度。
180Kトークンの大きなコンテキストを渡したとき、Sonnet 4.5はコンテキストの後半に埋まった情報を拾い損ねることがある。コードレビューで言えば、ファイルの連結順で後ろのほうに置いたモジュールの脆弱性を見落とす。Opus 4.6はそのあたりの取りこぼしが明らかに少なかった。
Anthropicの公式ベンチマーク(MRCR v2、1Mトークン)でもOpus 4.6は76%、Sonnet 4.5は18.5%という数字が出ている。200Kの範囲でも、コンテキストの端のほうに置いた情報の回収精度には差がある。
つまり「Sonnetで1回流して見落としがあったから再度流す」を繰り返すと、結局Opusで1回流したほうが安くつく場面がある。体感だが、コードレビュー用途では手直しや再実行の手間を含めるとトータルコストはほぼ変わらなかった。
Prompt Cachingを入れると計算が変わる
両モデルともPrompt Cachingに対応している。同じシステムプロンプトやコードベースを繰り返し投げる場合、キャッシュヒットで入力コストが基本料金の10分の1になる。
| 通常入力 | キャッシュヒット | |
|---|---|---|
| Opus 4.6 | $5 / MTok | $0.50 / MTok |
| Sonnet 4.5 | $3 / MTok | $0.30 / MTok |
キャッシュが効く状況では入力コストの差が小さくなるので、出力コストの比重が大きくなる。そしてOpusは出力が長くなりがちだから、キャッシュを使っても出力料金でコスト差は残る。
ただ、繰り返しリクエストを投げるバッチ処理のような用途だと、Batch APIの50%割引も併用できる。Batch API経由ならOpus 4.6は入力$2.50/出力$12.50、Sonnet 4.5は入力$1.50/出力$7.50。リアルタイム性が不要ならこっちのほうが断然いい。
200Kを超えたいときの選択肢
Sonnet 4.5のコンテキスト上限は200Kトークン。以前はベータ機能で1Mまで拡張できたが、2026年4月30日に廃止された。200Kを超える入力が必要なら、選択肢は事実上Opus 4.6(1Mトークン、追加料金なし)かSonnet 4.6(同じく1M、$3/$15)になる。
Sonnet 4.6はSonnet 4.5と同じ料金体系で1Mコンテキストに対応しているから、200Kを超える可能性があるなら最初からSonnet 4.6を使うのが合理的。Sonnet 4.5を選ぶ理由は、既存のプロンプトやワークフローが4.5に最適化されていて移行コストをかけたくない場合くらいだと思う。
結局どう使い分けているか
自分のプロジェクトでは、こう落ち着いた。
- 定型的なコードレビュー・要約: Sonnet 4.5(またはSonnet 4.6)。コストが安い。見落としが致命的でないタスク向き
- 大規模コードベースの横断的な分析: Opus 4.6。精度の差が手戻りコストに直結する
- 繰り返しバッチ処理: どちらでもBatch API経由。Prompt Cachingと併用すると入力コストはほぼ誤差になる
- 200K超のコンテキストが必要: Opus 4.6一択(精度重視)かSonnet 4.6(コスト重視)
200Kという数字は「Sonnet 4.5の上限」であると同時に「Opus 4.6のコンテキストの5分の1」でもある。同じ200Kを使っても、モデル側の余裕が違うのか、Opusのほうがコンテキスト全体を均一に参照している印象がある。料金表の数字だけで決めずに、自分のタスクで数回試してから選んだほうがいい。