Paid Tier 1: Sporadic 429 RESOURCE_EXHAUSTED on gemini-2.5-flash-image despite being well under quota

I’m getting sporadic 429 RESOURCE_EXHAUSTED errors on gemini-2.5-flash-image image generation, despite my usage being well below my Paid Tier 1
limits.

Account Details

  • Tier: Paid Tier 1
  • Project: Default Gemini Project
  • Model: gemini-2.5-flash-image
  • Billing: Active, with valid payment method

Usage vs Limits (last 7 days)

Metric Usage Limit
RPM 9 500
TPM 1.3K 500K
RPD 716 2,000

As you can see, I’m at ~1.8% of my RPM limit and ~36% of my RPD limit — nowhere near the quota ceiling.

Error Details

ApiError: {“error”:{“code”:429,“message”:“Resource has been exhausted (e.g. check quota).”,“status”:“RESOURCE_EXHAUSTED”}}

  • Endpoint: generateContent with responseModalities: ['IMAGE']
  • Frequency: ~81 occurrences over the past 2.5 months (ongoing)
  • Pattern: Appears random — not correlated with high traffic bursts
  • Other models unaffected: gemini-2.5-flash (text) and gemini-2.5-flash-native-audio work fine on the same API key

What I’ve Verified

  1. Billing is active and explicitly assigned to the project
  2. Usage dashboard confirms I’m well within all limits (RPM, TPM, RPD)
  3. Text-based models on the same key/project work without issues
  4. The error is specific to image generation requests

Impact

This is a production children’s education app. When users try to generate images, they randomly get failures even though our volume is low. We’ve had to
implement retry logic as a workaround, but the underlying issue seems to be on Google’s side.

Question

Is there a known issue with image generation models being incorrectly routed to free tier quotas on Paid Tier 1 accounts? I’ve seen similar reports from
other developers ([thread 1](https://discuss.ai.google.dev/t/bug-paid-tier-1-account-getting-free-tier-requests-limit-0-on-image-generation-models-gemini-
2-5-flash-image-gemini-3-pro-image-preview/123906), thread
2
).

Any guidance on how to resolve this would be appreciated. Happy to provide trace IDs or additional logs if needed.

1 Like

In our case it was a billing account issue as per my last comment:

”For those facing a similar issue, it turns out that billing got automatically disabled on our account when the free trial expired, even though we had a linked billing account. A billing admin had to assign a new billing account to our project on the GCP”

I’m having same issue. I’m getting constant 429 even tho im in paid tier 1. and my free trial is still active