Fix Gemini CLI 429 "No capacity available for model"
Tell a Gemini CLI 429 quota error from a server capacity error by its message, then switch models with /model, move to an API key, and set a retry interval.
One status code, two problems: either your quota is used up, or the server has no room. The fixes differ.
[1] Find your message. Both lines below are verbatim from a public issue and forum thread.
| Message | Meaning | Source |
|---|---|---|
You exceeded your current quota, please check your plan and billing details. | Account or key quota exceeded | issue #8883 |
No capacity available for model gemini-3.1-pro-preview on the server. | Server capacity exhausted | Google AI forum |
The capacity thread's log also shows status RESOURCE_EXHAUSTED and reason MODEL_CAPACITY_EXHAUSTED (reported on v0.35.3). Quota errors name the metric that filled up, such as Quota exceeded for metric: generativelanguage.googleapis.com/generate_content_free_tier_requests, limit: 50.
[2] Check the in-app notice. In 0.64.0 the two cases print different text.
We are currently experiencing high demand for all Pro models.We apologize and appreciate your patience./model to switch models.That one is capacity. This one is a quota limit:
Usage limit reached for all Pro models.Access resets at <time>./stats model for usage details/model to switch models./auth to switch to API key.[3] For a quota error, check usage first. Inside a session, run the command below to see token usage and limits per model (docs).
/stats modelDaily limits from the official page:
| Auth | Limit |
|---|---|
| Google login (Code Assist for individuals) | 1000 model requests per user per day |
| Unpaid Gemini API key | 250 per day, Flash only |
| Paid API key · Vertex AI | Pay as you go (billing, not a cap) |
When the quota ID contains PerDay or Daily, the CLI reports You have exhausted your daily quota on this model. and does not retry. Wait for the reset time, or go to [4] and [5].
[4] Switch models. Inside a session, use /model. To choose one at launch, pass -m; to pin one, set model.name in ~/.gemini/settings.json.
$ gemini -m gemini-2.5-flash{ "model": { "name": "gemini-2.5-flash" }}The capacity dialog offers Keep trying, Switch to <fallback model>, and Stop. Capacity fills per model, so Flash may be open while Pro is not.
[5] If it is a quota problem and you sign in with Google, switch to an API key. The notice's /auth line opens that menu. The docs call an API key the only way to keep a workflow from being interrupted by a quota. API keys still hit quota errors, as issue #8883 shows; users there report that attaching a billing account to the project cleared it (not confirmed by Google).
[6] Set a retry interval. When the server says how long to wait (for example Please retry in 15.002899939s.), the 0.64.0 code waits and retries if the delay is 300 seconds or less, and stops if it is longer. A MODEL_CAPACITY_EXHAUSTED error is never retried automatically, whatever the delay; you get the dialog above.
- Per-minute limit: retry after 15–60 seconds.
- Capacity: press
Keep tryinga few times, then switch models as in [4]. The forum thread reports it lasting weeks for some users, with no confirmed fix. - Daily limit: retry after the reset time in the notice.
Non-interactive -p runs have no dialog. Pin the model with -m in the script and have it retry with a pause on failure.