One flat price.
No meters running.

Every plan is priced per account, with your whole team included. No seats, no per-request charges, no surprise line items.

Free
$0
Forever, while your app is active. No card.
Every request recorded and replayable for 7 days — guaranteed.
  • 1 app, on its own subdomain with TLS
  • 2 team members
  • 64 MB transactional KV
  • 1 GB file & blob storage
  • Request bodies up to 4 MB
  • No outbound HTTP, email, or webhooks
Enterprise
$250 / month, per account
Listed price. Larger shapes on request.
Every request recorded and replayable for 365 days — guaranteed.
  • 25 apps
  • 20 team members, included
  • Outbound HTTP, email, and durable webhooks
  • 2 GB transactional KV per app
  • 500 GB file & blob storage per app
  • Request bodies up to 256 MB

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.

What you're buying

Retention is
the product.

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.

7 → 30 → 365 days
deterministic replay, by plan — every request, not a sample

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.

The numbers, side by side
FreeProEnterprise
Price, per account per month$0$25$250
Replay retention (guaranteed, in days)730365
Apps1525
Team members (included — never per-seat)2520
Outbound HTTP / email / webhooksyesyes
Transactional KV, per app64 MB512 MB2 GB
File & blob storage, per app1 GB50 GB500 GB
Max request body4 MB32 MB256 MB
Subdomain + managed TLSyesyesyes
Export your data (code, KV, recordings)freefreefree
Beyond enterprise

Outgrow the shared tiers? You get your own cluster.

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.

Talk about a dedicated cluster
The unhappy paths, in writing

Stopping paying is not a trap.

Billing systems show you what a company thinks of you on your worst day. Ours is written down, in your favor:

Cancel anytime, keep the month

Cancellation takes effect at the end of the period you paid for. Then your account lands on the free plan — and free still serves.

A failed card degrades nothing

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.

Downgrades never delete

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.

Your data is always exportable, free

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 other exit

Or pay us nothing
and run it yourself.

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.

Why is the price per account and not per seat?

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.

What does the free plan actually lack?

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.

What happens when I hit a storage cap?

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.

Start free — one email, no card