Skip to content
Press.js Press.js Press.js Docs

Plan Limits

Press.js Cloud enforces usage limits per plan. These limits are defined in the billing policy — here’s exactly what each plan allows.

LimitFreeStarter ($9/mo)Pro ($29/mo)
Render timeout15s60s60s
Concurrent render jobs11050
External network access
Files per deploy commit50200500
Bytes per deploy commit25 MB50 MB100 MB
Max render output size50 MB200 MB200 MB
Render jobs / month500
Render time / month10 min150 min600 min
Deploy commits / month100
Storage1 GB10 GB50 GB

Note on concurrent render jobs: The concurrency limits above are user-level limits — the maximum number of render jobs your account can run simultaneously. Actual concurrency may be lower depending on overall platform load. When the platform is under heavy load, render jobs join a shared public queue and queue wait times may increase. This ensures fair scheduling across all tenants.

These limits apply when uploading artifacts through the API or CLI.

LimitValue
Max individual file size10 MB
Max session total bytes256 MB
Max files per session5,000
Session TTL1 hour
Commit lock timeout5 minutes

Render job payloads (the JSON or binary data passed to a render job) are scoped to a single render job. They are available only while that job is rendering and are deleted immediately after the render succeeds or reaches a terminal failure.

These are enforced at request time and return an error immediately:

Error codeTrigger
upload_session_policy_limit_exceededUpload session exceeds file count or byte limit
upload_blob_too_largeA single file exceeds the max blob size
upload_session_too_largeSession exceeds max files or total bytes
deploy_commit_policy_limit_exceededDeploy commit exceeds file count or byte limit
storage_limit_exceededAccount storage exceeds the plan limit

These are checked against accumulated usage in the current billing period:

Error codeTrigger
deploy_commit_quota_exceededDeploy commits exceed monthly allowance
render_job_quota_exceededRender jobs exceed monthly allowance
render_time_quota_exceededRender time exceeds monthly allowance

Bill-period quotas are checked atomically at the database level — concurrent requests can’t race past the limit.

When creating a render job, you can request a custom render timeout. The platform clamps it to the plan’s maxRenderTimeoutMs:

{
"deployId": "your-deploy-id",
"deployVersionId": "your-version-id",
"renderTimeoutMs": 30000
}

If the requested timeout exceeds the plan limit, the request succeeds but the timeout is silently clamped to the plan maximum.