SSD Nodes Learn Hosting plans →
ガイド Matt Connor著者 Matt Connor ・更新日 2026-08-26

Claudeの1M tokensはいくら?料金の計算方法

Claude APIの1M tokens料金はモデルと入出力で異なります。Haiku 4.5、Sonnet 5、Opus 5の単価と、outputがinputの5倍になる請求額の計算方法を解説します。

Claude の 1M tokens はいくらですか?

1M tokens は 1000000 tokens を意味し、すべての Claude API (application programming interface) の料金表示に使われる単位です。料金は一律ではありません。入力と出力で料金が異なり、モデルごとにそれぞれの料金が設定されています。2026年8月時点では、1000000 input tokens の料金は Claude Haiku 4.5 で $1、Claude Sonnet 5 で $2、Claude Opus 5 で $5 です。

出力は高額な側です。現在のすべてのモデルで、output rate は input rate の5倍です。そのため、請求額は表示上の単価よりも、入力と出力の比率に大きく左右されます。長い文書を送って短い回答を返すアプリと、短いプロンプトから長い回答を生成するアプリでは、料金の傾向が大きく異なります。

このページでは単位コストを扱います。1 token の料金と、構築前に請求額を見積もる方法を説明します。作業中に tokens が実際にどこで使われるかについては、Claude Code セッション内で tokens が使われる場所を参照してください。

1M tokens の規模

token は、モデルが読み書きするテキストのまとまりです。Anthropic の概算では、英語の場合、4 文字あたり 1 token、または約 0.75 語です。したがって、1M tokens は約 750,000 語、プレーンテキストでおよそ 4 MB に相当します。

一般的な入力について公開されている推定値を見ると、規模をより具体的に把握できます。

ChartApproximate input token counts for common content, published estimates
The data behind this chart
[
  {
    "label": "Average web page (10 kB)",
    "tokens": "2,500"
  },
  {
    "label": "Documentation page (100 kB)",
    "tokens": "25,000"
  },
  {
    "label": "Research paper PDF (500 kB)",
    "tokens": "125,000"
  }
]

この換算では、1M tokens は平均的な Web ページを約 400 ページ、1 回ずつ読む量に相当します。同程度の研究論文なら 8 本分です。中規模のコードベースを 1 回処理する量、または 1 人が軽いチャットを 1 か月利用する量でもあります。

これらはすべて推定値として扱ってください。コード、JSON、英語以外の言語のテキストでは、1 token に含まれる語数が少なくなるため、0.75 という比率は楽観的な上限です。さらに、カウントに影響する点が 1 つあります。Claude Opus 4.7 以降(Opus 5 と Sonnet 5 を含む)は新しい tokenizer を使用するため、同じテキストでも Sonnet 4.6 以前と比べて生成される tokens が約 30 パーセント多くなります。Claude Haiku 4.5 は古い tokenizer を使用します。そのため、Haiku 4.5 で測定したカウントは、同じ入力を Sonnet 5 に与えた場合のカウントを過小評価します。つまり、この境界をまたいだ単純な 1M あたりの価格比較は公平ではありません。判断する前に、同じ prompt を両方のモデルでカウントしてください。

Claude の 100 万トークンあたりの料金

ChartClaude API list price in USD per million tokens, August 2026
The data behind this chart
[
  {
    "label": "Haiku 4.5",
    "input_usd": 1,
    "output_usd": 5
  },
  {
    "label": "Sonnet 5 (to 31 Aug 2026)",
    "input_usd": 2,
    "output_usd": 10
  },
  {
    "label": "Sonnet 5 (from 1 Sep 2026)",
    "input_usd": 3,
    "output_usd": 15
  },
  {
    "label": "Opus 5",
    "input_usd": 5,
    "output_usd": 25
  }
]

Claude Sonnet 5 は、2026 年 8 月 31 日まで導入価格が適用され、入力は $2、出力は $10 です。2026 年 9 月 1 日からは標準料金となり、入力は $3、出力は $15 です。Claude Opus 5 は入力が $5、出力が $25 です。さらに料金表の上位には Claude Fable 5 があり、入力は $10、出力は $50 です。そのため、これらの料金を支払う価値があるかは、実際にどの処理を割り当てるかによって決まります。

料金は変動します。このページの数値はすべて、2026 年 8 月時点の計算例として扱ってください。予算を確定する前に、公式の料金ページで現在の料金を確認してください。

