What the three rate limit dimensions actually mean
Google enforces three independent rate limit windows on the free tier. RPM (requests per minute) caps how many API calls you can make in any 60-second rolling window. TPM (tokens per minute) caps the combined input + output tokens across all requests in that window. RPD (requests per day) is a hard 24-hour cap that resets at midnight Pacific Time.
You can hit any of the three independently. A single very large request — say, a 100k-token document analysis against Gemini 2.5 Pro — could max out your TPM without touching RPM. A burst of short requests could exhaust RPM before you've moved much of the TPM budget. And a sustained day of development can exhaust RPD even if individual bursts are well within RPM.
The practical implication: when you receive a 429 error on the free tier, the error body tells you which limit fired. Read it. The retry strategy differs: an RPM 429 needs only a 60-second backoff, an RPD 429 needs you to wait until midnight Pacific, and a TPM 429 needs you to either wait or switch to a smaller model for that request.
The most surprising limit for developers new to Gemini is the RPD on Gemini 2.5 Pro: only 25 requests per day on the free tier. At 5 RPM that sounds like you can burn through it in 5 minutes — and you can. If you're building a demo or running evals, budget those 25 daily calls carefully or upgrade to a paid key immediately.