Limits
Tarball upload
Section titled “Tarball upload”| Limit | Value |
|---|---|
| Maximum tarball size | 50 MB (compressed) |
| Upload timeout | 120 seconds from the first binary frame to compile.upload.done |
If the upload timeout is exceeded before compile.upload.done is sent, the server sends compile.error with code UPLOAD_TIMEOUT and closes the connection.
Compilation
Section titled “Compilation”| Limit | Value |
|---|---|
| Wall-clock timeout | 20 minutes per job |
| Peak memory | 2 GiB per job |
Jobs that exceed the wall-clock timeout are terminated with compile.error code JOB_FAILED. Memory-over-limit jobs are terminated by the sandbox and also result in JOB_FAILED.
Concurrency
Section titled “Concurrency”| Limit | Value |
|---|---|
| Concurrent jobs per organization | 2 |
If you submit a third job while two are already running, the new job queues behind the running ones. There is no maximum queue depth beyond the per-org concurrency limit.
Rate limits
Section titled “Rate limits”| Limit | Value |
|---|---|
| WebSocket connection requests | 600 per minute per IP |
The rate limit is per IP address, not per API key. Exceeding it results in HTTP 429 before the WebSocket upgrade completes.
Plan limits
Section titled “Plan limits”Some limits vary by plan. Check your organization’s current plan in the dashboard under Settings → Billing. Contact [email protected] if you need higher limits.