Sign in

Limits

Every hard cap a box or a workspace can hit, and what the refusal looks like.

On this page13

Money (the plan range, top-ups, the rollover cap, the free credit) is on Billing.

Boxes

LimitValue
Boxes per workspace100 not deleted (paused and deep sleep count); 1 on the free credit
Balance to create, wake, or resizeEnough to run the whole resulting fleet for 4 hours (Starting and resizing boxes); with an empty balance and no overage, nothing starts or wakes (Running out)
Box name1 to 32 characters: lowercase letters, digits, and hyphens, starting and ending with a letter or digit; unique in the workspace
Sizes7, Nano to Extra Large (Machines); Nano to Small on the free credit. No resize while provisioning, resizing, or moving; the disk never shrinks (Resize)
Auto-pause window30 minutes to 7 days idle (the dashboard offers up to 24 hours; the CLI and API, the whole range) (Auto-pause). Off by default on a plan; 2 hours on the free credit, never in a box's first 24 hours. An auto-pause floor caps members' boxes, except on the free credit
Pause deadline5 minutes to 30 days ahead, on a running box only (Pause deadline)
Deep sleepAfter 14 days paused the disk is parked as a snapshot; waking takes a few minutes (States)
Region moves1 per box and 3 per workspace in any rolling 24 hours, one at a time, running boxes only; 5 regions. A new box can be created in any region instead (Regions)
Undo after delete7 days, as a final snapshot under Recently deleted; none for a box deleted within an hour of being created (Data retention)
CapacityNo per-workspace number. With no machine of that size free, a new box waits in provisioning, or ends in provision_failed with the reason in its events; delete it and create again, or pick another size

Sandboxes

Creating, resuming, or forking a sandbox needs a balance above zero (409 insufficient_balance otherwise). On the free credit alone, the free tier's limits apply instead of the quotas below, and a refusal past one adds "tier": "free" and the limit it hit; if free-tier access is switched off for your workspace, the API answers 409 paid_balance_required until it has paid in.

When no sandbox capacity is free, a create answers 503 sandbox_capacity with a Retry-After header (seconds) and creates nothing, so nothing is billed; retry after that long.

Sandbox CPU and memory limits apply to running sandboxes and paused sandboxes that retain compute capacity for resume. Pausing does not necessarily free quota; delete sandboxes you no longer need, and capacity becomes available after cleanup. This does not change paused billing, which remains storage-only.

A resize must fit the workspace's remaining CPU and memory quota. Until it completes, the larger of the old and requested values counts for each resource.

Workspace quotas, checked on every create, resume, fork, and resize (Sandboxes); a refusal is 429 sandbox_quota_exceeded with the quota in reason. Need more? Email .

QuotaDefault
Sandboxes20 not deleted; paused ones and ones in error count
Running vCPU80 across the workspace
Running memory160 GB across the workspace
Disk200 GB across every sandbox not deleted
Lifetime24 hours: maxRuntimeMin up to 1,440

Per sandbox and per request:

LimitValue
Shape1 to 32 vCPU, 1 to 128 GB of memory, 10 to 128 GB of disk, within the template's bounds (both templates take all of it); more than 16 vCPU or about 58 GB of memory is a large sandbox; disk only grows (Resize)
Auto-pause and auto-delete0 (off) to 40,320 minutes (28 days); maxRuntimeMin deletes first
Fork1 to 256 copies a request, as many as fit on the parent's machine: at most 31 of a 1 vCPU sandbox, 7 of a 4 vCPU one; a parent past about 26 GB of memory (about 105 GB for one created as a large sandbox) cannot fork (Fork); each counts as a create
Labels32, keys up to 64 characters, values up to 256
Environment variables32 at create, names up to 64 characters, values up to 16 KiB; the whole create body up to 64 KiB
Command300 seconds by default through the API, 3,600 at most; the first 4 MiB of each output stream is kept; the request document up to 1 MiB
File transfer100 MiB and 10 minutes per upload or download, inside /home/prized
Edge requests48 concurrent and 60 a second (bursts of 120) per API key; 8 concurrent and 20 a second (bursts of 40) per sandbox; over either answers 429 rate_limited with Retry-After

