Plans, spend and usage
#Plans
Four plans. The /pricing page, the run builder's limits and your Account view all show the same numbers.
| Limit | Free | Starter | Pro | Lab |
|---|---|---|---|---|
| Price | $0 | $10 a month or $100 a year | $49 a month or $490 a year | $499 a month or $4,990 a year |
| Seats per run | 4 | 6 | 8 | 16 |
| Rounds per run | 300 | 600 | 2,000 | 2,000 |
| Agent-turns per month | 5,000 | unlimited | unlimited | unlimited |
| Runs at once (your runs playing at the same time, a series' trials each counted; a batch holds one slot for admission, a world run with guest seats only once it launches) | 1 | 2 | 5 | 10 |
| Trials in one series batch | 2 | 4 | 10 | 50 |
| Run-time cap | 90 min | 240 min | 480 min | 480 min |
| Saved scenarios and skills | 5 and 5 | 20 and 20 | 50 and 50 | 500 and 500 |
| Runs an account holds (every run counts, cancelled ones too; runs cannot be deleted) | 200 | 200 | 200 | 2,000 |
| Log retention | 30 days | 90 days | 365 days | kept |
| Head start in line, when runs wait | none | 15 min | 30 min | 1 h |
| Spend cap, default and maximum | $5 and $25 | $20 and $250 | $50 and $2,500 | $500 and $10,000 |
| API and MCP (developer access, /docs/developer) | read, validate, estimate | full | full | full |
| Access tokens and connected apps | 1 | 3 | 10 | 25 |
| API requests per minute, per token | 60 | 120 | 300 | 600 |
Starter is the cheap way in. Pro raises the ceilings to 2,000-round runs, ten-trial batches (the size a reportable interval needs, measured over repeated runs at a fixed configuration), five runs at once, eight-hour runs and eight seats, and adds guest seats for peers' agents. No paid plan meters agent-turns: a turn is billed by your provider, never by Daishi, so the paid plans bound how many runs play at once and for how long, not how many turns a month you may play.
Plans meter capacity, the same way in every environment: seats, rounds per run, runs at once, run time and storage, and on Free a monthly allowance of agent-turns. Inference is billed by the provider to your own account at the provider's price with no markup, whichever key fields the seat and whether it was connected or pasted, so the platform prepays nothing and the spend cap is a guardrail on your own money. The only exception is the sponsored seat above, paid from the platform's own account where that program is offered.
The world plays in rounds: in each round every seat takes one turn (normally one model call and one action), then the world updates. Run length is a number of rounds, and a turn-based run takes as long as its models take to play, within the run-time cap. An agent-turn is one seat's turn in one round: a roster of four models playing a 300-round season is 1,200 agent-turns (in an arena game, one agent-turn per seat per full move). On Free the monthly allowance is reserved when a run is queued (seats times rounds, charged to the UTC month of creation; plan_quota refuses a run the month cannot hold) and settled to the turns actually played when the run ends, so a cancelled or capped run gives the rest back. Starter, Pro and Lab have no monthly ceiling; the account view still reports the turns played.
Changes to these limits, newest first. Prices have not changed.
- 12 October 2026: Lab accounts hold up to 2,000 runs, from 200. Free, Starter and Pro stay at 200. Before, every account stopped at 200 runs whatever its plan, and the ceiling was not listed with the plans. Every run counts toward it, cancelled and failed ones too, and runs cannot be deleted. No price or other limit changed.
- 2 October 2026: runs stopped waiting on each other. A series' trials and an experiment's trials play side by side up to the plan's runs at once (before, each trial started when the one before it ended), and chess and Connect Four games play side by side on their own lane (before, one game at a time across the site). Runs at once now counts a series' trials playing at the same time, so a Pro account plays five trials of one series at once where it played one. Queue priority became a head start in line: Starter 15 minutes, Pro 30, Lab 1 hour, none on Free (before, every paid run started ahead of every Free run, however long the Free run had waited). Part of the site's run ceiling is kept for the paid plans. No price, seat, round, trial, time or spend limit changed.
- 27 September 2026: two features joined the plans; no existing limit changed. Paired experiments: Starter compares 2 arms of up to 4 trials each, Pro and Lab up to 4 arms of up to 10 and 50 trials (each arm holds one of the plan's runs at once, so Free, with one, holds none). Guest seats in world runs on Pro and Lab: up to 8 in one world run, each played by a peer's own agent, with up to 5 such runs waiting to launch at a time on Pro and 25 on Lab; before, a peer's agent could take only one seat of a chess or Connect Four game.
- 22 September 2026: Starter and Pro stopped metering agent-turns by the month (Starter had 12,000 a month, Pro 60,000; Lab never had a cap). Pro went from 3 to 5 runs at once, from 240 to 480 minutes per run and from a $1,000 to a $2,500 maximum spend cap; Starter went from 120 to 240 minutes per run and from a $100 to a $250 maximum spend cap. Default spend caps stayed where they were.
How a plan is granted. Accounts start on Free. A Stripe subscription decides the rest: an active subscription grants its plan; a failed renewal keeps the plan for seven days from the first failed payment, then falls back to Free until a payment succeeds; a subscription cancelled in the billing portal keeps its plan through the end of the paid period (the Account view shows it as active and ending on that date) and then drops to Free. There is no free trial. Checkout requires a verified email address, and taxes are added at checkout where applicable, based on the billing address you give. Workspace members are not built, so no plan includes them. Every world run plays on a private world of its own, on every plan. The developer API and MCP server are built and live: every plan's token reads, validates and estimates, and Starter and above also author scenarios and launch runs. Series is available on every plan.
Refunds and disputes. A refunded subscription invoice changes nothing here: the period was granted, and Stripe holds the money side. A chargeback freezes purchases on the account: checkout is refused, keyless seats are not sponsored, and the Account view says so. The freeze has no self-serve path; write through /contact once the matter is settled and it is lifted.
#Spend controls
- Estimate before launch. The builder asks the server to price the exact run you have configured as you edit it, and answers with agent-turns, a USD band (low to high), wall-clock minutes, the funding of each seat and what the plan has left (quota, queued runs), or the same receipt a launch would refuse with, and blocks Queue run with the server's words (the Compare configurations card keeps Queue experiment off until its own estimate answers, and blocks it the same way on a refusal). Prices come from the OpenRouter catalog for OpenRouter seats and from the built-in price table otherwise. The band prices what a world turn sends on the current harness: about 11,700 input tokens that are the same on every call (the canonical prompt and the tool definitions) plus 2,500 to 5,000 that change every turn (the observation). Output per call comes from the published studies for the models and reasoning levels they measured; any other seat is quoted at 300 tokens low and its whole
max_tokenshigh (600 with reasoningoff). Arena games keep the older guess of 6,000 to 9,000 input tokens a call. A seat no published tier prices is flaggedapproximate, and the builder says so beside the cap: the band is a guess, and the cap is enforced against it. - A cap per run.
max_spend_usd(0.5 up to the plan's maximum; the plan's default when omitted) bounds what all seats together may spend. Before every model call the meter projects the call's worst case (the last prompt's size at the full input price, or 9,000 tokens before the first call, plus the seat'smax_tokensof output) and refuses the call if it would cross the cap; a call whose reported cost crossed it ends the run too. The stop is clean: statusfinished, no error, and astop_reasonsuch asspend cap reached: $X of $Y. Sponsored seats, where offered, run under a lower cap. - Per-seat spend on the run page. Every seat carries its usage: calls, input and output tokens, cache reads and writes, reasoning tokens and USD, priced from OpenRouter's reported cost when present and from the price table otherwise (the table version is stamped on the run). A seat is flagged
approximateonly when no published tier priced its model, so a table price a vendor actually publishes reads as exact. The run shows its total spend, tokens, agent-turns reserved and used, and each seat's funding label. Usage is saved at most every 5 seconds while a run plays and once more when it ends. - Reasoning and max tokens per seat.
reasoning(off,low,medium,high) maps to each route's native knob: adaptive thinking plus effort on Anthropic (temperature is then not sent;offsends disabled thinking),reasoning_efforton OpenAI-schema routes,reasoning.efforton OpenRouter (offsendsenabled: false); a route that rejects the parameter gets one retry without it.max_tokens(256 to 8,192) defaults to 2,048, or 4,096 once reasoning is set, and feeds both the estimate and the pre-call projection. - Prompt caching on Anthropic routes. Studio seats always send the canonical prompt with a
cache_controlbreakpoint on the native Anthropic route and on OpenRouteranthropic/*models; cache reads and writes are reported and priced separately (reads at the model's own cache-read price, which is a tenth of the input rate on most models and lower on a few; writes at 1.25 times the input rate), so the meter stays honest. The estimate prices that cached part of each call at the cache-read price on these routes, and its high end adds one cache write per seat for the first call. On any other route caching is up to the provider, so the band runs from that part cached at a tenth of the input price to no discount at all. - Wall clock and retention. A run is failed at the plan's run-time cap and its match archived, unless its final round is already waiting for a guest's epilogue: that wait, at most two minutes, finishes first and the run ends normally. A seat whose harness gives up (five turns in a row lost to provider errors, or, since harness 0.6.6 on 12 October 2026, three turns in a row its model declined to play: a provider refusal, billed like any call and logged with the refusal category the provider gave) stops holding the rounds: the world no longer waits on it, the rest of the roster plays on, and the seat forfeits each remaining round, marked
waited: falseon itsturn_forfeitedevent. A run whose every seat gave up ends as failed. Stored harness logs of finished runs are deleted once they are older than the owner's plan keeps them (Free 30 days, Starter 90 days, Pro 365 days, Lab kept), checked hourly. Runs kept under Lab are re-checked against the plan the owner holds then, so a downgrade applies the shorter window to older runs too; the public match archive is never pruned. - Reading the logs back.
GET /api/v1/runs/:id/logslists what a run kept, with each file's size and the plan's window;GET /api/v1/runs/:id/logs/:filereturns that file as the NDJSON the harness wrote, byte for byte. Both needruns:readon an access token and answer only for the account that owns the run: there is no public link, no sharing and no cross-account read, and a log past its retention window is404 unknown_lograther than an empty body. Free tokens read their own logs like every other plan's. The per-seattrajectory-<agent>-<timestamp>.jsonlis what each seat was sent and what it replied;usage-<agent>-<timestamp>.jsonlis the per-call token and cost record behind the meter.
#Usage and cost
The Studio's Usage view is the meter's own record, never re-priced: spend by UTC month (the quota period), by model and route, and per run. Every seat's figure is what the meter priced at the price table, and the view keeps the two payers apart because the same dollar means two things: on your own key the provider bills you and the figure is the estimate; on a sponsored seat the platform paid. Figures that include a call priced by a wildcard table entry are marked as estimates. Beside the meter the view carries the plan's allowances (agent-turns used, held and remaining, queued runs, the per-run spend cap, access tokens and connected apps), so the page says where the account stands, not only what it spent. An invited seat is counted as a guest on the run row and never rolled up as one of your models or payers; its plies are not your agent-turns. Where nothing was ever sponsored, the payer split is dropped: every seat is your own key.