Plans
Billing plans and features
Workspace owners and admins manage billing through /app/billing. Paid checkout is available only when the NOWPayments API key, signing secret, and provider plan IDs are configured; displayed prices can be overridden per deployment.
On this page
Start here
Use plan information to predict which creation or ingest request can be refused. Prices and checkout depend on deployment configuration; the shown limits describe shipped plan records and quota-check points.
Before you begin
- Workspace owner or admin access to /app/billing
- Current usage across tracked dimensions and a configured provider for purchase
Put it into practice
-
Compare needs with each plan
Estimate monthly ingest and current resource counts, then compare every tracked dimension rather than choosing from trace allowance alone.
-
Plan for enforced boundaries
Handle quota errors at creation and ingest calls. In particular, pause or buffer public trace and telemetry submission when the API rejects it rather than retrying immediately.
-
Upgrade and verify entitlement
Start checkout from /app/billing when available, complete payment with the provider, and wait for webhook-backed reconciliation. Confirm the workspace plan before increasing load.
The workspace is on the intended plan, projected usage fits each enforced dimension, and clients respond to quota errors without losing or repeatedly resubmitting work.
01 Plans
detailsStarter
Free
2 service agents, 5 robots, 100 eval runs per month, a 50,000-trace monthly usage allowance, and 1,000,000 telemetry points per month.
Pro
$20/month default
10 service agents, 50 robots, 2,000 eval runs per month, a 500,000-trace monthly usage allowance, and 20,000,000 telemetry points per month.
Max
$50/month default
Unlimited service agents, robots, eval runs, trace usage, and telemetry points. Workspace count, data retention, SCIM, webhooks, and evaluator features are not gated by these plan records.
02 Tracked quota dimensions
reference| Dimension | Counts | Enforced when |
|---|---|---|
| traces_per_month | Traces created this month | When a trace is ingested through the public API. POST /api/v1/traces is gated before ingest and returns 429 with a quota problem once the limit is reached. Traces the platform starts internally -- gateway execution, eval runs, missions, replays -- still count toward usage but are not gated. Marketplace-provisioned workspaces write settings.quota_overrides.traces_per_month = infinity so sponsored ingest never 429s mid-hire; other dimensions stay on the workspace plan. |
| agents | Service agents in the workspace | A service agent is created |
| robots | Robots not decommissioned | A robot is created by form, CSV batch, or enrollment claim |
| telemetry_points_per_month | Telemetry readings ingested this month | A telemetry batch (POST /api/v1/robots/me/telemetry) is submitted; an over-limit batch is rejected and not ingested. POST /api/v1/robots/me/diagnostics writes a single reading and is not counted against this quota — it is bounded only by per-credential rate limiting. |
| eval_runs_per_month | Eval runs started this month | An eval run is created |
03 Payment processing
detailsCryptocurrency via NOWPayments
Payments are processed through NOWPayments (cryptocurrency). After selecting a plan in the billing UI, a checkout invoice is generated and payment is completed on the NOWPayments platform.
04 Quota behavior
detailsWhat is enforced
Trace, service-agent, robot, eval-run, and telemetry limits are checked when those resources are created or ingested through the public API; exceeding one is rejected with a quota error naming the limit. Trace ingest is the one to plan for: POST /api/v1/traces checks the monthly trace quota before writing anything and returns 429 once it is exhausted, so a client on the primary ingest path must handle that status. The check fails open, so an internal metrics error never blocks ingest. Note that the gate is on that endpoint, not in the trace context: traces the platform starts for itself -- gateway execution, eval runs, missions, replays -- are recorded and counted without being gated, so usage can pass the limit even while API ingest is refused. A robot claim is gated by the robots limit alone, not by the service-agent limit, even though it creates a service agent. Retention is configured separately through workspace data controls (defaults: 90 days for traces and 180 days for eval runs), not by billing plan.
Troubleshooting
- Checkout is unavailable
- Paid checkout requires NOWPayments credentials and provider plan IDs. Ask the deployment operator to confirm configuration rather than assuming every installation sells the displayed plans.
- Usage exceeds the visible limit
- Some internally started traces count without passing the public ingest gate, whose quota check fails open on metrics errors. Treat usage as accounting and the named endpoint as the enforcement boundary.
- A sponsored workspace behaves differently
- Marketplace provisioning overrides traces_per_month to infinity only. Other plan dimensions remain enforced.