Model Routing for Multi-Agent Workflows: The Four Positions Where a Stronger Model Pays
Model routing for multi-agent workflows: new research shows the same model swap helps or hurts depending on placement. Four positions where tier pays.
A team I work with had a quality problem in a multi-step agent workflow and fixed it the obvious way. They moved every call to the frontier model. Quality improved. So did the bill, by a multiple nobody wanted to defend in a business review. When they clawed it back by demoting the steps that looked cheap, the quality gain disappeared in a pattern the spreadsheet could not explain. To them, model routing for multi-agent workflows was one dropdown: pick a tier, apply it everywhere, tune later.
A paper posted this month says that dropdown is the wrong shape. Model value in a multi-call system is not a property of the model. It is a property of the position the model occupies.
Why does upgrading every call stop working?
Beyond Tier Labels studies model substitution inside solve-merge-verify workflows: 8 to 64 solve calls, four three-tier model ladders. The authors separate two questions that teams normally collapse into one. Whether to substitute a stronger model is one decision. Where to put it is a different decision, and it is the one that carries the value.
The headline number is a reversal, not an improvement. In a mixed Qwen/GPT ladder, going all-strong cut RMSE from 4.818 to 1.538. In a Qwen-only ladder, the ordering reversed: the same directional swap, applied to a different deployment, produced the opposite ranking. Not a smaller gain. The opposite sign.
That single result invalidates the way most enterprise teams reason about this. A tier label is a claim about a model in isolation. Every call in an agent workflow is a dependent computation, conditioned on what the previous call produced and on what the next call has to do with the output. A step that feeds a verifier tolerates noise the verifier will catch. A step that feeds a plan that nothing re-reads does not.
The authors' recommended sequence is worth stealing verbatim: calibrate the action, resolve its role-conditioned effect, then optimize placement. Three steps, and enterprise teams routinely skip to the third with an assumption baked into the first two.
What is the research converging on?
Three more papers from the same window point the same direction, which is the part that makes this worth writing about.
MoRSE conditions specialization on the (role, subtask) pair, using a mixture of LoRA experts over a shared model with a prototype-based semantic router. The interesting mechanism is not the experts. It is the two-layer credit assignment, which exists specifically to separate expert quality from routing quality. The authors had to build that separation because the two are confounded by default, and if you cannot tell them apart you cannot improve either.
An empirical study of coordination mode in from-scratch multi-agent coding treats coordination strategy as a first-class design variable rather than an implementation detail, and finds it materially moves outcomes. Same models, different coordination, different results.
Not Worth Another Token attacks the other end: estimating marginal value so a deep research agent stops buying tokens that no longer earn their cost. The stop decision is a routing decision with the destination set to nothing.
Four independent groups, four different problems, one shared finding: the call graph is the object of study, and the model is a parameter inside it.
The Four Positions
Here is how I would operationalize that on an enterprise workflow. Four positions in an agent call graph behave differently enough that they deserve separate model decisions. Every other call is a body call and should run on the cheapest thing that clears your bar.
1. Decompose. The call that turns a goal into a plan. Errors here are unrecoverable because nothing downstream re-reads the goal. A bad decomposition produces subtasks that are each executed perfectly and collectively answer the wrong question. This position is almost always underspent, because it is one call out of sixty and looks statistically irrelevant.
2. Route. The call that decides which agent, tool, or specialist handles a subtask. MoRSE's credit-assignment split is the argument for treating this separately: routing failures look exactly like capability failures in your traces, and teams respond by upgrading the executor. That fixes nothing and costs everything, because the work was sent to the wrong place before the executor ever saw it.
3. Verify. The call that checks the work. Verification tolerates a weaker model less than people assume, because a verifier that misses a class of errors is worse than no verifier: it converts an open failure into a signed-off one. This is also the position where a small trained checker can beat a large general one, which is a different decision from the tier ladder entirely.
4. Stop. The call that decides whether another step is worth buying. Most workflows have no such call. They have a step limit, which is a timeout wearing a budget costume. A real stop decision reads the marginal value of continuing, and it is the only position where the correct model is sometimes no model at all, just a threshold.
The Swap Test
The test that makes this actionable: swap a stronger model into exactly one position, hold every other position fixed, and measure.
If you cannot name which position you upgraded, you are not routing. You are spending. And the reversal result says spending uniformly is not even reliably safe, because the same substitution that helps one deployment can invert the ordering in another.
The failure mode this catches is common and expensive. A team reports that "the frontier model improved the agent." What actually happened is that the frontier model improved one position, and the other fifty-nine calls are now paying frontier prices to deliver the result a cheap model was already delivering. Nobody can prove that, because the swap was global and the attribution is gone.
What I would actually do
Two moves, both cheap.
Label your call graph before you tune it. Go through one production workflow and tag every call as decompose, route, verify, stop, or body. Most teams cannot do this from their traces today, which is itself the finding. If your observability cannot answer "which position was this call," you do not have the data to route on and every model decision you make is a guess with a receipt.
Run one Swap Test on the decompose position. It is one call, it is the cheapest possible upgrade, and it is the position most likely to be underspent. If it moves your end-to-end metric, you have just bought most of the benefit of an all-strong workflow for roughly one-sixtieth of the marginal cost. If it does not, you have learned something real and you spent almost nothing learning it.
The broader point is the one I keep landing on with managed runtimes and agent harnesses: the leverage in enterprise agent systems has moved off the model and into the structure around it. Model routing is one more instance. The model tier is not the decision. The position is.
I work with Fortune-level enterprise clients architecting and building agentic frameworks, and the single most common finding in a cost review is a workflow where the expensive model is everywhere and nobody can say which call needed it.
Get the weekly breakdown on enterprise agentic architecture, decisioning, and what actually survives production: subscribe to the newsletter.
More on this pillar: Multi-Agent Orchestration Architecture.