Cursor, the AI coding assistant, now decides on its own which language model answers each request, rather than leaving that choice to the developer typing it in. The system making that call, called Cursor Router, sets both how good the answer is and how much Cursor spends generating it, on every single turn, across its entire user base. In a post on the company’s engineering blog, Cursor engineers Connor O’Keefe and Yuri Volkov described how the system has changed since it launched on July 22.

The numbers Cursor cites are notable. Auto Intelligence, one of the router’s two modes, now matches the satisfaction levels of Cursor’s top-tier model, Fable, while running at 68 percent lower cost, an 18-point improvement since launch. Auto Balance, the cheaper mode, now beats Opus 4.8 on user satisfaction at 41 percent lower cost. Cursor did not cite independent benchmark results for either figure. Both come from its own production data.

The business logic underneath is straightforward, even though Cursor’s post does not frame it this way. Every AI coding tool faces the same cost structure: frontier models charge far more per token than smaller ones, and a large share of what a developer asks for, like committing code or running a shell command, does not need frontier reasoning to get right. The gap between a cheap model’s cost and a frontier model’s cost on the same request is close to the entire margin Cursor earns on that request. A router that quietly downgrades routine work to a cheaper model, without the user noticing a drop in quality, is a way of protecting that margin at scale.

Mechanically, Cursor splits the decision into two steps. A component called Compass first scores how likely a developer is to accept a given response without correcting it, using a 0-to-1 likelihood scale. Cursor trained that score by watching real usage: a developer moving on to a new task counts as success, while a developer correcting or retrying the agent counts as failure. Requests scoring below a set threshold stay on a cheap model. In testing, the requests Compass flagged with the highest odds of success did satisfy users 96 percent of the time, versus 71 percent for the ones it flagged as weakest.

Requests that clear that bar get sorted a second time, by what kind of coding work they represent (which part of the codebase, what type of task, and traits like whether an edit is small and contained or touches a lot of interface work). Cursor then checks, from historical usage rather than published leaderboards, which frontier model has actually performed best on that combination. Its findings show real specialization: Grok is cheap and effective for routine jobs like git commands, Sol is strong on planning and reading unfamiliar code, Opus does well on backend and performance work, and Fable is reserved for debugging and visual work where its higher price pays off. A model only gets picked over the cheap default when its edge is large enough, roughly 75 percent confidence the gain is genuine, and the final choice still has to fit inside a cost budget that differs between Auto Balance and Auto Intelligence.

That last detail is worth sitting with. The router is not simply picking the best model for the job. It is picking the best model that fits a budget Cursor sets, which means the company, not the developer, decides which model actually reads and edits a given piece of code. That is a reasonable tradeoff for routine work, and Cursor’s live-traffic testing methodology is more rigorous than relying on static benchmarks. But for code a developer considers sensitive or high-stakes, the router’s economics and the developer’s priorities will not always point the same direction. Teams running Cursor on proprietary or security-critical code should check whether their plan lets them pin a specific model for that work, rather than trusting the router’s cost-driven default.

Published by Cursor.