Every plan is priced per account, with your whole team included. No seats, no per-request charges, no surprise line items.
There is no per-request charge and no invocation quota on any plan. Rate limits exist to keep the platform healthy for everyone — they are not a billing lever.
The retention window isn't a log-search limit — it's how far back you can replay. Any request inside the window can be re-executed, deterministically, exactly as it ran: same inputs, same state, same outbound results.
Most platforms sell 30-day visibility as a premium log add-on, and what you get is text. Here even the free tier keeps a week of full replay, and the window is a guarantee stated in days — not a quota that quietly evicts.
KV is transactional state, not bulk storage. Strongly consistent, replicated three ways, every write replayable. 512 MB is roughly half a million 1 KB rows. Big files belong in blob storage — that's why the two are separate numbers.
| Free | Pro | Enterprise | |
|---|---|---|---|
| Price, per account per month | $0 | $25 | $250 |
| Replay retention (guaranteed, in days) | 7 | 30 | 365 |
| Apps | 1 | 5 | 25 |
| Team members (included — never per-seat) | 2 | 5 | 20 |
| Outbound HTTP / email / webhooks | — | yes | yes |
| Transactional KV, per app | 64 MB | 512 MB | 2 GB |
| File & blob storage, per app | 1 GB | 50 GB | 500 GB |
| Max request body | 4 MB | 32 MB | 256 MB |
| Subdomain + managed TLS | yes | yes | yes |
| Export your data (code, KV, recordings) | free | free | free |
Above enterprise we don't stretch the caps — we give you a dedicated three-node cluster, custom-priced, and move your apps onto it with zero downtime. Same engine, your hardware envelope.
Billing systems show you what a company thinks of you on your worst day. Ours is written down, in your favor:
Cancellation takes effect at the end of the period you paid for. Then your account lands on the free plan — and free still serves.
If a payment fails you keep full paid service while retries run their course (about two weeks). We don't throttle you for a bank's mistake.
Drop to a smaller plan and every app keeps running and every byte of data stays readable. Over-limit just means you can't create or write more until you're back under.
Exports don't count against any limit, on any plan, including free. Nonpayment never deletes an account or its data. You can always get everything out.
The entire engine is AGPL-3.0 and public on GitHub, and we will never relicense it. Self-hosting is free forever — the paid plans are for having us run it, not for the software.
Because adding a teammate shouldn't be a billing decision. The people on your team are how software gets built; we charge for running your apps, not for headcount.
Outbound — your handlers can't call external HTTP, send email, or deliver webhooks — plus the smaller caps and the 7-day window. Serving requests, KV, and static files all work, indefinitely.
New writes are refused with a clear error; nothing existing is evicted or deleted. Reads, serving, and exports keep working. Upgrade, or delete what you don't need.