Gemini image API 429: check a free-tier limit of 0

Diagnose Gemini image RESOURCE_EXHAUSTED errors by checking the quota metric, API key project and billing tier before retrying a free-tier limit of zero.

Gemini image API 429: check a free-tier limit of 0

If a Gemini image request returns 429 RESOURCE_EXHAUSTED with a free-tier quota and limit: 0, inspect the quota metric and the project behind the actual API key before retrying. A paid account balance is not enough to explain which quota was applied to that request. A suggested retry delay does not create an image allowance where the applied limit is zero.

This guide addresses the Gemini Developer API, particularly image requests made from an application or workflow. Vertex AI and third-party gateways have their own configuration paths. Follow the documentation for the service you actually call.

What the recent report establishes

On September 7, 2026, a user on the Google AI Developers Forum reported image requests failing while the project displayed Paid Tier 1 / Postpay. The post names gemini-3.1-flash-lite-image, free-tier quota metrics and a zero limit, while text requests reportedly worked.

That is a user report hosted on an official forum, not a Google-confirmed diagnosis of a platform-wide incident. It supports checking this particular failure pattern. It does not establish that every paid user is affected or that one billing action will resolve every case. Status checked September 9, 2026.

Google’s troubleshooting documentation and rate-limit guide remain the references for quota behavior. Use the returned error details and the project’s current quota display together.

Read the quota metric before changing anything

Save a sanitized copy of the error, including the HTTP status, model, quota metric, quota ID, applied limit and any retry information. Do not publish API keys or private project identifiers.

Error detailQuestion it helps answer
RESOURCE_EXHAUSTEDIs the response reporting an exhausted resource?
Metric mentioning free_tier_requestsWas a free-tier request quota applied?
Metric mentioning input tokensIs this about token usage rather than request count?
limit: 0 or quota_limit_value: 0Is the applied allowance zero?
Retry informationDoes the response suggest a delay, without guaranteeing a fix?
Model and location dimensionsWhich model and quota scope does the error concern?

The table describes what to inspect, not a replacement response schema. SDKs can format error details differently. Keep the original fields available when escalating a case.

Confirm which project the application uses

Open the application’s actual runtime configuration. Check whether the key comes from a local environment, deployment secret, workflow credential or proxy. A successful request from an API testing tool may use a different key from the deployed application.

Locate that key’s project in Google AI Studio or the relevant Google Cloud console. Compare it with the project whose billing tier and quotas you inspected. If they differ, correct the application’s configuration to use the intended authorized project; do not rotate through unrelated keys to evade quotas.

After changing a secret, confirm the running deployment has loaded the intended configuration. Never print the secret itself as a debugging step. A project association and a sanitized credential label are more useful evidence than a screenshot containing a key.

Check billing state and model quota separately

For the correct project, inspect the exact image model’s available quota and current usage. Text generation working does not establish image-model access. Likewise, prepaid balance and a displayed tier do not, by themselves, explain a request that still reports a free-tier metric.

If the dashboard and error disagree, record both with timestamps. Check whether billing setup or a project change is still being processed, using the current billing instructions. If the inconsistency persists, submit the evidence to support rather than assuming that purchasing more credits will repair quota assignment.

Do not copy a numeric quota from another model, region or account tier into your diagnosis. The current rate-limit documentation describes multiple dimensions of limits; inspect the one named in your error.

When should you retry?

For a transient limit with available quota, use bounded exponential backoff, respect retry guidance and lower concurrency. Set a maximum number of attempts so that a workflow does not retry forever. Check whether your SDK already retries before wrapping it in another retry loop.

For a zero applied quota, first resolve or clarify the project and quota state. Waiting briefly can be part of checking a recent configuration change, but an endless retry loop does not repair a persistent zero allowance. Changing the prompt is also not evidence that you corrected the quota issue.

Prepare a useful support case

Include the timestamp and timezone, exact model, API service, SDK version, sanitized quota details, project identifier through the private support channel, and the billing/limit state for that same project. State whether a single image request fails or only concurrent requests fail.

Separate observations from assumptions: “the response applied a free-tier metric with limit zero” is stronger than “billing is broken.” If you later test a fix, record the configuration change and the subsequent response instead of attributing success to everything you tried.

For broader error handling, see the API troubleshooting guide. If you are evaluating another image API, the GPT Image 2.5 setup guide and pricing explanation cover its separate credentials and charges; another service is not a fix for the original project’s quota.

Frequently Asked Questions

Why can a paid Gemini project report a free-tier limit of 0?
The error identifies the quota applied to that request. Check the project attached to the actual API key, the model's available quota and the project's billing state. A paid dashboard screenshot alone does not identify the cause.
Should I keep retrying when the quota limit is 0?
A retry delay does not grant a positive quota. Verify the applied quota and project setup first. Use bounded exponential backoff for transient rate limits, not an endless loop for a zero-limit condition.
Does text generation working prove image generation should work?
No. Model quotas and access can differ. Compare the exact image model and quota metric instead of using a successful text request as proof of image availability.