Pricing & Credits
WebAgent runs on credits — a pre-paid USD balance. Each task drains the balance as it runs. The Console header shows a live $X.XX and hovering reveals the breakdown.
Two buckets
| Bucket | Source | Expires |
|---|---|---|
| Monthly | Your subscription's included credits | End of billing period |
| Additional | One-off top-ups + auto-recharge | Never |
Tasks drain monthly first, then additional. You'll never lose top-up money to a month-end reset.
Four cost lines per task
Every task records four costs separately so you can build dashboards:
llm_cost_usd— LLM tokens consumedbrowser_cost_usd— browser-pool secondsproxy_cost_usd— proxy bandwidth (when applicable)total_cost_usd— the sum, also what drains your balance
You can read them on SessionResponse and on every task.cost_update SSE event.
Plans
| Plan | Monthly | Includes | Concurrency |
|---|---|---|---|
| Free | $0 | $50–100 trial credits during early access | 1–2 |
| Dev | ~$29 | $30 credits | 5–10 |
| Business | ~$299 | $400 credits + team seats | 50–100 |
| Scaleup | ~$999 | $1,400 credits + dedicated queue + region pinning | 250+ |
Subject to ±30% adjustment
Numbers above are baseline. Pricing is finalised before public launch; early-access users get the locked-in rate.
Auto-recharge
To avoid 402s on a long Sunday-night run, enable auto-recharge in Settings → Billing:
- Threshold — top up when balance falls below
$X. - Amount — top up by
$Yeach time. - Monthly cap — never spend more than
$Zof recharge per calendar month.
Hard limits per task
You can cap individual tasks. Useful for cron jobs you'd rather have fail-fast than runaway:
await client.sessions.create(CreateSessionRequest(
instructions="...",
max_cost_usd="2.00",
max_duration_minutes=30,
))If a task exceeds either limit it transitions to failed with code: budget_exceeded. The credits already spent are still billed.
Next steps
- Authentication — how to keep keys safe.
- Sessions & Tasks — what a task actually runs.