Skip to main content
Every response prices itself — no spreadsheet required:
Chat is billed by your exact token usage, not a flat per-request fee: a request preauthorizes an estimated maximum against your balance and settles down to what you actually used once the response completes. There’s no length-based rejection — a long-context request just needs balance to cover it. See GET /api/v1/pricing for the live, machine-readable rate sheet — it’s generated from the same code that bills you, so it can never drift from this page.

Developer Balance

You prepay a balance and requests draw from it — the same balance covers the REST API and the MCP server, and it never expires. Add funds at Developers → Billing (packs start at $10), or verify your phone on your first paid action to unlock a $0.50 starter balance free. What a $10 pack buys: pricing scales with the model and your usage, not a flat tier — as a range, that’s roughly ~5,500 typical requests on our most efficient models (e.g. llama-4-scout, ~$0.0018/typical request) down to ~27 on our most capable (gpt-5.4-pro, ~$0.37/typical request). “Typical” = a 5K-input/1K-output request; your real mileage depends on your actual token counts.

Chat — POST /api/v1/chat

Billed per token: metered_input_per_mtok + metered_output_per_mtok from GET /api/v1/pricing are the real rates. The typical price below is a derived reference at 5K input / 1K output tokens — useful for comparing models, not what you’re actually charged (that scales with your real usage). Provider prompt-cache reads bill at a discounted rate; a few large-context models switch to a whole-request tier once input crosses a threshold — both are in the live rate sheet.Always read live numbers from GET /api/v1/pricing — this table is a snapshot and will drift as rates or models change.

Images — POST /api/v1/images

n images = n × the per-image price.

Video — POST /api/v1/video

Failed video jobs are refunded automatically.

Search — POST /api/v1/search

$0.05 per query.

You’ll never be surprised

Price it first

/estimate is free and returns the estimated maximum cost — with cheaper alternatives.

Warnings before walls

Below $5.00 balance, every response carries a balance_warning; below $1.00 it becomes critical_low_balance. Out of funds = a clean 402 before anything runs.

Failures don't bill

Failed chat calls, failed batch items, and failed videos are not charged — video refunds are automatic.

Watch it live

Per-request logs and spend in the console.

From code