Bursts
Each key may make a number of requests a minute set by the plan: Hobby 120, Starter 600, Growth 3,000, Scale 12,000, and 60 for a test key on an account with no plan. Every response carries RateLimit-Policy; a refusal is a 429 with type rate-limited and a Retry-After header. Publishable keys also carry a limit of thirty a minute per address.
Bursts are per key. A product that needs more than the plan’s burst on one key is a product that needs a bigger plan, or a batch.
The monthly allowance
A check is one text: each batch item counts, a cached answer counts, a refused request does not. The allowance resets with the billing period.
- Research stops at the allowance with a 429 of type
quota-exceededuntil the period resets. - Paid plans continue. Checks past the allowance are billed at the plan’s rate on the same invoice, and you are emailed at 80% and at 100%.
- A spend cap, if you set one on the billing page, stops a paid plan’s live and publishable keys once the period’s overage reaches it, with the same 429
quota-exceeded, until the period resets or you raise it.
The current count is on the dashboard and at /v1/usage.
No plan
A new account has no plan, and so does one whose plan was cancelled, went unpaid past the seven-day grace, or whose research grant ended. It has test keys only. Its live and publishable keys are refused with a 402 of type subscription-required before anything is checked, until it chooses a plan; the same keys then answer within a minute. Plans start with Hobby at $9 a month.
Test keys
up_test_… keys share one cap of 100 checks a day per account, on every plan and with no plan, however many you make, answered with type test-key-daily-cap past that. They are never billed and never count toward an allowance, except on Research, where they count toward the grant’s. They run the same engine as live keys, and they are for building and testing, not for serving your users.
Quota checks are not on the hot path
The allowance is checked from a flag that a cron refreshes every five minutes from the usage counters, so a check never waits on a count and a plan that has just crossed its allowance may get a few more answers than the number says.