この記事の目次
Claude Codeのレート制限は、よく見る表示を4種類に分けると対処を選びやすくなります。Request rejected (429) はAPIキーやクラウドのプロジェクトに設定されたレート制限で、認証情報と並列度を見直します。Repeated 529 Overloaded errors はAPI側の一時的な容量不足で、使用量には数えられず、待つか /model で別モデルに切り替えます。Server is temporarily limiting requests はプランと無関係な短時間の制限で、少し待って再実行し、続く場合はステータスを確認します。You've hit your session limit などはサブスクリプションの契約上の上限で、表示されたリセット時刻まで待つのが基本です。529と一時的な制限(v2.1.199以降)は、表示の前に自動リトライが済んでいます。
Claude Codeのレート制限は、エラー文でどう見分ける?
まずClaude Codeの画面に出た文言を、次の表に当てはめます。文言は公式のエラーリファレンスにある表記です。
| 表示される文言 | 何が起きているか | 使用量との関係 | 最初にやること |
|---|---|---|---|
API Error: Request rejected (429) |
APIキー、Amazon Bedrock、Google Cloudのプロジェクトに設定されたレート制限に到達 | 使っている課金経路の制限 | /status で認証情報を確認し、並列度を下げる |
API Error: Repeated 529 Overloaded errors |
API全体の一時的な容量不足 | 使用量に数えられない | 数分待つ、/model で別モデルへ |
API Error: Server is temporarily limiting requests (not your usage limit) |
プランとは無関係な短時間のサーバー側制限 | プラン上限ではない | 少し待って再実行 |
You've hit your session limit / weekly limit / Opus limit / Sonnet limit |
サブスクリプションの利用枠を使い切った | プランの枠そのもの | リセット時刻まで待つ |
公式によると、Claude Codeは一時的な制限とプラン上限を、応答に統一クォータヘッダーが付いているかどうかで区別しています。利用者の側では、文言の末尾に (not your usage limit) と付いているかを見れば判断できます。
プラン上限(4行目)は、この記事では深追いしません。5時間の枠はセッション制限、週の枠は週間制限、全体像は使用制限の仕組みで扱っています。ここから先は、429・529・一時的な制限という、APIのレート制限側を中心に進めます。
Request rejected (429) が出たら何を確認する?
429は、公式の説明では「APIキー、Amazon Bedrockのプロジェクト、Google Cloudのプロジェクトに設定されたレート制限に達した」状態です。実際の表示は次のとおりです。
API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.
末尾の確認先は経路で変わります。Bedrock、Google CloudのAgent Platform、Microsoft Foundryでは各プロバイダのステータスページが、ANTHROPIC_BASE_URL でゲートウェイを通している場合はそのホスト名が入ります。途中のプロキシやロードバランサーが独自のHTMLで429を返し、そのページにタイトルがある場合は、· の後ろに Too Many Requests のようなタイトルが出ます。この形なら制限をかけているのは手前の中継機器なので、ネットワークの管理者に確認します。
レート制限の切り分けは次の順番で進めます。
- 認証情報を確かめる。
/statusを実行し、有効になっている認証情報が想定どおりかを見ます。公式は、環境に紛れ込んだANTHROPIC_API_KEYによって、サブスクリプションではなく低いティアのキー経由でリクエストが送られる場合があると注意しています。ProやMaxに加入しているのに429が出るなら、まずここを疑います。キーの置き場所と外し方はAPIキーの管理にまとめています。 - プロバイダ側の上限を見る。 使っているコンソールで現在の上限を確認し、足りなければ上位ティアを申請します。
- 並列度を下げる。 公式が挙げている方法は3つです。
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCYを下げる、並列実行のサブエージェントを多数走らせない、大量のスクリプト実行では/modelで小さいモデルに切り替える。
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY は、読み取り専用ツールとサブエージェントを同時に動かせる上限で、既定値は10です。1回の指示で多くのファイル調査やサブエージェントが並ぶ使い方では、短時間にリクエスト集中が特に起きやすくなります。サブエージェントの設計そのものはサブエージェントの使い方を参照してください。
529 Overloaded は自分の使いすぎが原因?
使いすぎではありません。公式は529を、サービス側の負荷による全ユーザー共通の一時的な容量不足と説明しており、使用上限には当たらず、クォータも消費しないと明記しています。
このメッセージは API Error: Repeated 529 Overloaded errors. で始まり、末尾にstatus.claude.comなどの確認先が付きます。表示された時点で、Claude Codeはすでに何度かリトライしています。対処は、status.claude.com(またはメッセージに書かれたプロバイダのステータスページ)で障害情報を見ること、数分の待機後に再実行することです。容量はモデルごとに管理されているため、/model で別のモデルに切り替えれば作業を続けられます。特定モデルの負荷が高いときは、Claude Code側から Opus is experiencing high load, please use /model to switch to Sonnet のように切り替えを促す表示が出ます。
一時的な制限とプラン上限は、待ち方がどう違う?
Server is temporarily limiting requests (not your usage limit) は、プランの枠とは関係のない短時間の制限です。v2.1.199以降は、認証方法にかかわらず、表示される前にバックオフ付きで自動リトライされます。それでも出たら少し待って再実行し、続くようならstatus.claude.comを確認します。
プラン上限の場合、Claude Codeはメッセージに表示されたリセット時刻までリクエストを止めます。押さえておきたい点は2つです。
- モデルを替えて戻るかどうかは種類で決まる。 sessionとweeklyの枠は全モデル共通なので、モデルを替えても戻りません。
Opus limitとSonnet limitはそのモデル系統だけにかかるため、/modelで系統外のモデルに替えれば続けられます。 - 残量は
/usageで確認する。 使用量の取得そのものがレート制限で失敗したときは、そのマシンで直近60分以内に読み込んだ値がShowing last-known usageの注記付きで表示され、rキーで再取得できます。
上限の手前では You've used 85% of your session limit · resets 3:45pm のような警告も出ます。残量を常に見ておきたいなら、ステータスラインに rate_limits を表示させる方法があります。5時間枠と7日枠の使用率(0〜100)と、枠がリセットされる時刻(Unixエポック秒)を受け取れますが、値が入るのはPro・Maxの加入者(または支出上限を設定したClaude appsゲートウェイ経由)に限られ、セッションで最初のAPI応答を受け取った後からです。公式はフィールドが無い場合に備えて、次の書き方を示しています。
jq -r '.rate_limits.five_hour.used_percentage // empty'
ステータスラインの組み立て方はステータスラインの設定で説明しています。
自動リトライの回数と待ち時間は変えられる?
変えられます。Claude Codeは、一時的な失敗を指数バックオフで最大10回リトライしてからエラーを表示します。一時的な429もこの対象ですが、ゲートウェイの支出上限による429はスロットルではないため、リトライされません。リトライ中はスピナーに Retrying in Ns · attempt x/y のカウントダウンが出て、原因がレート制限なら1回目から理由が表示されます。
調整に使う環境変数は次のとおりです。
| 環境変数 | 既定値 | 役割 |
|---|---|---|
CLAUDE_CODE_MAX_RETRIES |
10 | リトライ回数。v2.1.186以降は上限15だが、v2.1.199以降は CLAUDE_CODE_RETRY_WATCHDOG を有効にすると既定回数が増え、上限も外れる。スクリプトで失敗を早く知りたいときは下げる |
CLAUDE_CODE_RETRY_WATCHDOG |
未設定 | 1 にすると、429と529の容量エラーを回数で打ち切らず無期限にリトライする |
CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS |
未設定 | WATCHDOG有効時に、1リクエストが429・529を待つ時間の上限(ミリ秒)。設定しなければ待ち時間は無制限。v2.1.295以降 |
CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS |
500 | 529のリトライ間隔の初期値(ミリ秒)。最大32000まで上げられる |
公式が明示している調整の例は、スクリプトで素早く失敗を検知したいときに CLAUDE_CODE_MAX_RETRIES を下げることです。
CIやGitHub Actionsでレート制限に当たったら?
公式は、CIジョブのような無人のセッションでは CLAUDE_CODE_RETRY_WATCHDOG を 1 にする使い方を示しています。429や529で途中終了せず、回復するまで待ち続けるようになります。ただし、通常速度のリクエストに支出上限や利用クレジットの枯渇を示す429が返った場合は、待っても解消しないため即座に失敗します。
設定する前に、次の2点を把握しておきます。
- v2.1.199以降のWATCHDOGは、サーバーエラー・タイムアウト・接続断といった他の一時的エラーの既定リトライ回数も300に引き上げます。公式の表現で約3時間分のバックオフです。ジョブ側に実行時間の上限があるなら、その範囲に収まるかを確認します。
- 待ちすぎを防ぎたい場合は、
CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MSで1リクエストあたりの待ち時間に上限を付けます。
ワークフローの組み方はGitHub Actions連携にまとめています。
チームで使うとき、TPMとRPMはどれだけ確保する?
API経由でチームに導入する場合について、公式はチーム規模ごとに1人あたりの推奨値を示しています。
| チーム規模 | 1人あたりTPM | 1人あたりRPM |
|---|---|---|
| 1〜5人 | 200k〜300k | 5〜7 |
| 5〜20人 | 100k〜150k | 2.5〜3.5 |
| 20〜50人 | 50k〜75k | 1.25〜1.75 |
| 50〜100人 | 25k〜35k | 0.62〜0.87 |
| 100〜500人 | 15k〜20k | 0.37〜0.47 |
| 500人以上 | 10k〜15k | 0.25〜0.35 |
Claude Codeの公式の例では、200人なら1人20k TPMとして、合計400万TPMを申請します。規模が大きいほど1人あたりの値が下がるのは、大きな組織ほど同時に使う人が少なくなるためです。このレート制限は個人単位ではなく組織単位でかかるので、他の人が使っていない時間帯は、1人が配分以上を使えます。逆に、大人数での研修のように全員が同時に使う場面では、1人あたりのTPMを多めに見積もる必要があると公式は注意しています。
Claude Code用のワークスペースを分けている場合、その通信は組織全体のAPIレート制限に数えられます。Claude ConsoleのLimitsページでワークスペース単位の上限を設定すれば、Claude Codeが使える量に上限を付け、本番で動いている他のワークロードを守れます。
Fast modeやサブエージェントは、制限に当たるとどうなる?
Fast modeには、通常のOpusとは別のレート制限があります。そのレート制限に達すると自動で通常速度に切り替わり、↯ アイコンがグレーになり、クールダウンが終われば再び有効になります。待たずに自分で切りたいときは、もう一度 /fast を実行します。
サブエージェントのAPIリクエストが、使用上限への到達やサーバーエラーのリトライ切れで最終的に失敗すると、そのサブエージェントは作業の途中で止まります。この場合は、エラー詳細を公式エラーリファレンスの該当項目で確認し、原因が解消してから、タスクの再実行かサブエージェントの再開を指示します。
公式で変わりうる点と、今回書かなかったこと
この記事のエラー文、既定値、バージョン条件は、2026年10月18日時点のClaude Code公式ドキュメント(エラーリファレンス、コスト管理、環境変数、Fast mode、ステータスライン)に基づいています。文言や既定値は版ごとに変わってきた経緯があるため、手元の挙動が違う場合はエラーリファレンスの該当項目を見直してください。
Anthropic APIのティアごとの具体的なRPM・TPMの数値と、プランごとの料金・枠の大きさは扱っていません。前者はClaude Consoleのレート制限のドキュメント、後者は料金プランの比較で確認してください。429以外のエラー全般の切り分けはエラーの原因と対処にまとめています。
エラーの読み方やエージェントの並列運用を手を動かしながら学びたい方向けに、月額1,980円から参加できる学習コミュニティ「AI駆動ラボ」(lab.no-wave.jp)も運営しています。