これらの料金から分かるのは Claude のコストであり、使用するワークロードに対して安い選択肢かどうかまでは分かりません。Claude と ChatGPT で 3 つの処理を試算した例では、どちらの API が有利になるかを示しています。

コンテキスト長は料金を変える要因ではありません。Claude 4.6 以降では、1M トークンのコンテキストウィンドウ全体に標準料金が適用されます。そのため、900,000 トークンのリクエストも、9,000 トークンのリクエストも、1 トークンあたりの料金は同じです。長いプロンプトの料金が高くなるのはトークン数が多いためであり、長いコンテキスト専用の料金はありません。

価格変更後も有効な計算

すべての請求額は、2 回の乗算と 1 回の加算で求められます。

cost = (input_tokens  / 1,000,000) * input_rate
     + (output_tokens / 1,000,000) * output_rate

実行できるコードで書くと、次のようになります。

INPUT_RATE = 2.00    # USD per million input tokens, Sonnet 5, August 2026
OUTPUT_RATE = 10.00  # USD per million output tokens

def cost(input_tokens, output_tokens):
    return (input_tokens * INPUT_RATE + output_tokens * OUTPUT_RATE) / 1_000_000

print(f"{cost(4300, 400):.4f}")

これは 0.0126 を出力します。入力トークンを 4,300 個送信し、出力トークンを 400 個受け取るリクエストは、Sonnet 5 で約 1.3 セントです。2 つの料金はコード内の 1 か所にまとめてください。料金が変更された場合は 2 行を編集するだけで、システム内のすべての見積もりに反映されます。

実際のアプリでの試算

サポートアシスタントを例にします。システムプロンプトと製品ドキュメントを合わせて 4,000 トークンとすると、Messages API はステートレスで、モデルは呼び出し間で何も記憶しないため、すべてのリクエストで送信されます。ユーザーの質問で約 300 トークン、回答で約 400 トークンを消費します。つまり、1 リクエストあたり入力 4,300 トークン、出力 400 トークンです。

入力トークン 1,000,000 個で、この形式のリクエストを約 232 回処理できます。1 日 1,000 リクエストの場合、アプリは毎日入力トークンを 4.3 million 個消費します。そのため、「1M トークン」は 6 時間未満のトラフィックで使い切ります。

ChartEstimated cost per 1,000 requests at 4,300 input and 400 output tokens
The data behind this chart
[
  {
    "label": "Opus 5, list rates",
    "cost_per_1k_usd": "31.50"
  },
  {
    "label": "Sonnet 5, list rates",
    "cost_per_1k_usd": "12.60"
  },
  {
    "label": "Sonnet 5, Batch API",
    "cost_per_1k_usd": "6.30"
  },
  {
    "label": "Haiku 4.5, list rates",
    "cost_per_1k_usd": "6.30"
  },
  {
    "label": "Sonnet 5, warm prompt cache",
    "cost_per_1k_usd": "5.40"
  }
]

Claude Opus 5 では、このトラフィックのコストは 1,000 リクエストあたり $31.50 です。Sonnet 5 では $12.60 です。Claude Haiku 4.5 に下げると $6.30 になり、Sonnet 5 でウォームなプロンプトキャッシュを使用すると、$5.40 まで下がります。

このトラフィックを 1 か月続ける場合は 30 倍します。Sonnet 5 を定価で使用すると、月額は約 $378 です。同じアプリでウォームキャッシュを使用すると、約 $162 です。この規模では、モデルの選択とキャッシュを使用するかどうかの判断は、交渉できる料金差よりも大きな影響を持ちます。使用するモデルの選定は別の問題です。評価を通過する最も安価なモデルを選びます。適切なテスト方法については、Opus、Sonnet、Haiku の選択で説明しています。

プロンプトキャッシュで繰り返し部分のコストを削減する

この 4,000 トークンのプレフィックスはすべてのリクエストで同一ですが、毎回、入力料金を全額支払うことになります。プロンプトキャッシュは処理済みのプレフィックスを保存し、再利用時の料金を引き下げます。

キャッシュの読み取り料金は、基準入力料金の 0.1 倍です。キャッシュの書き込み料金は、5 分間の有効期間では基準料金の 1.25 倍、1 時間の有効期間では 2 倍です。そのため、5 分間のキャッシュは 1 回読み取れば元が取れます。書き込みで 0.25 倍分の追加料金が発生しますが、読み取りごとに 0.9 倍分を節約できるためです。1 時間のキャッシュは、損益分岐点に達するまでに 2 回の読み取りが必要です。

