Limits and quotas
Every limit that can change what the gallery does, in one place. Most readers never meet any of them; the one worth understanding in advance is the daily model allowance behind the search box, because it is the only limit whose effect lasts longer than a minute.
Rate limits
Section titled “Rate limits”All of these are per client address, per minute, and all of them return a plain sentence rather than a silent failure.
| What | Limit | On refusal |
|---|---|---|
| Questions to the search box | 20 / minute | 429 — “Too many questions in a row — give it a minute.” |
| Dashboard requests | 6 / minute | 429 — “That is a lot of requests in a row — give it a minute.” |
| Bundle downloads | 20 / minute | 429 — “Too many downloads in a row — give it a minute.” |
| View beacons | 60 / minute | 429 with an empty body |
The duplicate check and the clarifying question on the request form share the request limit. Neither returns an error when refused — the duplicate check shows no cards and the clarifier shows no question, because both are asides beside a form that works without them.
Content limits
Section titled “Content limits”| Where | Limit |
|---|---|
| A question to the search box | 800 characters |
| A dashboard request | 10 to 1,200 characters |
| An email address on a request | 254 characters |
| Draft length before a clarifying question is offered | 40 characters |
| Dashboards per API listing page | 60 by default, 100 maximum |
| Results the duplicate check shows | 3 |
The answer engine’s own caps
Section titled “The answer engine’s own caps”| Limit | Value | What happens at it |
|---|---|---|
| Searches per question | 3 | The search tool is withheld, not merely discouraged, and the model is told to answer from what it already has |
| Model turns per question | 4 | The turn budget ends and the reply is written |
| Wall clock for one model call | 40 seconds | The call is aborted and the question returns a 503 |
| Answer length | 1,200 tokens | The reply is cut. Citations are written last, and the gallery keeps whatever was written before the cut |
| Results from one search | 1 to 12, default 5 | — |
| Results from a category search | The whole tagged set, up to 60 | A question about a category is a question about a set, so it is not cut to the default |
The daily model allowance
Section titled “The daily model allowance”The search box is unauthenticated and calls a language model, which means an unmetered visitor could write the account’s inference bill. So there is a hard ceiling on what all of the day’s questions together may spend.
| The ceiling | $1 per UTC day |
| In Cloudflare’s unit | About 90,900 neurons, at the published rate of $0.011 per 1,000 |
| A measured question | About 18 neurons |
| Questions that buys | Roughly 1,230 per day |
| Checked | Before the model runs |
| Recorded | After it runs, whether it succeeded or not |
The unit is the neuron because that is what Cloudflare bills and what each completion reports back — so the ledger is a record of money rather than an estimate from token counts, and it stays true across a price change or a model swap.
Why 1,230 questions rather than 780
Section titled “Why 1,230 questions rather than 780”Two models answer, and which one you get depends on how much of the day is left:
| Model | When | |
|---|---|---|
| Primary | DeepSeek v4 Flash | Until 75% of the day’s allowance is spent |
| Economy | GLM 4.7 Flash | For the remaining 25% |
Over a 30-question set they scored the same on recall — each found every dashboard it should have, and each refused every question the gallery has no answer for. So the choice was never about coverage. DeepSeek is more precise (95% against 85%) and far steadier at the slow tail (11.8 seconds at the 95th percentile against 32.3); GLM costs about a third as much to run.
Taking both means the allowance buys ~583 DeepSeek questions and then ~650 GLM ones instead of 780 DeepSeek ones, and the end of a busy day degrades to a slightly less precise answer rather than to no answer. Which model runs is read once per question, from the same spend figure the ceiling check already fetched — so the two cannot disagree, and one question is answered by one model the whole way through.
What happens once the allowance is spent
Section titled “What happens once the allowance is spent”The search box returns a 429 and says so:
Search has used up today’s allowance and is resting until tomorrow — the filters below still work.
Everything that is not the model keeps working. The categories, the filter rail, every dashboard, every permalink and every download are unaffected, and the duplicate check on the request form drops to text-only matching rather than refusing. The degraded state is the site minus one feature, not a broken page.
The allowance resets at 00:00 UTC.
Caching
Section titled “Caching”| Resource | Policy |
|---|---|
| Dashboard images and thumbnails | Immutable for one year — a tightened redaction publishes at a new revision, so the old URL is simply never requested again |
| A dashboard permalink’s HTML | 60 seconds, then revalidated |
| The sitemap | 10 minutes |
| An export bundle | no-store — never cached, because two downloaders must not receive the same identifiers |