Model Economics
What a token actually costs
A practical way to read input, output, cache, and per-generation prices before you ship a feature.

What you will learn
- Budget input and output tokens separately.
- Long context and tool schemas can dominate input spend.
- Use live account-group pricing for the final production estimate.
Before you start
- Basic HTTP and API knowledge
Leave with a concrete implementation checklist and a testable starting point.
Key takeaways
- Budget input and output tokens separately.
- Long context and tool schemas can dominate input spend.
- Use live account-group pricing for the final production estimate.
Two billing shapes
Text models are usually metered by tokens. The input side covers the prompt and context you send; the output side covers generated text. Video and image models are commonly billed per generated item instead of per token.
That difference matters when you compare products. A chat completion estimate should include both sides of the exchange, while a video estimate should start with the number of generations and the selected model's per-item rate.
Input is not the whole bill
Long system prompts, retrieved documents, conversation history, and tool schemas all add input tokens. Output length is a separate variable and can be much larger than expected when a model is asked to reason or produce structured content.
Cached reads may have a separate rate. If your workload repeats the same context, cache-aware pricing can change which model is most economical even when the headline input price looks similar.
A simple planning formula
For a token-metered request, estimate (input tokens × input rate) + (output tokens × output rate), then multiply by the number of requests. Add a separate estimate for cache reads when the pricing table exposes one.
EasyAI's pricing page shows reference default-group rates. Account groups and live availability can differ, so use the console snapshot for a final production budget.
Decision guide
| Criterion | Option A | Option B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
Implementation steps
- 1
Measure token counts from representative prompts, not a toy request.
- 2
Estimate input, output, and cache-hit volumes independently.
- 3
Multiply by expected request volume and add a variance buffer.
- 4
Re-check the console price snapshot before launch.
Copy-ready example
const monthlyCost =
(inputTokens / 1_000_000) * inputUsdPerMillion +
(outputTokens / 1_000_000) * outputUsdPerMillion +
(cachedTokens / 1_000_000) * cacheUsdPerMillion;Frequently asked questions
Are displayed prices guaranteed for every account?
No. Marketing prices are default-group references. Your account group and enabled model set are authoritative.
How should I budget reasoning models?
Use production traces to estimate output tokens; reasoning and structured responses can produce more output than a short chat example.
Sources
- EasyAI documentationSource checked 2026-08-27