Claude の Max(または Pro)を契約していて、Claude Code にもそのアカウントでログインしている。なのに、ある日こう言われることがあります。
Credit balance is too low
画面によっては次のように出ます。
Credit balance too low · Add funds: https://platform.claude.com/settings/billing
サブスクの料金はちゃんと払っています。それなのに「残高が足りないのでチャージして」と言われる。言われたとおり Console でクレジットを買ってしまう前に、まず確認してほしいことがあります。
結論
シェルに ANTHROPIC_API_KEY が残っていて、Claude Code がサブスクではなくその API キーで動いている可能性が高いです。公式の Error reference でも、サブスク契約者がこのエラーを見たときに最初に確認する項目として挙げられています。
確認はこの1行でできます。
claude auth status
"authMethod": "api_key" と出たら当たりです。キーを外せば、サブスクに戻ります。
なぜ API キーのほうが使われるのか
Claude Code は、複数の認証情報があると決まった順番で選びます。公式ドキュメント(Authentication)の優先順位はこうです。
- クラウドプロバイダ(
CLAUDE_CODE_USE_BEDROCK/CLAUDE_CODE_USE_VERTEX/CLAUDE_CODE_USE_FOUNDRY) ANTHROPIC_AUTH_TOKENANTHROPIC_API_KEY-
apiKeyHelperの出力 -
CLAUDE_CODE_OAUTH_TOKEN(claude setup-tokenで発行する長期トークン) - Anthropic のプロファイル / フェデレーション
-
/loginでのサブスクのログイン
サブスクのログインは一番最後です。環境変数に API キーが1つあるだけで、そちらが勝ちます。
対話モードで起動したときは、ANTHROPIC_API_KEY を見つけると「この API キーを使いますか」と一度だけ聞かれ、その答えが記憶されます。昔なにげなく「はい」を選んでいると、それ以降は黙ってキーが使われ続けます(答えは /config の「Use custom API key」で変えられます。この項目はキーが環境変数にあるときだけ表示されます)。claude -p で実行した場合は、確認すらありません。キーがあれば必ずそれを使います。
よくある「キーが紛れ込む」経路はこのあたりです。
- 以前 API を試したときに
~/.zshrcや~/.bashrcにexport ANTHROPIC_API_KEY=...と書いた - 別のツール(SDK のサンプル、他の AI ツール)のために設定したキーが残っている
- プロジェクトの
.envrc(direnv)や.envで読み込まれている - 前の職場や昔のプロジェクトの組織のキー
最後のケースで、その組織がもう無効になっていると、エラーは This organization has been disabled. や Your ANTHROPIC_API_KEY belongs to a disabled organization に変わります。原因と直し方は同じです。
手元で再現した結果
サブスク(Max)でログイン済みの端末で、ダミーの API キーを環境変数に入れて試しました(Claude Code 2.1.310 / macOS / 2026-10-25)。
まず、キーなしの状態です。
$ claude auth status
{
"loggedIn": true,
"authMethod": "claude.ai",
"apiProvider": "firstParty",
...
"subscriptionType": "max"
}
同じ端末で、環境変数にキーを入れるとこう変わります。
$ ANTHROPIC_API_KEY=sk-ant-api03-dummy claude auth status
{
"loggedIn": true,
"authMethod": "api_key",
"apiProvider": "firstParty",
...
"apiKeySource": "ANTHROPIC_API_KEY"
}
authMethod が claude.ai から api_key に変わり、subscriptionType が消えました。ログイン自体は残っているのに、使われなくなっています。
この状態で claude -p を実行すると、次のように出ました。
$ ANTHROPIC_API_KEY=sk-ant-api03-dummy claude -p "hi"
⚠ claude.ai connectors are disabled because ANTHROPIC_API_KEY or another auth source is set and takes precedence over your claude.ai login · Unset it to load your organization's connectors
Invalid API key · Fix external API key
今回はダミーのキーなので Invalid API key になりました。本物のキーで、その組織の Console 残高がゼロなら Credit balance is too low になります。1行目の警告にも、API キーが claude.ai のログインより優先されていると書いてあります。
直し方
1. どこで設定されているかを探す
# いまのシェルに入っているか
env | grep ANTHROPIC
# シェルの設定ファイルに書いていないか
grep -n ANTHROPIC ~/.zshrc ~/.zprofile ~/.zshenv ~/.bashrc ~/.bash_profile ~/.profile 2>/dev/null
# Claude Code の設定ファイルの env に書いていないか
grep -n ANTHROPIC ~/.claude/settings.json .claude/settings.json .claude/settings.local.json 2>/dev/null
# いまいるディレクトリの direnv / .env
grep -n ANTHROPIC .envrc .env 2>/dev/null
settings.json の "env" に書いた環境変数も Claude Code に渡ります。シェルを探しても見つからないときは、ここも見てください。apiKeyHelper を設定している場合も、サブスクより優先されます。
2. 外して、開き直す
unset ANTHROPIC_API_KEY
見つけた設定ファイルの行も消すかコメントアウトして、ターミナルを開き直します(unset は今のシェルにしか効きません)。
3. 戻ったことを確認する
claude auth status
"authMethod": "claude.ai" と "subscriptionType" が出ていれば元に戻っています。Claude Code のセッション中なら /status でも確認できます。ログインが外れていたら /login してください。
API キーは使いたい、でもサブスクと混ざるのは困る場合
SDK や他のツールのためにキー自体は必要、ということもあります。その場合は、シェル全体で export しないのが一番安全です。
- direnv を使い、キーが必要なプロジェクトのディレクトリでだけ読み込む
- スクリプトの中でだけ渡す(
ANTHROPIC_API_KEY=... python script.py)
CI などで claude -p をサブスクで動かしたいときは、claude setup-token で発行したトークンを CLAUDE_CODE_OAUTH_TOKEN に入れます。ただし優先順位は ANTHROPIC_API_KEY のほうが上なので、同じ環境に API キーが残っているとやはりそちらが使われます。
本当に API キーで使っている場合
サブスクではなく、意図して Console の API キーで Claude Code を使っているなら、メッセージどおり残高切れです。
- platform.claude.com/settings/billing でクレジットを追加する。自動チャージ(auto-reload)を有効にしておくと、残高ゼロで止まるのを防げる(公式の推奨)
- チャージしたのに直らないときは、
/loginをやり直す、またはクレジット購入後に API キーを作り直すと通ったという報告が GitHub の issue に複数あります(#54839、#31537) - Console で月の支出上限を残高より低く設定していないかも確認する
なお、Max プランに付いてくる月々の API クレジットは、Claude Code やアプリの利用には使えないと公式ヘルプに書かれています(Using Claude Code with your Pro or Max plan)。
同じ原因で出る別のエラー
API キーの紛れ込みは、残高以外のエラーとしても出てきます。どれも、最初に claude auth status を確認するところから始めてください。
| メッセージ | 紛れ込んだキーがどういう状態か |
|---|---|
Credit balance is too low |
その組織の Console 残高がない |
This organization has been disabled. |
その組織が無効になっている |
Request rejected (429) |
そのキーのレート制限が低い |
Invalid API key · Fix external API key |
キーそのものが無効(失効・打ち間違い) |
claude.ai connectors are disabled because ANTHROPIC_API_KEY ... |
エラーではないが、claude.ai のコネクタが読み込まれない |
Claude Code で出るほかの英文エラーと、それぞれの対処は、早見表にまとめています。

