X6.AI

Model pricing — Markdown source

Raw Markdown for copying or feeding to AI agents.

> **AI Agents**: Index `/api/llms.txt` | Full `/api/llms-full-en.txt` | OpenAPI `/api/openapi.yaml`
> Base URL: `<BASE_URL>/v1`

# Model pricing

X6.AI bills by **token usage**. OpenAPI `GET /v1/models` returns model metadata only — **not** sell prices. Use the **developer console → Models** marketplace as the source of truth.

## Where to see prices

1. Sign in to the [Developer Console](https://console.x6.ai).
2. Open **[Models](https://console.x6.ai/models)**.
3. Open a model’s detail page and check **Pricing**.

## Pricing tiers (current model)

Model detail pages show **four token rates** (usually $/1M tokens; missing tiers fall back to the **input** rate):

| Tier | Meaning |
|------|---------|
| **Input** | New input tokens (not from cache) |
| **Cache read** | Input tokens served from Prompt Cache (usually cheaper) |
| **Cache write** | Tokens written into cache on first use. Some models split **short TTL / long TTL** write rates (e.g. Anthropic 5m / 1h; OpenAI-style windows such as 30m / 12h) |
| **Output** | Completion tokens |

Optional dimension:

| Dimension | Meaning |
|-----------|---------|
| **Long context** | When context exceeds the model’s configured threshold, input (and cache read/write that follow the input path) and/or output are multiplied by the rates shown on the detail page |

Follow what the marketplace displays. If cache read/write rates are unset, those tokens still bill at the **input** rate (not free).

## OpenAPI vs billing

| Scenario | Description |
|----------|-------------|
| List models | `GET /v1/models` — no prices |
| Actual charges | After a successful `POST /v1/chat/completions`, `POST /v1/messages`, or `POST /v1/responses`, X6.AI bills from token usage in the response (including cache read/write) at marketplace rates; long-context multipliers apply when matched |

See [Chat Completions — usage & Prompt Cache billing](./chat-completions.md#usage-prompt-cache-and-billing) for the simplified formula. For per-request reconciliation, use response header `X-Request-Id` (same value as `X-SNX-Trace-ID`) with `GET /v1/billing/requests/{request_id}`.

## Related

- [Models](./models.md) — OpenAPI `GET /v1/models`
- [Help: Billing & balance](/help/billing)
- [Help: Cached input & Prompt Cache pricing](/help/prompt-cache-pricing)