The instinct is to keep adding rungs. The evidence says stop early.
A study of LLM cascades optimized sequences from a pool of eight models across five benchmarks and nine deferral scores, and found two-model cascades improved test-set accuracy over the best single model by 2.1 to 8.2 percentage points. Allowing more than two models did not improve mean test-set accuracy in 118 of 135 comparisons and added at most 0.43 percentage points the cascade depth study. Gains from depth depended on how well the confidence score separated correct from incorrect answers for the current model compared with later models.
That is a usable decision rule. Each rung past the second buys little on average, and every rung costs latency, test surface and audit complexity. A strong model, one cross-vendor equivalent, one mid model and a human queue is usually enough. The exception is a well-calibrated confidence signal, which is exactly where the study found depth can pay.
The same research stream reframes escalation itself. A cascade is an optimal stopping problem, and its optimal policy compares current estimated error against the cost of continuing rather than a fixed confidence threshold; a fixed threshold matches the optimum only in a degenerate case and otherwise leaves money on the table the cascade regret analysis. In practice, decide whether to try another rung from the remaining budget and the expected value of the next rung, not from a static "always try three models" rule. Under heavy load, a five-second slice on a third model may be worth less than getting the row to a person sooner.
Model-agnostic plumbing earns its keep here. If model IDs are hardcoded in route handlers, changing the ladder is a code change with a deploy cycle. Keep the model ID as runtime configuration behind one boundary and an availability failure becomes a config edit the model-agnostic fallback layer guide. That source documents a case where a provider disabled models for every customer, and teams whose IDs were configuration recovered by changing one value.
Deterministic rungs carry a real advantage too. Rule engines and decision tables are fully deterministic with a row-level trace, while an AI agent rule is probabilistic with caching available, which makes auditing harder the DecisionRules AI agent docs. A deterministic rung is cheap, explainable and never times out, which is why it belongs between the last model and the human queue wherever a rules answer is acceptable.
When a fallback rung gets a rewritten prompt, give it tools to find context rather than stuffing more context in. Production agent teams report that minimal instruction plus context loading beats overprompting the Linear Agent discussion. A tight, narrowly scoped prompt on a smaller model often outperforms the full top-band prompt, which was tuned for another model's strengths.
If you would rather not maintain per-provider SDKs, one API key across text, image, video, audio and embedding models removes a whole class of failover code: Quanta Inference is OpenAI-compatible and prepaid, so each rung becomes a configuration entry.