One number, computed once
Every response will carry ausage block. It is the same number the telemetry
event records and the same number the invoice line sums — there is no second
computation anywhere for it to drift from.
The measurement and the price are separate fields on purpose. A single field
cannot be both “the input you submitted” and “zero when nothing is charged” — on
a 100,000-token stand-down those are different numbers. Splitting them means the
measurement is always verifiable and the price is always attributable.
Three versions that move independently
policy_version says what ran. meter_version says what a token means.
price_version says what it costs.
They are deliberately decoupled: a retune must not reprice anyone, and a
repricing must not change anyone’s selection. If they were one field, every
price change would look like a behaviour change and every retune would look like
a price change.
What is metered
Every customer-supplied text field the engine processes:Recompute it yourself
The reference implementation, in Python and TypeScript, with a worked example.
What is not metered
Why input, and not tokens saved
Charging for tokens saved is the intuitive model and it is the wrong one, for two reasons we would rather state than have you infer.- It pays us more the more we cut. That is a direct incentive against answer quality — the vendor’s interest and yours point in opposite directions on every request.
- It is unstable. A retune would change your bill for identical inputs, making your invoice a function of our tuning decisions rather than of your usage.
The charge
charge_multiplier is carried on the receipt for exactly this reason: you never
have to look up which multiplier applied to a given request.
Rates are not published yet. The rate card, the minimum request fee and the
stand-down multiplier are commercial decisions that are not settled. What this
page fixes is the structure — the unit, the formula and where each number
comes from — so that when the numbers land there is nothing left to argue about
except the numbers.
Cases people ask about
Rounding happens once
Amounts are rounded once, at invoice aggregation, over the summed exact amount — never per request. Per-request rounding of sub-cent amounts is how a million small requests silently become a different invoice from the sum of their receipts.Disputing a charge
We cannot show you your records, because we never had them. What we can show you is better:1
You hold the payload
You sent it. We did not keep it.
2
We publish the function
estimate_tokens is published in full, including a reference implementation
you can run.3
The receipt names the version
meter_version pins which definition applied to that request.How to recompute your own bill
Step by step, with runnable code.