Budgets and cost
Hard spending limits per run, per day and per month, a cost meter on every run, and two ways to pay for model usage.
Model usage costs money, and a coding agent that loops can burn a lot of it. kanman puts hard limits on spending per team, shows the cost of every run as it happens, and stops before a limit is crossed instead of after.
The three budgets
Set budgets on the team under Settings > Budgets. All amounts are in EUR.
| Budget | Setting | Default | What happens when it is reached |
|---|---|---|---|
| Per run | budget_run_cents |
2.00 EUR | The run stops with Stopped: budget reached. No pull request is created |
| Per day | budget_day_cents |
none | No new runs start until the next day |
| Per month | budget_month_cents |
none | No new runs start until the next month |
Days and months are counted in the time zone of the team’s working hours, or UTC if none are set.
Before a run starts, kanman checks the daily and monthly budgets. If one of them is used up, the story waits in Ready and starts once the next day or month begins; this is a wait, not a question, so no decision is created. The check is recorded in the audit log as policy_decision, and every run that stops at its budget as budget_stop.
When a run hits its budget
A run that would go over its budget stops at the step where it would cross the limit. The decision inbox then asks Raise budget for this run? with the options Raise to twice the current run budget (for example Raise to €1.00 for a run with 0.50 EUR) and Abandon. Raising the budget resumes the run; abandoning it ends the run and moves the story back to Backlog, with your note as a comment.
The health check also catches runs whose spend reached the run budget between two attempts. Such a run is parked, and the decision inbox offers to raise its budget by one more run budget and continue, or to stop it, which kanman recommends.
Urgent work is never blocked
Stories with the class of service expedite, and incident work such as a CI regression, an outage or a security fix, are never stopped by budgets or throttles. They still count toward the spend, so you see them in the totals.
Seeing what things cost
- Run page: a cost meter shows the cost of the run against its budget.
- Evidence pack: cost and duration are part of every pack on the pull request.
- Team report: the weekly report on the team’s Reports tab shows what the team spent and the cost per merged pull request.
- Team settings: Settings > Budgets shows the spend of the current month.
Keeping cost down
The main lever is complexity routing: kanman sends trivial stories to a small model with a short turn budget and keeps the flagship models for complex work. See Runs. Small, well-written stories cost less and fail less, see Write requirements kanman can finish.
Paying for model usage
Each team chooses one of two billing modes (billing_mode):
| Mode | How it works |
|---|---|
| Pass-through | kanman uses its own model accounts and bills the compute at cost plus 15 percent |
| Bring your own key (BYOK) | kanman uses your contract with Anthropic, OpenAI, Azure OpenAI or Amazon Bedrock. The model provider bills you directly |
Add a key under Settings > AI providers in the workspace, then choose it when you set up the team. Claude Code works with an Anthropic or Amazon Bedrock key, Codex with an OpenAI or Azure OpenAI key. The team’s Settings > Budgets shows which mode it uses. Keys are stored encrypted and are never shown again after you save them.
Budgets apply in both modes: with BYOK they protect your provider bill.
Plan fees are separate from compute. See Plans and billing.
Related
Last updated: January 1, 0001
Open kanman