Snapshots

LimitValue
Manual and template snapshots per workspace20; one still being deleted counts until its storage is released. Fork copies, automatic snapshots, and Recently deleted copies never count (Snapshots)
Snapshot or template name1 to 64 characters of letters, digits, ., _, and -, starting and ending with a letter or digit
Automatic snapshots per boxkeep of 1 to 10 (default 5), every 1 to 168 whole hours; each expires after keep x interval
Snapshots in flight per box1
Fork disk copy8 hours, or 30 minutes without progress; then the new box is marked failed
Restore targetAny size whose disk holds the snapshot; a smaller disk is refused with the numbers
RegionA snapshot restores into the region its box was in
BalanceAny snapshot needs a funded balance or an active plan

Environments

LimitValue
Environment name1 to 64 characters of letters, digits, ., _, and -, starting and ending with a letter or digit (Environments)
Env vars per environment64, each value a single line of up to 4,096 characters
Per-box vars100 names and 64 KiB of names and values together, inside the launch budget
Repos per environment16, each with an optional setup script of up to 8 KiB
Secret files per environment16, each up to 64 KiB, at a path of up to 256 characters
Setup script16 KiB
Launch budgetThe environment plus the box's own vars must fit 16 KiB compressed; a save or create that would not is refused as environment_too_large
Versions kept50 per environment; older ones no live box pins are pruned

Commands and files

prized exec, prized cp, the edge API, and the dashboard's Files tab (Run commands and files).

LimitValue
Synchronous run600 seconds through the API (default 30); prized exec has no limit unless you pass --timeout
Output kept per streamThe last 1 MiB, flagged as truncated
Exec request document1 MiB
Environment variables per run32
Inline file read or write1 MiB
Upload or download1 GiB and 30 minutes per request; a directory download that reaches the cap is cut off, so a truncated archive never looks complete
Detached process log tail16 KiB by default, 1 MiB at most. The process has no time limit, and its logs are never deleted for you
Command historyEach record kept 30 days, with the last 1 MiB of each stream and the first 8,192 characters of the command; 10,000 records per box, the oldest going first; 50 MiB of output stored per workspace per hour, past which output is dropped and the stream marked truncated (Command history)
History reads200 records a page; 1 MiB of output per request
Live streams4 open per token; each counts as one of the concurrent requests below, and ends with reconnect after 10 minutes
Concurrent requests8 per token and 8 per box
Request rate20 per second sustained, bursts of 40, per token and per box; over it answers 429 rate_limited with Retry-After
JSON request body64 KiB on most /api/v1 routes; 128 KiB on the secrets routes; 2 MiB on the environment routes
Dashboard Files tab1 MiB in the inline editor; 1 GiB per upload or download; one operation at a time per tab; a folder listing shows 2,000 entries and marks itself truncated past that

Prompting an agent remotely

LimitValue
Prompt512 KiB (Prompt an agent remotely)
Runs in progress per boxOne per 2 GB of memory, from 1 to 16: Nano 1, Micro 2, Extra Small 4, Small 8, Medium and larger 16. Beyond it a new run answers 409 prompt_limit_reached; ~/.prized/prompts/max-runs on the box sets another number from 1 to 64 (Parallel runs)
Runs in progress per conversation1; another prompt answers 409 prompt_in_progress unless it asks to be queued
Runs listed50, newest first; older run directories stay on the box
Conversations listed50, most recently active first
Events per page200 by default, 1,000 at most, or 1 MiB, whichever comes first; one event of any size is always delivered
Event text8 KiB per event (the raw line is kept whole); a single event over 32 MiB cannot be delivered
RequestsAs for commands and files above

Sync, sessions, and ports

