Four things are metered: AI reviews, CI minutes, docs calls and hosted inference. Each is counted once. A usage event carries an idempotency key and a sequence number, so a retry or a replayed message never counts twice.
Past an allowance
| What | Price beyond the allowance |
|---|---|
| AI review | $0.10 each |
| CI minute | $0.006 per minute |
| Hosted inference and compute | Provider cost plus 10% |
| Bring your own key | Free |
On a paid plan nothing stops when you pass an allowance. The review runs, it is metered at the price above, and you get a clear notice. A hard stop applies only when you set a spending cap.
On Free there is no card on file, so there is no overage: the 51st review of the month is refused with a hint to upgrade, and CI stops at its 500 minutes. Hosted inference needs a paid plan or your own key.
overlane billing usage
overlane billing check --meter reviewsbilling check asks before you spend. It exits 0 when the spend is allowed and 6 when a limit or cap refuses it, with the next command to run:
{
"tenantId": "acme",
"meter": "reviews",
"outcome": "refused",
"allowed": false,
"chargeMicros": 0,
"message": "Free includes 50 AI reviews a month and all are used. Upgrade to keep going.",
"nextCommand": "overlane billing checkout --plan pro",
"exitCode": 6
}When usage is invoiced
Usage is billed in arrears. The invoice that carries a period’s usage is the next one, and it closes when Stripe finalizes it. Usage that arrives after that goes on the following invoice, and the invoice that closed never changes. Only the units beyond an allowance are reported to Stripe, each with its idempotency key.
Reviews and hosted inference are read from what the services already record, so nothing needs to be reported by hand.