How to Route Requests Between Claude Haiku 4.5 and Sonnet
The cheapest way to use Claude Haiku 4.5 is not to use it alone. It is to use it as a gatekeeper: Haiku handles the easy 80% of requests and escalates the hard rest to a bigger Claude model.
Done well, that pattern cuts cost sharply while keeping quality on the requests that actually need it. Done lazily, it routes exactly the wrong things and you ship worse answers for less money.
Why not just use the small model for everything?
Because failures are unevenly distributed. A pipeline where 90% of items are easy and 10% are genuinely hard will look fine in a demo and fail in production, because those 10% tend to be the ones that matter — the ambiguous support ticket, the edge-case contract clause. Routing sends the risky work where it belongs instead of hoping the small model holds up.
A routing pattern that holds up
- Classify first. Ask Haiku to label each request as simple or complex, and to output a confidence score.
- Set a threshold. Escalate anything below your confidence bar to the larger model.
- Escalate on structure too. Requests needing multi-step reasoning or tool chains skip Haiku entirely.
- Log every decision. Store the label, the score, and which model answered.
- Review mismatches weekly. Sample Haiku answers that scored high confidence, and look for wrong-but-confident cases.
Step five is where the real savings live. High-confidence wrong answers are the ones that eat your trust budget, and they are invisible unless you go looking.
What should the classifier catch?
Route to the big model when the request has multiple constraints that interact, when it asks for a judgement call, when it involves numbers that must be right, or when it is short but high-stakes (a legal or medical question). Route to Haiku when the task is formatting, extraction, translation of plain text, tagging, or a first-draft reply a human will edit.
How do you measure whether routing is working?
Track three numbers: cost per resolved request, escalation rate, and error rate on a human-reviewed sample. If cost drops but error rate rises, your threshold is too aggressive. Aim for an escalation rate in the 10-25% range for most production pipelines — below that and you are probably under-routing, above it and Haiku is not saving you much.
Where does routing add complexity you do not want?
Low-volume apps. If you handle 200 requests a day, the engineering time to build and maintain routing costs more than the API savings. Also skip routing when latency is the constraint and adding a second model call per request doubles the wait. Routing is a cost tool for scale, not an architecture to adopt reflexively.
Key Takeaways
- Use Haiku as a gatekeeper and escalate hard requests to a larger Claude model.
- Have Haiku output a confidence score and escalate below a threshold.
- Log the routing decision and review high-confidence wrong answers weekly.
- Target a 10-25% escalation rate for typical production volume.
- Skip routing for low-volume apps where engineering time outweighs API savings.