有効化する最も簡単な方法は、トップレベルのフィールドを 1 つ追加することです。

curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5",
    "max_tokens": 1024,
    "cache_control": {"type": "ephemeral"},
    "system": "You are a helpful assistant.",
    "messages": [
      {"role": "user", "content": "What are the key themes in Pride and Prejudice?"}
    ]
  }'

その後、返される usage ブロックを読み取ります。

{
  "usage": {
    "cache_creation_input_tokens": 5120,
    "cache_read_input_tokens": 1800,
    "input_tokens": 50,
    "output_tokens": 503
  }
}

これら 3 つの入力カウンターには、それぞれ異なる料金が適用されます。合計すると実際の入力量になります: total_input_tokens = cache_read_input_tokens + cache_creation_input_tokens + input_tokensinput_tokens だけを読み取ってコストを見積もると、キャッシュ有効化後の値は大きく誤ります。

キャッシュの費用対効果を妨げる要因は 2 つあり、どちらもエラーを返さずに発生します。

プレフィックスはバイト単位で完全に一致している必要があります。 キャッシュ検索はプレフィックス一致で行われます。そのため、システムプロンプトの先頭にタイムスタンプやユーザー名があると、リクエストごとに内容が変わります。この場合、毎回、基準入力料金の 1.25 倍を支払うことになり、読み取りは一度も発生しません。症状は、cache_creation_input_tokens が高いままで、cache_read_input_tokens が 0 のままになることです。cache_control は、リクエスト間で内容が同じ最後のブロックに配置し、変化する内容はすべてその後に置きます。tools の定義を変更すると、その下にあるキャッシュ全体が無効になります。無効化は、tools、system、messages の順序に沿って下流へ伝播するためです。

プレフィックスは十分に長くする必要があります。 キャッシュ可能な最小長は、Opus 5 では 512 トークン、Sonnet 5 では 1,024 トークン、Haiku 4.5 では 4,096 トークンです。これより短いプロンプトはキャッシュされず、エラーも返されません。上の例の 4,000 トークンのプレフィックスは Sonnet 5 ではキャッシュされますが、Haiku 4.5 ではキャッシュされません。4,000 はそのモデルの下限未満だからです。両方のカウンターが 0 の場合、何もキャッシュされていません。

バッチ処理で料金が半分になる

Batch API はリクエストを非同期で処理し、入力と出力の料金がそれぞれ 50 percent 割引になります。上の例では、1,000 リクエストあたり $12.60 が $6.30 になります。この割引はプロンプトキャッシュとも併用できるため、キャッシュを使用するバッチジョブは、大量処理を実行する最も安価な方法です。

失うのはレイテンシです。そのため、人が処理結果を待つ用途にはバッチは適しません。夜間の分類処理や、文書データのバックフィルに適しています。

1 つの会話内でチャットのコストが増える理由

API は状態を保持しないため、クライアントはターンごとに会話全体を再送します。そのため、1 つのチャット内のトークン使用量は直線的ではなく、会話の長さの 2 乗に比例して増えます。

平均 500 トークンのターンを考えます。Turn 1 では入力トークンを 500 個送信します。Turn 2 では 1,000 個、Turn 20 では 10,000 個を送信します。これを n(n+1)/2 で合計すると、20 ターンの会話では入力トークンを約 105,000 個送信したことになります。一方、トランスクリプト自体の長さは 10,000 トークンにすぎません。

このため、チャット機能のコストはトランスクリプトから想定される金額を上回ります。また、長いスレッドでは、変更されないプレフィックスをキャッシュするか、古いターンを要約すると、その効果がコストに見合います。ツール呼び出しを繰り返すエージェントも同じ傾向を示します。しかも、すべてのツール結果が履歴に残り、その後のターンごとに再送されるため、状況はさらに悪化します。自分で実行するエージェントに厳格な支出上限を設定することが特に重要なのは、この増加が自動的に発生し、監視する人がいないためです。

推測する前にトークン数を数える

単語数からトークン数を推定するのはやめてください。API がトークン数を無料で計算します。この処理には、メッセージ作成とは別のレート制限が適用されます。

curl https://api.anthropic.com/v1/messages/count_tokens \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "content-type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5",
    "system": "You are a scientist",
    "messages": [{
      "role": "user",
      "content": "Hello, Claude"
    }]
  }'

レスポンスには、1 つのフィールドが含まれます。

