Billing overview
Last updated September 15, 2026
How Amux bills — itemized pricing, how prices are composed, what is and is not charged, and how to verify the cost of a single call.
Amux bills as prepaid credit drawn down by actual usage: add credit first, and calls deduct from the account balance.
Inference settles at the price of the provider that served it, with no platform markup. Discounts we negotiate upstream go straight into the unit price you see; our revenue comes from the difference between wholesale discounts and what we pass on, not from marking up calls.
Subscription billing has not shipped.
Who is billed
Charges always follow one path:
API key → its workspace → that workspace's account → deducted from that account's balance
Balance belongs to the account layer: one for the personal account, one for each organization, all independent.
Itemized pricing
The cost of a call is the sum of each billing component's quantity times its unit price. Which components apply depends on the model type, and each provider may configure only some of them.
Text
| Component | Unit | Notes |
|---|---|---|
| Input | Per million tokens | Prompt tokens |
| Output | Per million tokens | Text tokens the model generates |
| Reasoning | Per million tokens | Tokens of the thinking phase. Folded into output at the output rate when not configured separately |
| Cache write | Per million tokens | Tokens written to the prompt cache; some providers split this into 5-minute and 1-hour tiers by TTL |
| Cache read | Per million tokens | Tokens served from cache, usually far below the input rate |
⚠️ A component shown as "—" means that provider does not offer it. It does not mean free.
Image
| Component | Unit |
|---|---|
| Image input / image output | Per million tokens, or per image |
| Image cache read | Per million tokens |
| In-conversation image generation | Per call |
Per-image components can be tiered by size.
Video
| Component | Unit | Notes |
|---|---|---|
| Video output | Per second | Tiered by resolution. Quantity is the actual output duration, not the duration in the request |
| Video input | Per second | Duration of the reference material, tiered by output resolution |
| Video output | Per token | Some providers bill by token instead; mutually exclusive with per-second billing |
General
| Component | Unit |
|---|---|
| Per request | A flat charge per call, independent of usage |
| Web search, X search, file search, document search | Per their own units |
| Code interpreter, computer use, MCP tools | Per their own units |
The actual components and rates for each model are on its detail page in the model catalog; this page does not restate specific prices.
How a price is composed
The final unit price is determined in this order:
1. Standard price (may vary by time of day)
↓
2. Public promotion (multiplied by the promotional factor)
↓
3. Account-specific discount (the better of the two applies; they do not compound)
Time-of-day pricing
Some providers price the same model differently at different times of day (lower overnight, for instance). Time-of-day pricing is part of the standard price, not a discount: no promotional entry appears on the invoice, and no struck-through original price appears in the catalog.
The call log states which window a call fell into and the corresponding unit price.
Public promotions
A promotion is a factor applied to the standard price in force at the time. It is shown as a discount badge in the catalog and on pricing pages, with its active window stated.
Account-specific discounts
Account-specific discounts can be configured at four granularities: per provider, per vendor, per model, or per model-at-a-provider.
- When several rules match, the most specific wins; they do not compound
- Against a public promotion, whichever is better applies, rather than the account discount overriding unconditionally
- Only reductions are supported
Account-specific discounts are reflected directly in the prices you see in the catalog, on model detail pages, and in pricing tables.
The price strategy uses discounted prices
The price routing strategy orders by discounted price, so account discounts and promotions genuinely affect which provider is chosen. See routing and failover.
What is charged
| Situation | Charged |
|---|---|
| Call succeeds | Charged |
| Client disconnects midway | Charged for usage already produced — that content was generated upstream |
| Stream truncated upstream | Charged for usage already produced |
| Upstream returns an error | Not charged |
| Attempts that fail during routing failover | Not charged; absorbed by the platform |
| Parameter errors, authentication failures, other client errors | Not charged |
| Image and video tasks that fail to generate | Not charged |
When the balance is insufficient, a task already running may drive it negative. Further calls are then rejected, and the next top-up settles the shortfall first.
Verifying the cost of one call
Every response carries an x-amux-generation-id header, which locates that call precisely on the console's logs page.
The amux object in the response body carries the provider that served it and the full attempt chain:
{
"amux": {
"provider": "anthropic",
"attempt": 1,
"attempts": [{ "provider": "anthropic", "status": "ok" }],
"droppedParams": []
}
}For image generation endpoints, the amux object also carries cost_nano, the cost of that call in nano-USD (1 USD = 10⁹ nano-USD).
⚠️ Text calls do not return a cost in the response body. The object is unavailable for streaming responses, where dropped parameters are reported through the
x-amux-dropped-paramsresponse header instead.
The log detail page lists every billing component for a call with its quantity, unit price, and amount, along with the pricing window and any discount applied.
Precision
The platform keeps accounts in integer nano-USD, where 1 USD = 10⁹ nano-USD, with no floating point. Rounding happens once, when the final amount is computed; itemized details keep their original precision.
Related
- Balance, credit, and consumption order
- Top-ups and auto top-up
- Receipts, invoices, and billing details
- Refunds
- Providers and supply tiers — why one model has several prices