Technical
Choosing the Right Claude Model for the Job
Claude has three model tiers and using them wrong is expensive in both time and tokens. I used to default to the best model for everything. That is the most expensive lesson I have unlearned this year. Here is how I actually route work now.
Haiku: The Utility Knife
Haiku is fast and cheap. It handles simple classification, short rewrites, pulling structured data out of unstructured text, and any high-volume task where responses must be near-instant. I use it for tagging articles with categories, extracting fields from form submissions, and basic summarization.
Do not use Haiku for multi-step reasoning. It will give you a confident answer that is subtly wrong. That is the failure mode of a model punching above its weight class.
Sonnet: The Workhorse
Sonnet is my default for coding tasks, most writing, and general-purpose reasoning. It is smart enough for real work and fast enough for interactive use. When I sit down with Claude Code, Sonnet is the model unless something specifically demands more.
Sonnet handles 90 percent of my agent work. Architecture decisions. Code generation. Debugging. The value-to-cost ratio is excellent at this tier.
Opus: The Specialist
Opus is for the hard problems. Complex architecture review, nuanced writing that requires strong judgment, difficult debugging across many files, security analysis. When I need the best, I reach for Opus.
I do not default to Opus because it is slower and costs more. The cost matters. At my token volumes, defaulting to Opus everywhere would quadruple my API bill.
# A simple router I use in production
def pick_model(task: str, complexity: int) -> str:
if task == 'classify' or task == 'extract':
return 'claude-haiku-4-5'
if complexity >= 8: # hard architectural or security work
return 'claude-opus-4-7'
return 'claude-sonnet-4-7' # default workhorseThe Mistake to Avoid
Building everything on Opus because it sounds safest. It is not. It is slower, more expensive, and often no better for tasks Sonnet handles well. Model selection is a tool like any other: you get the best results by matching the tool to the job.
See the Claude models documentation for the capability comparisons. The routing rules above evolve as models improve, but the underlying discipline of matching tier to task does not change.
RELATED READING
The Consulting Shift I Am Making In Year Two
After a year of writing and building, my consulting practice is changing shape. Shorter engagements. Sharper outcomes.
ReadThe Frontend Shift: Shipping Less JavaScript In Year Two
A year ago I reached for Next.js for everything. This year I often reach for nothing.
ReadThe Serverless Lesson I Would Write On A Sticky Note
After a year of shipping serverless projects, one rule explains most of the wins and all of the losses.
Read