Plans and limits
What a Starter workspace can hold, what plan_limit means, how the month's tracked exposures are counted, and why nothing is throttled.
Every workspace is on Starter in v1. There is no checkout and no card on file. To change a plan, talk with Quoin.
The operator of Quoin records the change with quoin-admin plan set.
Built
The caps, the monthly count and the Billing page (/settings/billing) on this page are real, tested code as of
QN-12. The pricing section of the marketing site belongs to QN-12-ii.
Starter
| Starter | |
|---|---|
| Price | $0 |
| Flags | up to 5 |
| Experiments running at a time | 1 |
| Tracked exposures a month | 2,000 |
| Automatic pausing by a guardrail | no |
Environments are not a plan dimension. Every workspace has production, staging and development, and can add more on any plan. Team and Scale lift the flag cap and the experiment cap. Quoin publishes their prices when the prices are confirmed.
What plan_limit means
The server checks a cap where the write happens. The check is never only in the UI:
- Flags. Quoin refuses the sixth flag in a Starter workspace. This is true when the flag comes from
flags.declare(the New flag form of the web app, or the API), and when it comes from the first-read beacon of the SDK.flags.declareanswers withquoinCode: "plan_limit"and "Starter workspaces can declare up to 5 flags. Talk to us about a larger plan." The beacon never fails your app. It creates flags up to the cap and answers200. It puts the keys that it skipped inskipped. A skipped flag evaluates to its code default. - Experiments. If you start a second experiment while one runs anywhere in a Starter workspace, Quoin refuses it
with
plan_limitand "Starter workspaces run 1 experiment at a time. Stop the running one or talk to us about a larger plan." When you stop or conclude the running experiment, the slot becomes free. - Automatic pausing. A guard on Starter watches and tells you. It does not pause a rollout by itself.
A cap refuses only something new. A workspace that is already past a cap keeps every flag and every running experiment that it has. Such a workspace is one that moved back to Starter or one that was restored from an export. After the plan changes, the first read of the next process creates a flag that the beacon skipped. You do not need to send anything again by hand.
Tracked exposures this month
The figure on /settings/billing is a count. Quoin reads it when the page loads. It is never a stored counter. The
count is the rows that Quoin first wrote in the current UTC calendar month. It covers both exposure tables
(experiment_exposures and rollout_exposures) and every environment of the workspace. Quoin counts a unit once for
each experiment phase, and once for each rollout flag and environment. Quoin counts it the first time it records the
unit. This includes a rollout unit outside the bucket, because Quoin recorded that unit too.
Nothing is throttled
After 2,000 in a month, the bar of the Billing page turns red and a banner shows on Home. That is all. Quoin still records exposures, reports still compute, and every number stays readable. A plan never causes a refusal of ingestion.
Talk to us
There is no self-serve upgrade, no checkout and no contact form yet. Today a plan changes when a workspace owner asks
Quoin. The operator of Quoin records the change with quoin-admin plan set <id or slug> team. The change shows on the
Billing page and in the audit log as "Changed the plan from Starter to Team".
When Quoin is deployed, the Talk to us button of the Billing page and the "talk to us" in each plan_limit
message point to the contact address of Quoin. Until that address is set, they point here.