Skip to content

Pricing

Per-token prices, what is and is not billed, worked examples and how to pay.

The hosted Decision API is priced per million input tokens, with output free, paid from prepaid credit in pounds. There is no subscription and no monthly minimum; credit is bought from £5.

Prices

ModelLive, per million input tokensBatch, per million input tokensList price unchanged since
Myles-G 12B£0.0015£0.0007514 October 2026
Myles-G 31B£0.005£0.002519 October 2026

The model ids are myles-g-12b for Myles-G 12B and myles-g-31b for Myles-G 31B.

Output tokens are free on every model. Prices exclude VAT, and UK VAT is added at checkout. The Batch API answers within 24 hours at half the live price.

What you pay for

  • Input tokens of answered requests. The response's usage.input_tokens is exactly what is billed. It covers the state, the questions and their options, and any images (see Images: billing).
  • Not billed: output tokens, requests that end in an error response (including server timeouts and refused requests), GET /v1/models and GET /health.
  • Batches: each answered line is billed at the batch price. If you cancel a batch, the lines already answered are billed and the rest are not.

Worked examples

WorkloadMyles-G 12BMyles-G 31B
One typical decision (about 700 input tokens)£0.00000105£0.0000035
A million typical decisions, liveabout £1.05about £3.50
A million typical decisions, batchabout £0.53about £1.75

Shorter states cost less, so leave out signatures, footers and quoted history (see State). Several questions about the same situation in one request share the state's tokens.

Retries and timeouts

Every answered request is billed on its own usage.input_tokens. The API has no idempotency key, so it cannot tell a retry from a new request. If you send a request again after it was answered, for example because your client gave up waiting while the answer was on its way, both are answered and both are billed. A request that ends in an error response is not billed, so the failed attempt before a retry costs nothing.

  • Set a sensible timeout. Allow comfortably more than your slowest expected answer, so a slow answer is not abandoned and asked for again. The SDKs allow 30 seconds an attempt by default (timeout).
  • Know what the SDKs retry. The Python and JavaScript SDKs retry 429, 502 and 503 responses and connection errors, up to 3 times by default (max_retries, maxRetries). An error response was not billed, so retrying it is safe. A connection error includes the client's own timeout, which can happen after the request was answered, and the retry is then billed as a new request. If that matters more to you than a missed answer, set retries to 0 and decide yourself.
  • Keep the request id. Every response carries an X-Request-Id header. Log it, and quote it to support if you think a request was billed twice (see Request id).

Paying

  • Buy prepaid credit in the console by card, from £5 to £25,000 a top-up (excluding VAT), with quick picks of £10, £25, £50 and £100. Optional automatic top-up and low-balance alerts are below.
  • Credit you buy never expires; promotional credit may (see Console).
  • Invoices and receipts come with each payment.

Automatic top-up

Under Billing in the console you can top up automatically from your saved card. You choose:

  • When credit falls below a balance you set, up to £25,000;
  • how much to add each time, from £5 to £25,000 (excluding VAT);
  • an optional monthly cap on the total of automatic top-ups in a calendar month (UK time), at least £5. A top-up that would go over the cap is not made.

At most three automatic top-ups are made in any 24 hours. You can also set a balance below which the organisation's owners, admins and billing members are emailed that credit is running low. While automatic top-up is on, a top-up is tried instead whenever the balance is below its threshold.

If the card is declined, automatic top-up turns off, "Automatic top-up failed" is recorded in the console's Activity log, and the owners, admins and billing members are emailed with the balance. Your keys keep working on the credit that is left and pause when it reaches zero. Add credit or update the card, then turn automatic top-up back on. If a top-up fails for another reason, such as the payment service not answering, it is tried again after 30 minutes.

When credit runs out

Usage is reported to the console about once a minute and charged against your credit as it arrives. When the balance reaches zero, every key in the organisation is paused, usually within about two minutes, and requests get 402:

json
{ "error": "out of credit: top up at https://console.mellix.com/billing", "type": "out_of_credit" }

Requests answered in the minute or two before the pause are still billed, so the balance can go a little below zero. The shortfall is taken from your next top-up, and keys work again once the balance is above zero.

A workspace can also have a monthly budget. Once its spend reaches the budget, that workspace's keys get 402 with type budget_exceeded until the budget is raised under Workspaces in the console or the next month starts (the 1st, UK time). Other workspaces are not affected. Requests refused with 402 are not billed.

Usage and exports

  • The console's Usage page shows the last 30 days per key, model and day, with totals of requests, input tokens and cost, a breakdown by model and batch usage per workspace and model. Filter it by workspace, key or model. It is updated every minute or so, and costs exclude VAT.
  • Download CSV on the Usage page exports the last 90 days with the same filters: one row per key, model and day for live usage, and one per day, workspace and model for batch. Columns: day, workspace, key, key_id, model, requests, input_tokens, cost_gbp_ex_vat, kind (live or batch).
  • Billing lists your recent credit purchases, automatic top-ups and usage charges. The Activity log, with its own CSV of the last 12 months, records top-ups, failed automatic top-ups and changes to billing settings.

Price changes

A list price on this page holds for every request until a new price is published here, with its date. Credit you have already bought is spent at the price in force when each request is answered.

On your own hardware

Self-hosted Myles is licensed per deployment rather than per token. See Enterprise and Self-hosting.