Which model leaves you with the least cleanup?

Hey, thanks for bringing this up. Comparing models by how much of the diff actually stays in the end is a good idea. We don’t really have one consistent leader. A lot changes from release to release, and setup usually matters more than the model choice itself. @uknowhow already gave a good foundation above. I’ll add a couple of things:

  • Plan mode for bug fixes and refactors. The agent first shows a plan, including which files it will touch and what it plans to reuse. If the plan introduces a new helper next to one that already exists, you can catch that before any edits start. It’s cheaper to fix the plan than to clean up the diff later. More here: Plan Mode | Cursor Docs
  • A “reuse first” rule in Project Rules. That way you don’t need to repeat it in every prompt: Rules | Cursor Docs. Just keep in mind that rules are a strong hint, not a guarantee, so reviewing the diff still matters.
  • If you want to compare models in a repeatable way, you can use the SDK to run the same set of tasks with the same prompts and rules. The only thing that changes is the model, and you evaluate the result with your own tests: Run Cursor in your evals | Cursor Documentation. This fits well with the metrics you mentioned, like what stayed, what got removed, and how many follow-up prompts were needed.

It’d be great to see the numbers if someone puts together that kind of comparison on real tasks.