ChatGPT の API Key を使ってアプリを作るとき、一番気になるのは「結局いくらかかるの?」という点だと思います。
本記事では、Qiita にそのまま投稿できる形で、
- ある程度リアルな前提条件を置いたうえで
- 複数モデルの 1リクエストあたりの概算コスト
- Flex(半額)適用時の再見積もり
をまとめてみました。
※ あくまで「イメージを掴むための概算」です。
計算に使えるサイト
自作サイトですが、下記のサイトで計算できます。
前提条件(今回の想定)
今回は以下のような、よくある ChatGPT アプリを想定します。
- 入力:英語 1500 トークン
- ユーザーの入力
- 内部プロンプト(指示文・システム文)を含む
- 出力:日本語 300 トークン
- 返信文・生成結果
- 1回の API 呼び出しで完結
- 料金は 1,000,000 トークンあたりの単価(ドル) を使用
コスト計算式
基本的な考え方は以下です。
1リクエストのコスト = 入力コスト + 出力コスト
- 入力コスト
単価 × 入力トークン数 ÷ 1,000,000 - 出力コスト
単価 × 出力トークン数 ÷ 1,000,000
モデル別:1リクエストあたりの概算コスト
まずは Flex を考慮しない元の計算結果です。
(入力 1500 / 出力 300 トークン、入力のみ英語前提)
(1 ドル 160 円換算)
| モデル | 計算式 | 1リクエストあたり |
|---|---|---|
| gpt-5-nano | 0.05 × 160 × 1500 / 1,000,000 + 0.40 × 160 × 300 / 1,000,000 | 0.0312 円 |
| gpt-4.1-nano | 0.10 × 160 × 1500 / 1,000,000 + 0.40 × 160 × 300 / 1,000,000 | 0.0432 円 |
| gpt-4o-mini | 0.15 × 160 × 1500 / 1,000,000 + 0.60 × 160 × 300 / 1,000,000 | 0.0648 円 |
| gpt-5-mini | 0.25 × 160 × 1500 / 1,000,000 + 2.00 × 160 × 300 / 1,000,000 | 0.1560 円 |
| gpt-4.1-mini | 0.40 × 160 × 1500 / 1,000,000 + 1.60 × 160 × 300 / 1,000,000 | 0.1728 円 |
| gpt-5.1 | 1.25 × 160 × 1500 / 1,000,000 + 10.00 × 160 × 300 / 1,000,000 | 0.7800 円 |
| gpt-5.2 | 1.75 × 160 × 1500 / 1,000,000 + 14.00 × 160 × 300 / 1,000,000 | 1.0920 円 |
Flex 適用(半額)で再見積もり
先程と同じ下記の条件で、Flex を用いて再計算してみます。
・入力:1500トークン/出力:300トークン(入力は英語のみを想定)
・1ドル=160円換算
| モデル | Flex 適用後 | 備考 |
|---|---|---|
| gpt-5-nano | 0.0156 円 | 半額 |
| gpt-5-mini | 0.0780 円 | 半額 |
| gpt-5.1 | 0.3900 円 | 半額 |
| gpt-5.2 | 0.5460 円 | 半額 |
どれくらい安いのか?ざっくり感覚
例として、1日 1,000 リクエスト飛ぶ小規模のアプリを考えてみます。
- gpt-5-nano(Flex)(かなり低速)
約 0.0156 円 × 1,000 ≒ 16 円 / 日 - gpt-5-nano(Standard)
約 0.0312 円 × 1,000 ≒ 31 円 / 日 - gpt-5-mini(Flex)
約 0.0780 円 × 1,000 ≒ 78 円 / 日 - gpt-5.1(Flex)
約 0.39 円 × 1,000 ≒ 390 円 / 日
月額にしても数百円〜数千円レベルに収まるケースが多く、
「思ったより全然安い」と感じる人も多いはずです。
注意点
- 日本語は英語より トークン効率が悪い
→ 実際は 1.2〜1.5 倍程度になることも - 会話履歴を毎回全部送る設計だと、入力トークンが増えがち
- 画像入力・Vision・Tools 使用時は別料金になる場合あり
体感速度について(Flex 利用時の印象)
実際に使ってみた体感としては、同じ Flex でもモデルによって応答速度の印象がかなり異なります。
-
gpt-5-nano
- Flex 適用時は明確に「遅さ」を感じることが多い
- バッチ処理や非同期前提の用途なら問題ないが、
- チャットUI
- 入力直後にレスポンスを期待するUX
ではややストレスになる場面がある
-
gpt-5-mini
- Flex 適用時でも体感的に十分速い
- 通常利用(チャット・補助ツール・文章生成)では
- 「待たされている感覚」はほぼない
- コストと速度のバランスが非常に良い
まとめると、
- 最安を突き詰めるなら gpt-5-nano Flex(ただし遅め)
- 少し安く済ませる程度なら gpt-5-nano Standard
- 実用性重視なら gpt-5-mini(Flexでも快適)
という使い分けになる印象です。
※ 5 系ならば、多少精度が落ちたとしても reasoning_effort は minimal 以外の選択肢は無いと思います。
※service_tier: "flex" を設定する事で Flex にする事ができます。
※gpt-5-nano Standard reasoning_effort: "minimal" は反応速度が最速のため、多少精度が低くても最もストレスフリーです。実装の際は、ぜひ stream: true で実装して試してみてください。
※stream: true の実装は面倒ですが、実装することでアプリ使用時のストレスを軽減できます。
Standard と Flex の違いについて
Standard と Flex は、同じAIモデル・同じ生成精度で動作します。
違いは 処理の優先順位と料金のみです。
・Standard:高優先度で即時に処理される(安定・高速、料金は高め)
・Flex:低優先度で空きリソース時に処理される(遅延や待ちが発生する可能性あり、料金が安い)
つまり、品質は一切変わらず、
「速さと安定性を取るか(Standard)/コストを取るか(Flex)」の選択です。
即時応答が必要なUI用途は Standard、
バッチ処理や多少遅れても問題ない処理は Flex が適しています。
Flex の場合、
429 エラー(ChatGPT に利用可能な空リソースが明確に存在しない場合)が発生した際には、Standard に切り替える処理を実装することが必須だと考えます。
また、長時間レスポンスが得られない場合にも、Standard に切り替える判断が必要になるかもしれません。
テスト環境
テスト環境を公開します。(要 ChatGPT API Key)
コードは Qiita に貼らず、GitHub に公開しています。
以下のリンクから HTML ファイルをそのままダウンロード してください。
使い方は非常に単純で、
- 上記リンクから HTML をダウンロード
- html に不審なコード(情報の抜き取りなど)が含まれていないか ChatGPT で調査する
- ローカルでダブルクリック or ブラウザで開く
- OpenAI の API Key を入力
- モデルやパラメータを調整して「送信」
これだけです。
免責事項
- 本記事の内容は、筆者個人の利用経験および公開されている料金情報をもとにした概算・体感ベースの情報です。
- 実際のレスポンス速度やコストは、以下の要因によって変動する可能性があります。
- 利用時間帯や混雑状況
- リクエストサイズやトークン数
- Flex の内部スケジューリング状況
- ネットワーク環境や実装方法
- 各モデルの性能・料金・Flex の仕様は、今後予告なく変更される可能性があります。
- 本記事の情報を利用したことによって生じたいかなる損害についても、筆者は責任を負いかねます。
あくまで 「検討初期の目安・感覚値」として参考にして頂ければ幸いです。
まとめ
- ChatGPT API は nano / mini 系なら 1リクエスト数銭レベル
- Flex を使うと 体感コストはさらに半分
- 小〜中規模アプリなら、インフラ費より安いことも珍しくない
これから ChatGPT API を使ったアプリを作る方の、
「心理的ハードルを下げる材料」になれば幸いです。