LimitValue
File size in a synced project256 MB; larger files are skipped and named by prized sync ls (Sync)
First syncUp to 3 minutes for the box to install the sync agent and move the first bytes before it is called broken
Drag-and-drop upload512 MB per drop, one file or several; drops older than 7 days are cleaned out (Sessions)
Mirrored ports3000 through 9999 by default; never below 1024, never 22 or 7377; 5900 off by default; TCP only (Ports)
Shared port linksOne link per port; up to 10 live anyone and public links per workspace, each expiring after 5 minutes to 30 days (7 by default); a link's visitors open it a limited number of times a minute (Share a port)

Desktop

LimitValue
Per boxOne desktop and one browser window (Desktop)
Screen1920x1080, scaled to your window; VNC, no audio, no GPU
Browser profile nameLetters, digits, - and _, up to 64 characters

Secrets and access

LimitValue
Secrets per workspace100 (Secrets for agents)
Secret name and valueThe name is SCREAMING_SNAKE, a letter first, up to 128 characters; the value up to 16 KiB
Allowlisted hosts per secret32
Secret grantsEach names one box or one member (Scoped secrets)
Secret usageThe usage read returns up to 1,000 rows (Usage)
SSH certificates15 minutes each, minted for you as you connect
Phone access passwordOne per box, no expiry; generating a new one, or revoking, replaces it everywhere (From your phone)
Phone access gateway8 connections per box at once; a connection with nothing running on it closes after 15 idle minutes

Workspace

LimitValue
API keysNo cap; revoke any from Dashboard → Settings → API keys (API keys)
MembersNo cap
Invite linkDoes not expire; replaced by New link or by removing a member (Invite people)
Workspace icon1 MiB per upload
Startup deal link30 days (Custom plans)
Spend per memberOff, or 1 to 1,000,000 whole dollars a billing cycle (Policies)
Boxes per memberOff, or 1 to 100 live boxes (running or paused)
Largest size per memberOff, or any size
Auto-pause floorOff, or 30 minutes to 7 days
Quiet hoursOff, or one HH:MM to HH:MM window a day in one IANA timezone, per weekday, with all-day days; a box woken inside it stays up 15 minutes (Quiet hours)
Audit log retention7 to 365 days, 90 by default (Audit log)
Audit log reads100 rows a page by default, 1,000 at most per request; the CSV carries up to 50,000 rows
Audit exportAn https URL of up to 2,048 characters on a public host, and a secret of 16 to 256 characters; 500 events a delivery, 20 deliveries an hourly pass, 10 seconds a request (Scheduled export)
Reported audit detail16 keys of up to 40 characters, strings up to 512 characters, a body up to 64 KiB

Not allowed

Cryptocurrency mining, on the free credit or on any plan, in a box or a sandbox. A box or sandbox found mining pauses every box and every sandbox in its workspace. Creating, restoring, forking, waking, resizing, or moving a box, and creating, resuming, or forking a sandbox, then answer 409 workspace_held; pausing and deleting still work. Nothing is deleted and no credit is taken; paying does not lift it, and neither does deleting the box or sandbox, so email for a review.

Retention

RecordKept
Box metrics30 days
Sign-in records90 days
CLI usage aggregates90 days
Audit rows90 days by default (7 to 365 by policy)
Command history30 days
Finished deletion operations30 days

The windows and their zero data retention variants are on Data retention.

How limits fail

WhereWhat you see
The APIThe HTTP status and an error code, with a message that quotes the numbers: 409 box_limit, 409 insufficient_balance, 429 snapshot_limit, 402 secret_limit, 400 invalid_name, 400 invalid_auto_pause, 400 invalid_pause_at, 400 environment_too_large, 400 too_many_repos, 400 too_many_files, 409 prompt_in_progress, 413 payload_too_large, 403 policy_denied (with rule and message), 403 secret_not_granted, 429 rate_limited with Retry-After
The CLIThe exit code table: a value outside a range is USAGE (2) before anything is sent; the box count, a taken name, or a balance that cannot run the box is CONFLICT (6); the snapshot limit and a refused lifecycle change are CHECK_FAILED (5) with the control plane's sentence. --json carries the same code and message in error
The dashboardThe same sentence next to the control that asked, or the control is not offered: a size the balance cannot run cannot be picked, and the pause deadline is hidden on a paused box