{ "input_tokens": 14 }

実際の system prompt と tool definitions に、代表的な user message を加えて送信し、その数値を前述のコスト関数に入力します。このエンドポイントはメッセージリクエストと同じ body を受け取るため、画像と PDF も正しくカウントされます。注意点は 2 つあります。カウントは推定値であり、請求対象の数値とわずかに異なる場合があります。また、指定したモデルの tokenizer で測定されるため、実際に実行するモデルを指定してください。

出力トークンは、まだ存在していないため事前に数えられません。max_tokens で上限を設定し、実トラフィック上の usage.output_tokens から実際の分布を測定してください。

請求額に加算されるその他の項目

請求額の大半を占めるのはトークンです。ただし、トークン以外にもいくつか項目があり、予想外に感じる人もいます。

  • ツール定義は、リクエストごとに入力トークンになります。ツール使用のシステムプロンプトだけで、独自のスキーマを含める前に、Opus 5 では 286 から 406 トークンが追加されます。冗長なツールの説明を 10 個指定すると、小さなプロンプトのサイズが 2 倍になることがあります。
  • Web search は、検索 1,000 回あたり $10 が、検索結果をコンテキストに取り込む際に消費されるトークンの料金に加えて請求されます。
  • Web fetch 自体には追加料金はありません。ただし、取得したページは入力トークンになります。100 kB のドキュメントページでは、およそ 25,000 トークンを消費します。
  • Claude 4.6 以降で inference_geo を指定して US-only inference を要求すると、キャッシュの読み取りと書き込みを含むすべてのトークン区分に 1.1 倍の乗数が適用されます。

API を購入すること自体が適切かどうかは、利用量によって決まります。通常、この問題を考え始めるきっかけは、プランの利用上限に達することです。上限に達した場合の選択肢には、ウィンドウがリセットされるまで待つ方法から、その処理を従量制の API 呼び出しへ移す方法まであります。一定水準未満の利用量であれば、定額の月額プランが明確に有利です。API と Claude サブスクリプションの比較では、実際の数値を使って比較しています。

FAQ

Claude の 1M tokens の料金はいくらですか?

モデルによって異なり、input tokens か output tokens かによっても変わります。2026年8月時点では、one million input tokens の料金は Claude Haiku 4.5 で $1、導入価格の Claude Sonnet 5 で $2、Claude Opus 5 で $5 です。これらのモデルでは、output の料金はそれぞれ input の5倍です。Sonnet 5 は2026年9月1日から、input が $3、output が $15 になります。料金は変わるため、予算に金額を計上する前に公式の料金ページで確認してください。

1M tokens は 1M words と同じですか?

いいえ。1 token は英語でおよそ4文字、または約0.75 words に相当するため、one million tokens は約750,000 words です。この比率は目安にすぎません。Code、JSON、英語以外の言語では、1 word あたりの token 数が多くなります。Claude Opus 4.7 以降では、Claude Sonnet 4.6 以前と同じテキストでも、約30 percent 多くの tokens を生成する新しい tokenizer も使用されます。そのため、モデル世代をまたいで counts を比較することはできません。無料の /v1/messages/count_tokens endpoint を使い、実行する予定の model を渡して測定してください。

Prompt caching は常に料金を節約できますか?

いいえ。5 minute の cache write には base input rate の1.25倍がかかります。そのため、書き込まれたまま一度も読み取られない prefix は、通常どおり送信するより25 percent 高くなります。最初の read で元が取れます。問題は、いずれも通知されずに2通りの形で発生します。リクエスト間で cached prefix が変わると、完全一致する prefix のみが対象となるため、lookup は一致しません。prefix が model の最小 cacheable length より短い場合も、何も cache されず、error は返されません。最小 cacheable length は Sonnet 5 で 1,024 tokens、Haiku 4.5 で 4,096 です。cache_creation_input_tokenscache_read_input_tokens が両方とも 0 の場合、cache は機能していません。

メッセージ数よりも請求額の増加が速いのはなぜですか?

すべての会話が各 turn で再送信されるためです。Messages API は state を保持しないため、chat の turn 20 では、それ以前の19 turn がすべて input として再び送信されます。各 turn が平均500 tokens の場合、20 turn の会話では、transcript の長さが10,000 tokens だけでも、約105,000 input tokens が送信されます。すべての tool result が history に残るため、agent loop も同じ動作になります。安定した prefix を cache するか、古い turn を要約して request から削除してください。