「5ドルまで使ったら止まる」と思っていた設定が、管理画面に見当たりませんでした。私のOpenAIの画面には、120ドルという金額と「Limit not enforced」の表示がありました。上限を強制しない、という意味です。
点検のきっかけは、SNSで見かけたAPIキーの流出と高額請求の記事です。自分にも、試しに作ったままのキーがありました。管理画面を開くと、存在を忘れていたキーや、パソコンに残った設定ファイルも見つかりました。
今回は、私が何を見て、どう後始末したかをまとめます。上限と支払いは、OpenAIの実例で説明します。画面の表示は2026年10月17〜18日、公式情報は10月18日時点のものです。
関連記事:作業フォルダにキーが残っていないか気になる方は、Claude Codeのセキュリティ設定(.envを探した記録)も参考にしてください。
点検すると、止まらない上限と使っていないキーが見つかりました
APIキーは、ツールやプログラムがAPIを使うときの認証情報です。使えるキーが第三者に渡ると、自分の契約で利用され、費用が発生するおそれがあります。
今回、私が確認したのは次の4か所です。

図1は、本人の画面の記録と作業結果を整理したものです。管理画面のスクリーンショットではありません。
上限と支払いの設定は、何となく覚えている状態でした。キーの一覧も、使っているものだけが残っているつもりでした。実際に開いてみると、どちらも記憶とは違っていました。
「上限5ドル」のつもりが、Limitsには120ドルと表示されていました
金額と一緒に、「利用を止める設定か」を読みます
5ドルに設定したと思っていたのは、以前、講座で教わった記憶があったからです。ところがLimits(利用制限)の画面には、その設定が見当たりませんでした。
組織の「Organization spend limit」には、$0.00 / $120.00 とありました。左は今の期間の利用額、右は設定されている金額です。その下に、Limit not enforced と表示されていました。
さらに、実際の費用は利用状況によってこの額を超える場合がある、という注記もありました。メール通知は、80%の96ドルと100%の120ドルで設定されていました。リセットまでは、あと14日という表示です。

OpenAIでは、組織の中にプロジェクトがあります。プロジェクト単位でも設定を持てるため、既定のプロジェクトのLimitsも開きました。こちらは No spend limit set、つまり支出上限が未設定でした。

私は、5ドルで止まると思い込んでいました。画面を見て、危なかったと思いました。
通知する設定と、利用を止める設定は別です
OpenAI公式のSpend limitsでは、通知と停止を分けて説明しています。
支出アラートは、設定した金額に達したことを知らせる機能です。通知が来てもAPIの利用は続きます。利用を止めたい場合は、Enforce a hard limit を有効にする必要があります。組織とプロジェクトのそれぞれに設定できるため、対象も確認します。

金額が入っていることと、その金額で利用が止まることは別です。
上限に達すると、対象のリクエストは429エラーで拒否されます。ただし、停止の反映は即時ではなく、設定額を少し超える場合があります。429には回数制限など別の原因もあるため、原因を調べるときはエラーの内容も確認します。公式のエラー説明に区別が載っています。
ハード上限は、2026年7月22日の公式更新履歴に追加が記載されています。古い解説記事だけで判断せず、現在の画面の表示を確かめる必要がありました。
私は今回、ハード上限を有効にしていません。ここで説明した停止の動作は公式資料によるもので、自分で停止させて試した結果ではありません。
前払い残高は8.35ドルで、自動チャージはオフでした
残高は、支出の厳密な上限にはなりません
Limitsの次に、Billing(支払い)の画面を開きました。支払い方式は Pay as you go で、API credit balanceは8.35ドルでした。前払いで購入したクレジットの残りです。
自動チャージは Auto-reload is off、つまりオフでした。自動チャージは、残高が設定した金額を下回ると、登録した支払い方法でクレジットを買い足す仕組みです。

