docs(kai): Kai pricing page — bill per reply, disclose cost basis - #1105
Conversation
Kai goes GA on 15 September 2026 and starts consuming PPU credits. The docs have no page covering what Kai costs or how spend is capped: the Kai section never mentions PPUs, and the Time credits table in Project Limits has no Kai row. Adds kai/pricing covering how Kai is billed, where project spend is tracked, and how Organization Admins set project and per-user limits. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Kai was described as billed "per conversation", which matches how the underlying usage analysis aggregates its numbers but not how the charge actually lands — each finished reply is charged. That wording invited two wrong reads: a single charge at the end of a chat, and a long chat being cheaper than several short ones. State the mechanic per reply on both the Kai pricing page and the project limits page, and disclose that the PPU charge is derived from the real cost of producing that reply (model tokens plus infrastructure), which is what explains why two similar-looking questions can differ in price. The per-piece-of-work table is relabelled as whole-conversation totals so it no longer contradicts the per-reply mechanic, and its lede drops the exact sample size. Also state the Kai figures on the limits page in PPU rather than the ambiguous "credits", and add the missing header row to the backend sizes table there, which without it rendered as a paragraph of pipes.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
KaroEverling
left a comment
There was a problem hiding this comment.
Approved. The per-reply mechanic plus the cost basis is a real correction to what I originally wrote, and it removes two wrong reads the old wording invited: one charge at the end of a chat, and a long chat being cheaper than several short ones.
Also glad to see the Kai Agent section on Project Limits, stating the figures in PPU rather than "credits", and the backend-sizes table header fix.
On the open questions in your description: the data-app figure is fine to ship as is. That work genuinely is the most expensive thing you can ask Kai to do, so a high number is honest rather than alarming, and we will handle expectation-setting in the GA email rather than hedging the docs.
Em dashes throughout are against our content style rule, but the existing Kai pages use them too, so it is not yours to fix here. We will do a consistency pass in a later update.
One thing that is not yours: the regenerated sidebar carries an unrelated label change, "Generic Extractor Tutorial" to "Tutorial". Harmless, just noting it in case it surprises anyone.
Supersedes #1102, which was opened from a fork branch and cannot be updated from
this repo. That branch's commit is included here unchanged, with follow-up work on
top — original page by @KaroEverling.
Jira issue(s): PROOF-XXX
Changes:
/kai/pricing/), plus its nav entry andthe two settings screenshots — Karo's commit, carried over as-is.
wording matched how the underlying usage analysis aggregates its numbers, not how
the charge actually lands, and invited two wrong reads: one charge at the end of a
chat, and a long chat being cheaper than several short ones.
actually cost to produce (model tokens plus infrastructure). This is what explains
why two similar-looking questions can differ in price.
longer contradicts the per-reply mechanic, and drops the exact sample size from
its lede.
states those figures in PPU rather than the ambiguous "credits" (that page defines
PPUs as "also known as credits", so the unit was right but read 20x off against
Kai credits).
for jobs" table had no header/delimiter row, so it rendered as a paragraph of
pipes rather than a table. Unrelated to Kai — happy to split it out if preferred.
Open product questions, not resolved here — flagging for review rather than
guessing:
top of summed per-reply cost. If that survives GA, billing is not purely per-reply
and both pages currently imply it is.
~32.5 PPU in another, against a table whose top row is 4.3. Worth calling out so
nobody is surprised by one action costing what thirty ordinary ones would.
contract say.
Verified:
npm run buildclean (362 pages); both pages checked in a local devserver. No proofreading issue created yet.