Limits & session lifecycle
Plan around short sessions, explicit cleanup, and your available allowance.
Current defaults
| Limit | Value |
|---|---|
| New workspace allowance | 30 minutes, non-renewing |
| Concurrent browsers | 1 per new workspace |
| Browser launch frequency | 1 attempt per workspace per 20 seconds |
| Hard session duration | 60–3600 seconds; default 300 |
| REST idle timeout | 60–600 seconds; default 60 |
| MCP idle timeout | 600 seconds |
| External controllers / viewers | 1 controller + 1 viewer per browser |
| New CDP connection token | Up to 5 minutes, capped by lease |
| Signed viewer TTL | 1–900 seconds; default 300, capped by lease |
| Signed link minting | 60 per workspace per minute |
| MCP requests | 120 per workspace per minute; 64 KiB body |
| Active workspace API keys | 10 |
| Session list | Up to 100 newest records |
| Snapshot output | 20,000 text characters; 200 interactive elements |
Reserved, used, and available
Launching a browser reserves its full requested duration. Confirmed closure charges elapsed allocation rounded up to seconds, capped by the lease, and returns unused reserved time. A five-minute reservation closed after 38 seconds uses 38 seconds, not all five minutes.
If deletion is still retrying, the reservation remains until cleanup succeeds. An ambiguous launch failure may consume its reservation because a browser could have been created without returning its ID. Check usage before retrying a new launch.
The service also has shared capacity and launch guardrails. A service pause or capacity limit can reject a new launch even when your workspace has minutes available.
Session states
creating → active → closing → closed is the ordinary lifecycle. failed indicates a launch or allocation failure. Requests with an ended browser may return 410.
The hard lease sets a maximum lifetime. Inactivity can end a browser earlier. Disconnecting a controller or viewer does not extend or terminate the lease; explicitly close the session when done.
What is not included yet
Persistent profiles, cross-session login-state storage, hosted recordings, hosted screenshot artifacts, and subscription billing are not implemented. MCP’s page tools currently operate on the first page only.
Usage fields describe service allocation, not underlying provider billing or an invoice. During alpha, use the dashboard’s available allowance as your guide.