この記事は Synthorai ブログの記事 AI API の課金単位:token から PTU-hour まで 17 種類 の転載です。原文(多言語対応)はリンク先をご覧ください。
AI API の利用量は少なくとも 17 種類の単位で計測される。text token、reasoning token、cached token、media-input token、realtime audio token、文字数、メディアの分数や秒数、出力オブジェクト数、リクエスト数、ページ数、GPU-second、container-hour、GB-day、token-hour、PTU-hour、training token、synthetic credit だ。複数のモダリティを扱うプロダクトでは、コスト見積もりのためにいくつもの単位を換算する必要がある。予算が狂う原因は、この換算ルールにある。本記事では、すべての単位について計測方法と注意点を整理する。
TL;DR
- AI API の課金単位は少なくとも 17 種類あり、消費量、時間とキャパシティ、料金補正、synthetic wrapper の 4 レイヤーに分かれる。
- 1 分の音声にも 2 種類の課金方法がある。文字起こし専用モデルでは audio-minute あたり $0.0020 から $0.0164、gpt-realtime-2.1 では聞き取った音声 100 ms あたり 1 audio token だ。
- ストレージだけでも計測単位は 2 種類ある。OpenAI の file search は GB-day あたり $0.10、Gemini の context caching は 100 万 token-hour あたり $0.50 だ。
- modifier は単位ではなく単価を変える。batch は半額、DeepSeek のオフピークはさらに半額、米国内に固定した Claude の推論は 1.1x になる。
AI API はどの単位で課金するのか?
17 種類ある。以下のセクションと同じ順序で、消費量単位が 1 から 10、時間とキャパシティの単位が 11 から 16、synthetic wrapper が 17 だ。これとは別に、単位を変えずに単価だけを変える modifier レイヤーがある。次の表を索引として使える。各行から詳細解説へ移動できる。
| # | 単位 | 使われる場所 | 注意点 |
|---|---|---|---|
| 1 | Text token | すべての chat API | 同じテキストでも tokenizer によって数が異なる。tokenizer の世代が変わると約 30% 多くなる場合がある |
| 2 | Reasoning token | thinking model | 見えない出力にも課金される。回答によっては全体の 88 から 99.3%を占める |
| 3 | Cached token | prompt caching | TTL 別の書き込み割増、読み取り割引、provider ごとの最小値がある |
| 4 | Media-input token | 画像、音声、PDF の入力 | 同じ画像に 3 種類の変換方式があり、PDF は画像レートで課金される |
| 5 | Realtime audio token | 音声対話 | 聞き取りは 100 ms あたり 1 token、発話は 50 ms あたり 1 token |
| 6 | 文字数 | TTS、guardrail | 中国語音声は audio-minute あたり英語より 3 から 7x 安い |
| 7 | メディアの分数または秒数 | 音声認識、動画生成、音楽生成 | 精度がほぼ同じモデル間でも audio-minute あたり 8x の価格差がある |
| 8 | 出力オブジェクト数 | 画像生成、人手評価 | 解像度が同じでも品質設定だけで画像 1 枚の料金が 36x 変わる |
| 9 | リクエスト数 | Web 検索、grounding、file search | 検索 1 回あたり $0.01 に加え、挿入された tokenがモデルの入力単価で課金される |
| 10 | ページ数 | OCR、document AI | Mistral は 1,000 ページ単位で課金し、さらに batch と cache の割引が適用される |
| 11 | GPU-second | serverless model host | GPU によって単価が異なる。T4 は $0.000225/s、H100 は $0.001525/s |
| 12 | Container-hour または session-hour | コード実行、managed agent | ツールが実行されなくても最低 5 分、ファイルの preload から課金される |
| 13 | GB-day | ファイルおよび vector storage | 無料の 1 GB を超えると $0.10 per GB-day |
| 14 | Token-hour | context-cache storage | Gemini は 100 万 token-hour あたり $0.50で課金し、2027 年には 2 倍になる |
| 15 | PTU-hour または model-unit hour | provisioned capacity | cached token はキャパシティを消費しない。output は input より負荷が大きい |
| 16 | Training token | fine-tuning | epoch 数が料金に乗算される。一部のモデルは代わりに1 時間あたり $100で課金される |
| 17 | Credit または CCU | marketplace、subscription | 実際の料金表に係数をかけた単位。AWS Marketplace では 100 CCU = $1.00 |
消費量を数える単位はどれか?
17 種類のうち 10 種類は消費量単位だ。サービスを使うたびにメーターが進み、モダリティごとに数える対象が異なる。
Token 系の単位(1 から 5)。 基本になるのは text token だが、単一の単位ではない。モデルファミリーごとに tokenizer が異なるため、同じテキストでも課金対象の token 数が変わる。Anthropic の説明では、4.7 以降の tokenizer は同じテキストに対して旧世代より約 30% 多く token を生成する。Reasoning token は通常ユーザーから見えない output token だ。10 token の回答に対して 81 token が課金されるケースを計測したところ、その 88% が reasoning だった。Cached token は操作と cache の有効期間(TTL)によって単価が変わる。Claude API では、5 分の cache write は base input の 1.25x、1 時間の write は 2x、read は 0.1xだ。メディア入力は provider 固有の式で token に変換される。同じ 1024x1024 の画像でも、GPT-5.6 では 693 token、Gemini では 1,089 token、Claude では 1,372 token が課金される。Gemini は音声を毎秒 25 token、720p 動画を毎秒 5,792 tokenとして計算し、PDF には画像 token の単価を適用する。realtime 音声には専用の token がある。gpt-realtime-2.1 はユーザー音声 100 ms ごとに正確に 1 audio token、モデル音声 50 ms ごとに 1 audio tokenを課金する。
文字数と時間(6 と 7)。 Text-to-speech(TTS)は文字単位で課金される。OpenAI の価格は100 万文字あたり $15 から $30だ。このため、中国語音声は audio-minute あたり英語より 3 から 7x 安い。同じ発話時間でも必要な文字数が少ないからだ。Bedrock の guardrail は独自の文字単位を定義しており、最大 1,000 文字を 1 "text unit"とする。文字起こし専用モデルは audio-minute 単位で課金される。計測したモデルでは audio-minute あたり $0.0020 から $0.0164だった。動画生成は解像度別に秒単位で課金され、Gemini の音楽生成は曲単位で課金される。
オブジェクト、リクエスト、ページ(8 から 10)。 画像生成は tier 別の画像単位、または output token 単位で課金される。どちらが安いかは途中で逆転する。output token が約 1,000 未満なら token 単位が有利で、それを超えると画像 1 枚の固定料金が有利になる。サーバー側ツールはリクエスト単位で課金される。計測した 3 種類の API では Web 検索 1 回あたり $0.01で、検索結果はさらに input token として課金される。検索 1 回あたり 1,500 から 3,100 token だ。Gemini の search grounding は、モデルがリクエスト処理中に Google Search を実行できる機能で、無料枠の形にも特徴がある。月 5,000 リクエストまでは無料で、その後は 1,000 リクエストあたり $14だ。OCR はページ単位で課金される。Bedrock のモデル評価は完了した人手タスク 1 件あたり $0.21で課金される。この一覧で人を単位にする唯一のケースだ。
時間やキャパシティを借りる単位はどれか?
6 種類の単位は、token が流れているかどうかに関係なく、リソースを確保している時間に対して課金する。コードが何もしていない間もメーターが動くため、このレイヤーはコスト見積もりで特に見落とされやすい。
- GPU-second。 Serverless host はハードウェアクラス別にモデルの実行時間を課金する。Replicate では、T4 が 1 秒あたり $0.000225、H100 が $0.001525だ。出力ではなく GPU に値段が付いている。
- Container-hour と session-hour。 Anthropic のコード実行は、月 1,550 時間の無料枠を超えると container-hour あたり $0.05、1 回の実行につき最低 5 分が課金される。OpenAI の code interpreter は 20 分の session 単位で、メモリ容量に応じて1 GB の $0.03 から 64 GB の $1.92まで変わる。Claude の managed agent は実行中のみミリ秒単位で計測され、session-hour あたり $0.08だ。
- GB-day と token-hour。 同じストレージでも計測単位は 2 種類ある。OpenAI の file search storage は1 GB の無料枠があり、それを超えると GB-day あたり $0.10。Gemini の explicit context caching は100 万 token-hour あたり $0.50 で、2027 年には $1.00になる。削除し忘れた cache は、気付かないうちに継続課金される。
- PTU-hour と model unit。 Provisioned capacity はトラフィックがなくても unit-hour 単位で課金される。Azure の provisioned throughput unit(PTU)はモデルに依存しない quota だが、モデルごとに最小 deployment size がある。output token は input token より多くのキャパシティを消費し、cached token は消費しない。そのため cache hit 率が高いほど必要な PTU 数を減らせる。Bedrock は同じ仕組みを1 か月または 6 か月契約の model unitとして提供している。
- Training token。 Fine-tuning は training data の token 数に epoch 数を掛けて課金する。ただし、実時間で課金する場合もある。OpenAI の一部モデルは学習 1 時間あたり $100だ。
単位を変えずに単価を変える要素は何か?
単位を変えずに価格だけを変える要素は 7 つある。batch tier、service tier、時間帯、context length、地域、品質設定、無料枠だ。モデルごとに単価を 1 つだけ保存する課金実装では、これらをすべて誤る。同じ token でも処理方法、時間、場所によって価格が変わるからだ。
| Modifier | 影響 | 例 |
|---|---|---|
| Batch tier | input と output が 50% 割引 | Anthropic と OpenAI の batch API。Mistral OCR も対象 |
| Service tier | 高速処理に割増料金 | OpenAI の fast tier は標準単価の 2x。flex tier は割引 |
| 時間帯 | オフピーク割引 | DeepSeek はオフピークがピークの半額。平日の 01:00-04:00 と 06:00-10:00 UTC がピーク |
| Context length | 閾値を超えると単価が変わる | Gemini はprompt token が 200k を超えると単価が上がる。Claude 4.6 以降は1M window 全体で定額 |
| 地域 | data residency の割増 | Claude の inference_geo: "us" はすべての token category で 1.1x。Bedrock と Google Cloud の Claude モデルでは、regional endpoint が global より 10% 高い |
| 品質設定 | 同じ単位でも消費量が変わる | gpt-image は品質設定により、1024x1024 の画像 1 枚で課金 token が 196 から 7,024 まで変わる |
| 無料枠 | 閾値を超えると単価が変わる | Grounding は月 5,000 リクエスト、コード実行は月 1,550 時間まで無料 |
倍率は重ねて適用される。Anthropic のドキュメントでは、caching の倍率に batch 割引と residency の割増が組み合わされる。そのため cached、batched、US-pinned の 1 token には 3 つの係数が同時に適用される。
Credit と CCU とは何か?
実際の計測単位を覆う synthetic wrapper で、請求書を 1 項目にまとめるために使われる。Claude を AWS または Azure Marketplace 経由で利用すると、通常の単価で使用量をドル換算した後、1 ドルあたり 100 Claude Consumption Units に変換される。割引は CCU の単価を下げるのではなく、計測される CCU 数を減らす形で反映される。subscription 製品の credit も同じ仕組みだが、同じ企業の中でも境界が分かれる場合がある。ElevenLabs は subscription plan を credit で計測する一方、API 利用料は credit ではなく米ドルで請求されると明記している。synthetic unit を見たら、その下でどの消費量またはキャパシティのメーターが動き、どの換算率が使われるかを確認する必要がある。
問題になりやすい丸め規則と最低課金は?
量子化ルールは別々のドキュメントに分散しているため、ここにまとめる。
- コード実行 container は最低 5 分の課金で、リクエストにファイルを含めると、ツールが一度も呼ばれなくても実行時間が課金される。
- Code interpreter の session は RAM tier 別に20 分単位で切り上げられる。
- Realtime 音声は audio token ごとに聞き取り 100 ms、発話 50 msへ量子化される。server voice-activity detection(VAD)では 60 秒の無音は課金されず、発話開始から 2 秒で回答をキャンセルしても 4 秒分が課金された。
-
n=4を指定した画像生成ではprompt が 4 回分課金される。この API には prompt caching がない。 - Video token の計算式にはフレーム数への +1 があり、エンコード時のサイズも公称値と異なる。720p は 1248x704 として課金される。
- Prompt cache にはprovider ごとに cache 可能な最小長がある。最小値を下回ると write の割増料金を支払っても cache されない。
- Guardrail の text unit は1,000 文字ごとに切り上げられる。
- ツール定義は call の前に input として課金される。Anthropic の tool-use system prompt はモデルと tool choice に応じて 286 から 804 token を追加する。computer-use の完全な toolset では約 4,500 token が追加される。
異なる単位のコストをどう比較するか?
ユーザー操作 1 回あたりのドル額に正規化する。すべてのメーターを共通の単位に変換できる唯一の方法だ。
音声 agent の調査でもこの方法を使った。audio-minute(STT)、token(LLM)、文字数(TTS)で課金される cascade 構成は、会話 1 分あたり $0.0037 から $0.025 だった。gpt-realtime-2.1 は $0.057、mini は $0.016だ。これにより realtime の割増料金と latency の改善を同じ数値で比較できる。この手順は他のケースにも使える。support ticket 1 件、document 1 件、会話 1 分など、まず interaction を決める。次に各処理を本来の単位で計測し、その時点の単価を適用してから比較する。$/1M tokens と $/audio-minute を直接比較しても意味はない。$/interaction なら単純な算数になる。
Gateway は 17 種類の単位をどう正規化するか?
Synthorai ではリクエスト処理時に料金を確定し、ドル額とともに元の単位を保持する。各リクエストから 1 件の usage record を生成し、元のメーター値(category 別の token、秒数、文字数、リクエスト数)、適用した price version、計算済みのコストを保存する。これにより、請求明細をいつでも単位と単価の積に分解できる。Marketplace の境界で CCU が行う換算と同じだが、record 単位で処理し、後から検証できる形で残す。この設計は zero-retention modeとも両立する。usage record に必要なのはメーター値と content hash であり、payload は不要だ。upstream の価格が変わっても、price version により各 historical record に適用した料金表を特定できる。この性質があるからこそ、月末の照合を議論ではなく監査にできる。
FAQ
Audio token と text token は同じか?
異なる。Realtime audio token は独立したメーターで、単価も別だ。gpt-realtime-2.1 では 1 token が聞き取り音声 100 ms または発話音声 50 ms を表し、聞き取りは 1 分あたり $0.0192、発話は 1 分あたり $0.0768になる。同じモデル内でも audio と text には別々の料金表がある。
同じ画像でも provider によって token 数が違うのはなぜか?
画像ではなく変換方式が異なるからだ。patch 式、上限付き tile、固定料金が併存している。同じ 1024x1024 の画像でも、GPT-5.6 では 693 token、Gemini では 1,089 token、Claude では 1,372 token だった。ファイル形式や画像内容を変えても token 数は 1 つも変わらなかった。
Cached token は input token に含まれるか?
別の単位として計測され、操作ごとに単価が設定される。cache write は base input より割高で、Claude API では TTL に応じて 1.25x または 2x になる。read は 0.1x だ。provisioned capacity では、この区別が料金とキャパシティの両方に影響する。cached token は PTU capacity を消費しないため、caching によって料金だけでなく予約すべきキャパシティも減らせる。
音声では文字単位と分単位のどちらが安いか?
言語によって異なる。文字単位の TTS では、中国語音声は audio-minute あたり英語より 3 から 7x 安い。中国語は少ない文字数でより多くの内容を発話できるからだ。分単位の料金は言語に左右されない。計測した文字起こしモデルは、クリーンな音声に対する精度がほぼ同じでも audio-minute あたり $0.0020 から $0.0164だった。
単位の定義と料金は、2026-08-30 に取得した provider の料金ページ、および本文中でリンクした独自計測結果に基づく。価格は変わりやすく、単位の構造は比較的変わりにくい。それでも課金コードに数値を組み込む前に、リンク先の情報を確認してほしい。
関連する計測記事:token の内訳、prompt caching、cache の最小値、画像入力 token、画像生成、文字起こし、音声認識、realtime 音声、動画生成、Web 検索、音声 agent、tokenizer、言語別コスト。
