Routing decisions are usually judged by the price difference between two models on a single request. That framing is comfortable because it is easy to compute from a rate card, and it is almost always wrong about the real cost. When a task lands on a model too small to handle it, the failure does not stay inside the first response. It spills into a chain: a retry on a stronger model, a clarification to the user, a support agent reading the thread, an engineer rewriting the answer, and a customer waiting through all of it.
The cost accounting problem is that tokens are visible and human minutes are not. Rate cards quote input and output prices per million tokens, and providers bill input and output separately, with output usually costing several times more than input (Silicon Data). That asymmetry matters because a bad answer tends to be a long answer: the model fills space with plausible-sounding text, so a misroute burns output tokens at the expensive rate twice, once for the original and once for the correction. Meanwhile the support agent's ten minutes never appear on any dashboard unless someone deliberately logs them.
There is a second hidden multiplier. A single user question does not always mean a single model call, because agents check tools, retries fire silently, and each call is billed separately (DigitalOcean). Routing errors inflate this multiplier because the correction itself may require a second call with more context, a longer system prompt, and retrieved documents pasted in, so the corrective call is often larger than the original.
The practical consequence: any comparison between a small model and a frontier model that only counts the first call will systematically favor the small model, because it ignores exactly the costs that the small model creates when it fails.



