# Billing & plans

Koo bills per account: a plan (Free, Plus, or Pro), seats, and the services you run. The Free plan and the [always-free allowance](/docs/get-started/free-tier) are fully live today; self-service plan management is rolling out and marked below.

## How your bill is computed

Koo bills in two separate parts: your subscription in advance, and compute in arrears.

**Your subscription — plan + seats, up front.** A flat amount for your tier, plus any [members](/docs/collaboration/teams-and-roles) beyond the plan's included seat count (billed per seat). You pay this at the start of each period, and a hosted checkout charges only this. Plans bill monthly or annually; annual is about 17% off, applied to the plan and seat lines only.

**Compute — what your services run, monthly in arrears.** Each running [service](/docs/apps/apps-and-services) accrues its monthly price — set by its CPU and memory — × the fraction of the month it actually ran — run a service for half the month and pay half; suspended time doesn't accrue. At the end of each month that total is billed, after two deductions applied in order:

1. 
2.

Symbolically, the compute charge is `max(0, Σ price(service) × fraction run − allowance − credit)`.

If that works out to $0 — a common outcome within the allowance and credit — Koo still cuts a real invoice for $0; it simply charges nothing. On the Free plan, compute never exceeds the allowance, so there is no charge and no payment method is required.

## Compare plans

Plans differ in seats, app and resource ceilings, features, and log and metrics retention. Every number renders live from the current pricing config:

| Plan | Free | Plus | Pro | Enterprise |
| --- | --- | --- | --- | --- |
| Base price | $0 | $20/mo | $60/mo | $null/mo |
| Seats included | 1 | 3 | 10 | 25 |
| Projects | 1 | 10 | Unlimited | Unlimited |
| Locations per service | 1 | 2 | 5 | 10 |
| Free web service | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB |
| Free Postgres | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB |
| Free Redis | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB | 0.5 vCPU / 1 GiB |
| Custom domains | — | 3 | 25 | 100 |
| Auto-deploy from Git | — | Yes | Yes | Yes |
| Priority support | — | — | Yes | Yes |
| Log / metrics retention | 1 d | 7 d | 30 d | 90 d |

## Service pricing

Every service picks explicit CPU and memory from a discrete ladder (memory up to 8 GiB per vCPU) and bills a predictable monthly price, linear in CPU + memory. Postgres and Redis price their compute the same way, with disk provisioned separately as a volume — see [Postgres](/docs/data/postgres) and [Redis](/docs/data/redis).

| vCPU | Memory | Price |
| --- | --- | --- |
| 0.25 vCPU | 512 MiB | $5/mo |
| 0.5 vCPU | 1 GiB | $10/mo |
| 1 vCPU | 2 GiB | $20/mo |
| 2 vCPU | 4 GiB | $40/mo |
| 4 vCPU | 8 GiB | $80/mo |

Pick any CPU + memory (memory up to 8 GiB per vCPU).

## The free allowance

Your primary account permanently includes one free web service, one free Postgres, and one free Redis, each at the free unit (0.5 vCPU / 1 GiB). The allowance is a price deduction, not a reserved shape: upsize a covered service and it bills only the difference — `price(service) − price(free unit)`. See [Free tier & pricing](/docs/get-started/free-tier) for the full rules.

> **Note:**
>
> Today the Free plan's resource ceilings cap at exactly the allowance: you can run the free-unit services, but upsizing beyond them requires a paid plan until self-service checkout ships.

## Upgrade (Coming soon)

Self-service upgrade will work from the account's billing settings:

1. 
2. 
3.

Upgrading mid-period will prorate: you'll be charged the difference for the remainder of the period right away. Your free allowance carries over unchanged — paid plans always include at least the Free allowance.

## Downgrade (Coming soon)

If your current usage fits the lower plan's limits, a downgrade will apply immediately, with the unused difference credited toward your next invoice.

If usage exceeds the lower plan — too many services, resources above its ceilings, more seats than it includes — the downgrade will pause and show you what's over the limit. You'll then either:

- 
-

> **Warning:**
>
> Auto-shrink makes destructive changes — it can suspend services and deactivate members. Every change is recorded in the account's audit events.

## Cancel & refunds (Coming soon)

**Monthly subscriptions:** canceling will keep your paid plan active until the end of the current period, then revert the account to Free. There's no mid-period cash refund on your plan; the free allowance keeps your covered services running at $0.

**Annual subscriptions canceled mid-term:** you'll receive a prorated cash refund of your plan and seats at the monthly-equivalent rate — you pay the regular monthly price for the months you actually used and get the remainder back: `refund = amountPaid − monthsUsed × monthlyPrice`, never below zero. Late in the term, once the monthly-rate value used exceeds what you paid, no refund remains.

**Compute is settled separately** either way: the compute you've already used is billed once more at the end of the month, as usual — a final compute invoice — and then nothing further.

If a renewal payment fails, you'll be notified and the charge retried automatically; if retries are exhausted the account is suspended until a payment succeeds, then restored.

Deleting your account cancels its subscription the same way, refund included — see [account deletion](/docs/account/account-deletion).

## Price changes

When Koo changes prices, the new prices apply to new subscriptions only. Existing subscriptions keep their current prices for a 12-month grandfathering window from the date of the change, and you're notified before your subscription migrates to the new prices at the window's end.
