The fastest way to cut LLM API costs is to send each task to the cheapest model that does it well, then control output length and reasoning tokens. Caching and batch pricing help too, but model choice matters most. On my chat task, the median of all 326 models costs 0.24¢ per answer, while the most expensive model I tested, Claude Fable 5.1, costs 6.3¢.
Where the money goes
API bills come from three places: the price per token, how many tokens the model reads, and how many it writes. Reasoning tokens are billed as output tokens, so a model that thinks at length costs more even when its visible answer is short. The task data below shows this clearly.
The 10 techniques
1. Match the model to the task
Price per token varies widely. Claude Haiku 5.5 lists at $0.10 input and $0.50 output per 1M tokens. Claude Opus 5.5 lists at $4.00 and $20.00. For a chat answer, Haiku 5.5 costs 0.07¢ per task ($0.66 per 1,000). Opus 5.5 costs 2.5¢ ($25.36 per 1,000). Same job, roughly 36 times the cost.
2. Test cheap models on your real task first
A cheaper model only saves money if it still passes your quality bar. Run a sample of your own inputs through two or three candidates before you commit. The calculator compares per-task costs, and the methodology page explains how I run the tests behind these numbers.
3. Use cheaper models for long documents
Summarizing a 20-page PDF is mostly input. The table shows how far per-task cost spreads on the same document.
| Model | Cost per summary | Per 1,000 |
|---|---|---|
| GPT-6 Luna | 0.16¢ | $1.57 |
| Claude Haiku 5.5 | 0.22¢ | $2.20 |
| Claude Sonnet 5.5 | 4.5¢ | $44.58 |
See the PDF summary task for the full ranking. Check summary quality on your own documents before switching.
4. Cap output length
Output tokens cost more than input tokens on every model in my data. On the chat task, Claude Sonnet 5.5 wrote 1,256 output tokens, while GPT-6.1 Sol wrote 560 for the same question. Set a maximum length in the API call, and ask for direct answers with no preamble.
5. Watch reasoning tokens
Reasoning can dominate the bill. On the chat task, DeepSeek V4.1 Flash used 5,461 reasoning tokens against 859 visible output tokens. GPT-6.1 Sol used 103 reasoning tokens. In my data, many models reason by default or always. Check whether a reasoning setting can be lowered or turned off for simple tasks.
6. Avoid runaway generations
Some models hit my 16,000-token output cap. On the blog post task, Qwen3.8 Flash produced no visible output and used the full 16,000 reasoning tokens, costing 0.75¢ per post. GPT-6 Luna wrote a full post for 0.12¢. Set output caps and monitor for empty responses, which bill you for thinking and deliver nothing.
7. Use prompt caching on repeated context
Agent workflows resend the same system prompt and history on every step. In my modeled 50-step coding agent (8,000-token system prompt, +1,500 tokens of context per step), caching makes a large difference:
| Model | With caching | Without caching |
|---|---|---|
| GPT-6 Luna | 4.1¢ | $0.23 |
| Claude Haiku 5.5 | 6.6¢ | $0.34 |
| Claude Sonnet 5.5 | 84¢ | $6.52 |
| Claude Opus 5.5 | $1.68 | $13.04 |
For Claude Sonnet 5.5, caching cuts the cost from $6.52 to 84¢. Put stable content, such as system prompts and tool definitions, at the start of the prompt so it can be cached. See the 50-step agent task for more models.
8. Use batch APIs for work that can wait
Official pages list a 50% batch API discount at OpenAI, Anthropic, Google, Mistral, Alibaba and Amazon Nova. Offline jobs such as nightly classification, bulk translation or backfills fit batch endpoints. I have not measured the discount in my own runs, so check current provider terms before you budget for it.
9. Trim input and context
Input tokens add up on every call. On the chat question, Grok 4.3 sent 1,280 input tokens, while GPT-6 Luna sent 45. Remove boilerplate, send only the relevant part of a document, and replace long conversation histories with a short summary where you can.
10. Account for tokenizers
The same text does not produce the same token count across providers. For one English document, Anthropic's tokenizer produces 1.39 times as many tokens as OpenAI's (OpenAI = 1.00). In my PDF run, Claude Haiku 5.5 read 18,004 input tokens while GPT-6 Luna read 12,987 on the same 10,023-word document. Compare cost per task, not price per token.
A simple plan
Start with an audit: list your tasks, measure the tokens for each, and find the largest bills. Then apply techniques 1 through 6 to the biggest ones, add caching for any flow with a stable prefix, and move offline work to batch endpoints. Follow pricing news for changes, and see plans for options.
FAQ
What is the single biggest way to reduce LLM costs?
Choosing a cheaper model that still passes your quality test. On my chat task, moving from Claude Opus 5.5 to Claude Haiku 5.5 cuts the cost per answer from 2.5¢ to 0.07¢.
Does caching always help?
It helps when the same long context repeats across calls, as in agent loops. In my 50-step agent test, Claude Sonnet 5.5 cost $6.52 per task without caching and 84¢ with it. Short one-off prompts gain much less.
Are reasoning tokens worth paying for?
Only when the task needs them. Reasoning tokens bill as output, and on some simple jobs they far exceed the visible answer. Test with reasoning reduced or off, and keep it on where quality drops without it.