Plans
| Free | Developer | |
|---|---|---|
| Price | $0 | $29 / month |
| Tokens per billing period | 15,000,000 | 65,000,000 |
| Concurrent sessions | 3 | 10 |
| Resets | Monthly, on your signup day-of-month | Monthly, on your subscription’s billing date |
Token usage
Tokens are consumed by the model as your agents run, and they accrue against your plan’s per-period allowance. The allowance resets at the start of each billing period: for Free plans on your signup day-of-month, and for Developer plans on your subscription’s renewal date. When the allowance runs out, creating a session (or messaging a finished one, which restarts it) fails with402 Payment Required. The error’s detail carries your limit, used, and the window_end when the budget resets; see Errors.
Check your current token usage with GET /api/v2/quota/tokens:
Response
| Field | Type | Description |
|---|---|---|
limit | integer | null | Tokens allowed this period. null means unlimited. |
used | integer | null | Tokens used so far this period. null if the usage figure is momentarily unavailable. |
remaining | integer | null | Tokens left (max(limit - used, 0)). |
window_start | string | Start of the current billing period (UTC). |
window_end | string | null | End of the current billing period (UTC). |
Concurrent sessions
Separately from tokens, your plan caps how many sessions can run at once. A session holds a slot while it is in a non-terminal state (pending, running, awaiting_tool_results, paused, or idle) and frees it as soon as it reaches a terminal state, including when you cancel it. queued sessions hold no slot and never count against your quota.
GET /api/v2/sessions/quota returns your current concurrency usage:
Response
queued and the session starts automatically when a slot frees up. If you prefer an immediate error, set queue: false on the create body to get a 429 Too Many Requests instead; the SDKs retry 429 with backoff automatically, see Errors.