Account
Billing & pricing.
No plans and no subscriptions. You pay for the tokens each request uses, from one prepaid USD balance.
How a request is priced
Every model has a price per million input tokens and per million output tokens, set by its provider. Synaps adds a flat 20% on top. That is the whole fee: no per-request charge, no minimum spend, no monthly cost.
charge = provider_cost × 1.20
provider_cost = input_tokens × input_price_per_token
+ output_tokens × output_price_per_tokenThe provider reports the exact cost of each request, and Synaps uses that figure. Prices on the Models page and from GET /models already include the fee.
Worked example
Suppose a model lists at $3 per million input tokens and $15 per million output tokens, and you send 2,000 input tokens and get 500 output tokens back:
| Input | 2,000 × $3 / 1,000,000 | $0.0060 |
| Output | 500 × $15 / 1,000,000 | $0.0075 |
| Provider cost | $0.0135 | |
| You pay | × 1.20 | $0.0162 |
When you are charged
- Charges happen after each request finishes, using the final usage the provider reports.
- Paid requests need at least $0.02 in your balance to start. Below that, they return
402. - Your balance never goes below zero. If a long reply costs more than what is left, the balance stops at $0.00.
- Failed requests that return an error before any output are not charged.
- Streams you stop early are charged for what the provider generated. See Streaming.
Seeing what you spent
- Per request:
usage.costin every response is the USD amount charged. - In the app: the chat shows the cost under each reply; Wallet lists every request and top-up.
- Per key: API keys shows each key's spending over the last 7 days.
Free models
Models whose ID ends in :free cost nothing and are never charged. They have daily limits (see Rate limits), may be slower, and their providers may log prompts.
Web search
With Web turned on in the chat, the model reads live search results before answering and cites its sources. Each such message costs the normal model price plus a flat $0.02 for the search. Web search is available with paid models only.
Controlling spend
- Set
max_tokenson each request to cap the output. - Give each API key a daily limit so one runaway script cannot drain the balance.
- Use a separate key per app or bot, so you can see and revoke them individually.
- Top up in small amounts. There is no penalty for topping up often.