前払いでは、残高がなくなると請求関連のエラーで利用できなくなります。ただし、停止には遅れがあります。その間の利用分がマイナス残高になり、次にクレジットを購入するときに差し引かれる場合があります。OpenAIの前払い請求の説明にも、この点が明記されています。
残高が8.35ドルだから、使われる金額も必ず8.35ドル以内とは言えません。
自動チャージをオフにすると、自動での買い足しを止められます。すでにある残高の利用を止めたり、有効なキーを失効させたりする設定ではありません。
APIを使っていなかったので、カード情報も削除しました
点検の後、登録していたカード情報を消しました。Billingに表示された Add an API payment method before turning on auto-reload は、その結果です。自動チャージをオンにする前に、支払い方法を登録してください、という意味です。
私は、残高8.35ドル、自動チャージはオフ、カード情報もない状態で、今回の支払い設定の点検を終えました。キーも10件すべて失効させています。
この対応は、APIを使っていなかった私の場合です。使い続ける方は、通知だけでなくハード上限も確認してください。カード情報を消すことと、キーを使えなくすることは別です。
キーは10件あり、使っていたのは2件でした
使用額が0ドルでも、不要なキーは残っていました
点検でいちばん驚いたのは、API keysの一覧です。10件のうち、使っていたのは2件だけでした。残りの8件は、どれも作ったこと自体を忘れていました。
最終使用日は、いちばん新しいもので2026年4月29日でした。ほかは2025年6月〜2026年2月で、Never と表示されたものも1件ありました。月の使用額は、10件すべて0ドルでした。
使用額が0ドルでも、そのキーが不要か、有効かは別に確認します。最終使用日が古いものや Never のものは、使い道を調べる候補になります。ただし、実行日が限られた処理で使っている可能性もあります。日付だけで失効を決めず、ツールの設定も確かめます。
終わった企画や講座のキーを、そのままにしていました
残っていたのは、停止した動画の企画や、講座・試作で作ったキーです。動画の企画では、文字起こし、翻訳、読み上げにAPIを使っていました。講座や試作では、AIアプリを作るツールのDifyに登録するキーを作っていました。
企画を止めたり、講座が終わったりした時点で、キーの後始末をしていませんでした。フォルダを片づけても、管理画面のキーまでは見直していなかったのです。
10件すべてをRevokeしました
私の画面では、キーを一覧から消すのではなく、Revoke で失効させる操作でした。失効は、そのキーを認証に使えなくすることです。
使っていた2件も含め、10件すべてを失効させました。操作後も一覧には残り、状態はすべて Revoked になりました。一覧に表示が残ることと、使えることは別だと分かりました。

この表示は、私が確認した画面の記録です。画面が違う場合も、キーの名前が消えたかだけで判断せず、状態を確かめてください。
管理画面で失効させても、パソコンの.envには文字列が残っていました
8月に見つけていた2つのファイルを、消していませんでした
.env は、APIキーなどの設定を書いておくファイルです。管理画面とは別に、自分のパソコンの中にあります。
停止した動画企画のフォルダをアーカイブへ移したとき、このファイルを残していました。2つの .env に、OpenAIのキーの文字列が入っていました。
実は、2つとも8月に書いたClaude Codeのセキュリティ設定の記事で見つけたファイルと同じです。見つけていたのに、消していませんでした。
今回は、2つともファイルごと消しました。Claudeが出したコマンドを、私がターミナルに貼って実行しました。削除後は、Claudeにファイルがなくなったことを確かめてもらいました。
キーの失効と、文字列の削除を分けて考えます

.env だけを消しても、管理画面で有効なキーは使えるままです。別の場所にコピーがあれば、そこから利用できます。逆に、キーを失効させても、ファイルに書いた文字列は自動では消えません。
そのため、不要なキーを失効させたあとで、保存先も確認します。停止した企画やアーカイブのフォルダも対象です。ほかの設定が入っている .env は、ファイルごと消すと困る場合があります。必要な設定を残し、不要なキーの行を削除する方法もあります。
画面共有やスクリーンショットに、キーの文字列を写さないことも必要です。ファイルの中身をAIに丸ごと貼って探してもらう方法は避けます。
英語の画面をAIに聞きながら、キーの後始末に約50分かかりました
正直に書くと、画面を開いても、最初は表示の意味がよく分かりませんでした。AIに聞きながら、一つずつ確かめました。
OpenAIを含む、キーの後始末全体にかかった時間は約50分です。2026年10月17日の会話記録の、5時47分〜6時37分から数えました。その前の別の点検は含みません。上限と支払いの画面は、翌18日に確認しました。
私がかかった時間なので、同じ時間で終わるとは限りません。キーがどのツールで使われているかを確認する作業もあります。
AIに聞くときは、まず「Limit not enforcedとはどういう意味か」のように、表示文言だけで質問できます。スクリーンショットが必要なら、キーの文字列や個人情報を隠してから渡します。
自分で点検するなら、この順に確認します
普段の点検では、まずAPIキーを作ったサービスを書き出します。使っていないサービスや、終わった講座で使ったものも含めます。そのあとで、次の項目を確かめます。
| 確認する場所 | 読み取ること |
|---|---|
| Limitsを開きます。 | 金額だけでなく、通知だけか、利用も止める設定かを確かめます。組織とプロジェクトを分けて見ます。 |
| Billingを開きます。 | 支払い方式、残高、自動チャージ、登録した支払い方法を確かめます。 |
| API keysを開きます。 | 何のツールで使うキーか、最終使用日、使用額、現在の状態を照合します。 |
| 手元の保存先を探します。 | .env やツールの設定、アーカイブに、不要なキーが残っていないかを確かめます。 |
使い続ける処理のキーを定期的に交換する場合は、新しいキーに差し替えて動作を確かめてから、古いキーを失効させます。OpenAIの運用ガイドでも、この順序を案内しています。
ただし、流出が疑われるキーは、普段の整理とは対応が違います。そのキーの失効を優先し、利用履歴や請求状況も調べます。OpenAIの安全対策ガイドも、漏えいや不正利用が疑われるキーを速やかに失効させ、交換するよう案内しています。
よくある質問
たまにしか使わない個人でも、点検は必要ですか
私は必要だと考えています。今回の一覧も、月の使用額はすべて0ドルでした。利用額がないことと、使えるキーが残っていないことは同じではありません。使い道を忘れたキーがあれば、どのツールに登録したものかを調べておきます。
キーを失効させると、使っているツールは止まりますか
そのキーで認証している処理は使えなくなります。私は今はAPIを使っていなかったため、10件すべてを失効させました。継続中の処理がある場合は、交換の順序を上の節で確認してください。
ハード上限を設定すれば、キーの後始末は不要ですか
不要にはなりません。ハード上限は支出を抑える設定で、漏れたキーを無効にする操作ではありません。上限にも停止までの遅れがあります。利用を続ける場合の支出管理と、不要なキーの失効を組み合わせます。
Claude Codeに.envを読ませない設定も必要ですか
Claude Codeでは、Readの拒否ルールで .env などの読み取りを制限できます。ただし、ファイルを開くスクリプトなど、別の経路まで一律に止める設定ではありません。Claude Code公式の権限の説明にも、対象範囲が書かれています。
具体的な設定は、Claude Codeの許可設定にまとめています。この設定をしても、使わないAPIキーの失効は別に行います。
関連記事:Codexに学習させない設定は2か所
まとめ
今回見つかったのは、5ドルで止まると思い込んでいた設定と、放置したAPIキーでした。管理画面では10件を失効させ、手元に残っていた2つの .env も削除しました。
上限の金額だけでは、利用が止まる設定かどうかは分かりません。まずは、キーを作ったことがあるサービスを一つ選び、上限の表示とキーの状態を確かめてください。

コメント