If you’re paying attention to your Claude usage, you’ve probably noticed something: your token bills don’t scale linearly with your productivity. Sometimes a conversation that feels quick costs three times more than expected. Other conversations that took hours feel suspiciously cheap.
The difference isn’t randomness. It’s a mental model problem.
The Problem With “Just Ask”
Most people treat Claude like a search engine with a long context window. You dump information, ask a question, wait for an answer. If you don’t like it, you ask again. Iterate until satisfied.
This approach mirrors how many people use general search engines - but Claude’s cost structure is fundamentally different from free search. Understanding how tokens are priced changes the mental model entirely.
This works. It’s just expensive in ways that aren’t obvious until you run the numbers.
When you ask Claude “Can you review this code?” and Claude reads 5,000 lines of code, that cost is fixed - you’re paying for every single token regardless of whether you only needed feedback on 300 lines. When you say “Actually, can you focus on the authentication part?” in a follow-up message, Claude re-reads all 5,000 lines again, plus your original question, plus its own response. You just paid double.
Each follow-up message compounds the cost. A five-message conversation with back-and-forth refinement can cost 2-3x more than a single well-structured request that gets it right the first time.
The mental shift: every message you send has a linear cost in tokens. More conversations don’t cost 10% more. They cost 100% more because the context window compounds.
Three Principles That Actually Matter
1. Compression Is Your Leverage
The gap between “I have a folder of code” and “Here are the three specific files that matter” can be a 10x difference in token cost.
This is why the infographics about “don’t dump your whole folder” work. But the principle goes deeper: compression at any stage of the conversation pays dividends.
A 2,000-word document compressed to a 200-word summary that you paste alongside the original saves tokens. But it also changes Claude’s behavior - it’s now working from your interpretation of what matters, which is often better than leaving it to extract the signal on its own.
Before you send anything to Claude, ask: “Can I express this more concisely?” If you can cut it in half without losing meaning, you should. Not just for the cost - for the quality. Compressed prompts get better answers because there’s less noise.
2. Batch Like You Mean It
A common mistake: people batch because they’ve read that batching is efficient, then they batch three unrelated tasks into one message. That’s not batching, that’s just giving Claude multiple jobs at once.
Real batching is: I have work that shares context. The setup cost of explaining what I need is 300 tokens. If I send one task, I pay 300 tokens of context per task. If I send ten related tasks that all need the same context, I pay 300 tokens spread across ten jobs.
The trick is recognizing which tasks share context. “Review these five function signatures and suggest more consistent naming” is a batched task. “Review this function, write test cases, then refactor for performance” is three separate tasks that shouldn’t be in one message.
When you batch correctly, you don’t just save tokens. You get more coherent answers because Claude understands the relationships between the tasks.
3. Build Systems, Don’t Solve Problems
The difference between “powerful Claude users” and “everyone else” is this: powerful users spend 10 minutes setting up a system (a template, a project, a reusable prompt) so they can save 5 minutes on each of 20 future tasks.
Everyone else solves the same problem 20 times, paying the context cost each time.
If you have a code review checklist you use every week, that’s a system worth building. Put it in your Claude preferences. Put it in a project file that Claude loads automatically. Put it in a template you paste at the start of each conversation. That costs tokens once. Using it costs tokens never (or very few).
The economics change dramatically when you shift from “solve this problem” to “build the scaffolding so this problem solves itself next time.”
The Real Cost You’re Not Measuring
Here’s what most people miss: token cost is not the bottleneck. Your time is.
A poorly structured prompt that costs 2x the tokens but saves you 30 minutes of back-and-forth is always the right trade. A conversation that costs 50% more but gets it right the first time is worth it.
But most inefficient Claude usage doesn’t even save time. It just feels interactive and exploratory, which tricks your brain into thinking it’s more efficient than it is.
The honest measure is: how much would I pay to get this answer in one shot instead of five messages? If the answer is “more than the token difference,” you’re already being inefficient.
Practical Starting Points
If you’re going to change one thing, make it this: Before you send any message longer than 500 characters, rewrite it once for clarity. Can you say the same thing in fewer words? Can you structure it so Claude understands immediately what you need?
This follows the principles outlined in Anthropic’s documentation on effective prompting, which emphasizes clarity and specificity as the foundation of working with Claude.
Second thing: Default to one message per context. Not one message per question - one message per logical unit of context. If you’re asking three questions about the same codebase, ask all three. If you’re asking about three different codebases, use three different conversations.
Third thing: Keep a running list of your repeated tasks. Every time you find yourself asking Claude the same kind of question twice, that’s a system you should build. This compounds faster than you’d think.
The token efficiency mindset isn’t about being stingy. It’s about recognizing that every token is an opportunity cost - not just money, but the opportunity to use that token on something else, something harder, something that actually matters.
Once you see it that way, the rest follows naturally.