Gemini rate limits: per project, not per API key. And Sume?
Google says Gemini rate limits apply per project, not per API key, so a second key adds nothing. What Sume's docs say about plan limits and how to read them.

Google's Gemini rate-limit page says limits are applied per project, not per API key, so creating more keys in one project does not raise them. Sume's docs say every API key gets a request budget per minute, set by the subscription plan of the workspace the key belongs to, with separate read and write budgets.
Google facts are from its rate limits page (listed under Sources) and Sume facts from Authentication, read 2026-09-30.
What does each page say about the scope of a limit?
Google measures limits across requests per minute, input tokens per minute and requests per day, per project. Sume states a per-minute request budget for each key and ties its size to the plan of the workspace.
| Gemini API | Sume API | |
|---|---|---|
| Scope named | Per project, not per API key | Each key, by workspace plan |
| Dimensions | RPM, input TPM, RPD | Requests per minute; reads and writes separate |
| Live value on Sume | Not covered here | ratelimit-limit header on every response |
Does a second Sume key double my budget?
The docs do not say that keys share or add budgets, so do not plan around either. What they do say: keys are workspace-scoped, the plan sets the number, and ratelimit-limit on the response is the authority for the deployment you are talking to. Read it from your own traffic instead of multiplying keys.
Which limit is not about requests at all?
Generation concurrency. Sume governs how many generations run at once separately, through the plan's concurrency limit on the generation_limits object, and a higher request rate does not raise it. Keep API keys on your server and give each service its own key so one can be revoked alone from the API Keys dashboard.
Sources
Related posts
More in Developers
- cancel-in-progress killed my workflow; does the Sume job stop?
Cancelling a GitHub Actions run does not cancel a Sume job. Cancellation only works before generation starts, so store the job id and cancel it explicitly.
- GitHub Actions re-run: which idempotency key for Sume jobs?
GITHUB_RUN_ID stays the same on a re-run while GITHUB_RUN_ATTEMPT increments. Build the Sume Idempotency-Key from the run id so a re-run does not bill twice.
- Google Cloud Workflows callback needs an IAM token: relay Sume
A Cloud Workflows callback URL needs the workflows.callbacks.send permission and a Bearer token. Sume webhooks cannot carry one, so relay after verifying.
- google/veo-3.1 style ids vs Sume: bare video model ids
OpenRouter names video models org/slug, such as google/veo-3.1. Sume uses bare catalog ids like seedance-2 and never a provider prefix. How to port an id.
Written by Sume