Field notes
AI · Apr 2026

Cutting LLM Cost Without Cutting Quality

An LLM bill balloons quietly. A prototype that cost a few dollars a day ships, traffic grows, and one morning finance forwards you an invoice with a number on it nobody planned for. The reflex is to reach for a cheaper model everywhere and hope no one notices the quality drop. That is the wrong move. You can usually cut inference cost by more than half without touching quality — if you attack the waste instead of the model.

Tier your models, escalate on doubt

Most requests do not need your most expensive model. So do not send them there. Route the easy cases to a small, cheap model first and escalate only when it signals low confidence or fails a cheap validity check. A tiered pipeline — small model, then mid, then the frontier model as a last resort — turns a flat per-call cost into a curve weighted toward the cheap tier, because most traffic is easy. The trap is escalating too rarely and shipping bad answers. So we gate the routing thresholds behind an eval set and tune them until the small model handles everything it can and nothing it cannot.

Send less to the model

The cheapest token is the one you never generate. Cache aggressively, on two levels. Exact-match caching kills the embarrassing case of paying twice for a byte-identical request. Semantic caching goes further: embed the request, and if a past query is close enough in meaning, serve the stored answer instead of calling the model at all. On workloads with repetitive questions, a semantic cache can absorb a large share of traffic before it ever reaches inference. Set the similarity threshold carefully — too loose and you serve a confidently wrong neighbor's answer.

Then trim what you do send. Most prompts are bloated — stale few-shot examples, redundant instructions, whole documents pasted in when three retrieved paragraphs would do. Tighten the system prompt, retrieve narrowly instead of stuffing context, and you cut input tokens on every single call. Finally, batch. Where latency allows, group requests so the model processes many at once and you pay the lower batched rate. Trimming and batching are unglamorous and they compound — a few percent per call across millions of calls is real money.

Prove quality held with evals

Here is the part teams skip, and it is the one that matters most. Every one of these changes is a bet that quality survives — and a bet you cannot see the outcome of by eyeballing a few responses. So you build an eval set first, with graded cases that reflect real usage, and you run it after every optimization. Model swap, cache threshold, trimmed prompt, larger batch — each ships only if the eval score holds. The eval turns cost work from a nervous guess into an engineering discipline: you can watch the bill fall and the score stay flat on the same dashboard.

A cost cut you cannot measure against an eval is not a cost cut. It is a gamble you will lose slowly, one silently worse answer at a time.
— Protocore · AI engineering

The payoff is that cost and quality stop being a trade-off and become two dials you tune independently. On one straight-through document pipeline processing over a million documents, we cut inference spend by well over half — tiering, caching, and trimming stacked — while the eval score never moved, because every change had to clear the eval before it shipped. Cheaper is easy. Cheaper with the receipts to prove nothing broke is the actual job.

Have a system to build?

Tell us the problem. We'll come back with an architecture and a plan.

Start a project