Press / to search

All documentation
docs▸Operate▸Billing and usage

Runs onWrit Cloud

billing ▸ one pool + AI allowance

Billing & usage

Every plan includes a monthly pool of included usage, at 1 credit = $0.001, and on every paid plan that pool is worth more than the plan costs. Cloud compute, crawling, monitoring checks and residential egress draw from it, pool first. Managed AI has its own monthly token allowance, separate from the pool. The wallet holds only credit you purchased, and is touched only once the pool (or the AI allowance) is spent. Runs on your own local agent are free, on every plan.

pool ▸ usage + a separate AI allowance

One pool, one AI allowance

The usage pool funds whatever mix of compute, crawling, monitoring and residential bandwidth the month actually needs. The AI allowance funds managed AI only, and the pool never pays for AI. Both reset each billing cycle; on paid plans, unused usage (not AI) carries over for one month.

PlanMonthly usage poolAI tokens / monthIn short
Free$5 (5,000 credits)200KTry it out on your own machine.
Starter$20 (20,000 credits) for $151MFor individuals shipping their first integrations.
Pro$65 (65,000 credits) for $493MFor client-grade APIs on authenticated sites.
Growth$260 (260,000 credits) for $19910MFor teams running automations in production.
Scale$650 (650,000 credits) for $49920MFor high-volume, multi-team operations.
EnterpriseCustom — agreed per contract40MContact-only: custom terms on the same pool-plus-AI-allowance model.

Spending is grant-first: as long as the pool has credit, usage consumes the pool and the wallet is untouched. The same holds for AI and its allowance.

rates ▸ what draws from it

The rates

ResourceRateNotes
Cloud run — minimum$0.001 per runEvery cloud workflow run costs at least this; it covers the run’s first 30 seconds.
Cloud compute — shared$0.002/min (2 credits/min)Billed for the time the run actually used, success or failure.
Cloud compute — isolated$0.005/min (5 credits/min)2.5× shared: the run gets a private, single-use sandbox.
Crawl page$0.002/pageBrowser-rendered and OCR pages count double.
Monitor check$0.0004 static · $0.002 browserA browser (JS) check counts as 5 static checks, against the pool and the plan’s checks-per-minute load.
Residential egress$10/GBBy the gigabyte actually moved; from the pool on paid plans, from the balance on Free.
AI past the allowancefrom $3.20 per 1M tokensPriced per model — larger models cost more — with no per-call fee.
Local / self-hosted agentFree on every plan — no compute charge, no per-run price, no metering (details below).

AI has its own allowance. Every plan includes a monthly allowance of managed AI tokens, listed above. AI draws that allowance first; past it, AI bills your balance at the rate above, with the price shown before you run. The usage pool never pays for AI, so a long AI session cannot empty the pool your cloud runs depend on. The AI allowance does not roll over.

wallet ▸ overage only

The wallet

The wallet holds only credit you purchased — the included pool never passes through it. When the pool is spent, metered usage continues from the wallet at exactly the same rates: adding funds buys more usage, never a different price. Add between$5 and $1000 at a time (presets $10 · $25 · $50 · $100). Purchased credit never expires.

Worked example

A cloud run that takes 90 seconds, and the same workflow on your own machine:

cloud    90 s = 1.5 min × $0.002/min  = $0.003
         (a run of 30 s or less costs the $0.001 minimum)
         + AI: from the monthly allowance, then from $3.20/1M
         + residential, per GB, only if the run used it
─────────────────────────────────────────
local    same workflow, your own agent   = $0

empty ▸ what a 402 looks like

When pool and wallet are both empty

Cloud work stops instead of billing you. The request answers a structured 402 whose body carries a machine-readable code, your current usage, thelimit it hit and an upgrade_hint — so your software can branch on it. The message offers the three ways out:

  1. add funds to the wallet,
  2. run it on your own local agent — unlimited and free,
  3. or upgrade the plan.

Two notification events track the edge before you hit it: billing.low_balance andbilling.credits_exhausted — the latter says it plainly: “Local agent runs are unaffected.”

local ▸ free by contract

Local is free — structurally

A run with execution_target=local is not gated, not metered and not charged. This is not a discount: billing checks simply do not apply to local runs, on any plan, including Free. Parallelism is bounded by your machine, not by the plan. Only cloud runs — and auto runs that land on cloud — are metered.

What is plan-limited is how many local agents you can keep linked to the platform at once:

PlanLinked local agents
Free1
Starter1
Pro2
Growth5
Scale20
EnterpriseUnlimited

caps ▸ per plan

Cloud duration caps

Cloud runs and live streaming sessions carry per-plan duration ceilings. Local runs have neither — the limits below are cloud limits:

PlanMax cloud runMax streaming session
Free2 min5 min
Starter4 min10 min
Pro5 min15 min
Growth10 min30 min
Scale15 min60 min
Enterprise15 min60 min

See pricing for the full plan matrix.

Usage, spend by category and invoices live on the billing page inside the app. Billing is an account surface, not part of the developer API — an API key carries authorization only, never the ability to read or move money.

What next