You’re Paying for the Smartest AI and Getting the Dumbest Results

Be honest. When was the last time you switched effort levels in Claude Code and actually thought about why?

Probably never. You cranked it to max because more is more, right? You picked the biggest model because bigger means smarter. And then you wondered why your output felt like a brilliant intern who didn’t understand the assignment.

Here’s the uncomfortable truth: Most developers treat effort like a volume knob. It’s actually a budget — and you’re burning cash on problems that don’t need it.

I’ve watched this play out dozens of times. A senior engineer fires up Claude with Opus-level power and maximum effort for a task that’s basically a glorified find-and-replace. The model overthinks. It generates 400 lines of defensive code for something that needed 20. Then the same engineer turns around and uses a lightweight model on low effort for a complex architectural refactor — and blames the AI when it produces garbage.

They’ve got it exactly backwards.

Here’s what nobody tells you: effort isn’t about making the model try harder in some vague motivational sense. It’s a resource allocation parameter. It determines how much internal reasoning the model invests before it opens its mouth. Think about how you work. Some tasks you handle on instinct — quick, fluid, almost automatic. Others you need to sit with, sketch out, cross out, start over. Effort is the difference between a model answering from its gut and one that shows its work.

The problem is that most users never match the tool to the cognitive demand of the task. They either overpay — throwing maximum reasoning at something trivial — or they underinvest, expecting a fast intuitive answer to a problem that demands slow deliberation.

And here’s the twist that catches everyone off guard: a weaker model running at high effort can outperform a powerful model running carelessly. Not sometimes. Regularly. Because a model that’s forced to think through a problem step by step, even if it’s not the sharpest tool in the shed, will often arrive at a better answer than a genius that blurted out the first thing that came to mind.

This is the part that should make you anxious. If you’ve been defaulting to the strongest model at moderate effort for everything, you’ve been leaving performance on the table. You’re overpaying on simple tasks and under-delivering on hard ones. The worst of both worlds.

The smartest developers don’t pick the strongest model. They pick the model that matches the shape of the problem.

Simple, well-defined tasks — boilerplate, standard refactors, straightforward bug fixes — don’t need a heavyweight model burning reasoning tokens. A lighter model at lower effort handles these cleanly and cheaply. The cognitive demand is low, so the investment should be low.

But when you’re dealing with ambiguity — a fuzzy spec, a multi-file refactor with hidden dependencies, a problem where you’re not even sure what the right question is — that’s when you need both a powerful model AND high effort. Not one or the other. Both. The model needs the raw capability to hold complexity in its head, and it needs the reasoning budget to actually work through it.

The mistake is treating these as interchangeable. They’re not. Model capability is the ceiling — how high the model can reach. Effort is how hard it tries to get there. A high ceiling with no effort means you never leave the floor. Massive effort with a low ceiling means you’re climbing hard toward a wall you can’t get over.

So here’s the framework that actually works. Before you prompt, ask yourself one question: what’s the cognitive weight of this task? If the answer is light, go fast and cheap. If the answer is heavy, go powerful and deliberate. And if you’re not sure — that uncertainty itself is a signal. Default to more effort, not more model. Reasoning is cheaper than capability, and a model that thinks longer will almost always beat one that simply thinks bigger.

Stop treating effort as an afterthought. Stop assuming the biggest model is always the right answer. The developers who get the most out of Claude Code aren’t the ones with the biggest model budget — they’re the ones who understand that intelligence without direction is just expensive noise.

Match the model to the problem. Match the effort to the complexity. Everything else is just hoping for the best.

FAQ

Q: Isn't it simpler to just always use the strongest model at max effort?

A: Simpler, yes. Smarter, no. You'll burn through tokens on trivial tasks and still get mediocre results on complex ones because you're not actually thinking about what the task demands. Brute force isn't a strategy — it's laziness dressed up as thoroughness.

Q: How do I actually decide which combination to use?

A: Assess cognitive weight. Is the task well-defined with a clear path? Light model, low effort. Is it ambiguous with hidden dependencies? Heavy model, high effort. When unsure, raise effort before raising model tier — reasoning is cheaper than raw capability.

Q: Are you saying weaker models are actually better?

A: Not better — more efficient when matched correctly. A weaker model at high effort can outperform a strong model at low effort on complex tasks, because forced step-by-step reasoning compensates for lower raw capability. The contrarian truth is that most people overinvest in model power and underinvest in reasoning depth.

📎 Source: View Source