Docs / Billing

Billing and credits

Prepaid credits in US dollars. Each request is charged for the tokens it actually used. Two things work differently from a postpaid API: a hold is taken before the request runs, and a disconnect does not stop the meter.

Credits

Cached prompt tokens

Prompt tokens the model reports as cached (usage.prompt_tokens_details.cached_tokens) are billed at the model's cached-input rate, a fifth of the input rate at launch. Caching happens on the model side; you do not opt in. It pays to keep the start of your prompt stable between calls — system prompt and tool definitions first, the changing part last. If the model reports no cached tokens for a request, the whole prompt is billed as input.

Holds: why max_tokens matters

Before a request reaches the model, the relay reserves the most it could cost:

The reserved amount leaves your balance while the request runs. When it finishes, the relay gives the hold back and charges the real cost. A hold is a reservation, not a limit: a response longer than the hold is still billed in full.

What this means in practice:

Disconnects

What happens after you hang up:

  1. The relay keeps reading the model's output for up to 25 seconds, without sending it anywhere.
  2. If the generation ends within that window, you are charged its real usage. A streaming request shows status 499 in the dashboard.
  3. If it is still running after 25 seconds, the relay can no longer see the final usage and charges at least the amount it reserved for the request — the hold. Without max_tokens, that hold includes 8,192 output tokens.

Non-streaming requests work the same way: the relay stays connected to the model after you leave, and a generation that outlives the window leaves the hold charged.

So: a client-side timeout does not save money, and a retry after a timeout pays twice. Bound every request with max_tokens, and set client timeouts generous enough for the answer you asked for.

How a request settles

What a request costs by outcome
OutcomeYou pay
SuccessThe reported usage.
Error before any output (4xx/5xx from the model, model unreachable)Nothing.
Upstream timeout (504) or an unreadable response (502)Nothing.
Stream fails midwayThe reported usage if the model sent it; otherwise an estimate from the characters received (about 4 per token), marked as estimated in the dashboard.
Client disconnectsReal usage if the generation ends within 25 s, otherwise the hold. See above.

Bonus credits

Part of your balance can be bonus credit — from an invite or the bonus on a top-up. The dashboard shows paid and bonus credit separately.

Top-ups

Top-ups are manual during the beta: message toxuv.t.me on Telegram with your login and the pack or amount. The credit lands on your balance once the payment is confirmed. The bonus part is bonus credit.

Packs

Top-up packs
PackYou payBonusCreditedNotes
Just Try$2$1$3Once per account
Prime$20$3$23—
Ultima$100$20$120—
Scale$500$150$650Grants Scale perks

Other amounts

Any amount from $1 works. The bonus is the percentage of the highest tier the amount reaches:

Bonus for custom amounts
AmountBonus
Below $20none
From $2015%
From $10020%
From $50030%
Example
$50 top-up → 15% bonus → $57.50 credited ($50 paid + $7.50 bonus)

Scale perks

Any single top-up of $500 or more — the Scale pack or a custom amount — grants Scale perks for good: