Summary
Asking Claude Code to read an entire project before the first question feels thorough, and plenty of people start their sessions that way. The catch is that every question afterward drags that whole read along with it, so scoping the session is one of the habits that keep your Claude token budget under control. I name the file I care about and let Claude Code search before it opens anything. Running the same three questions both ways showed the focused session costing about a third as much. Claude Code carries everything it has already read The follow-up questions cost more than the first one Claude Code keeps a running record of each session called the context window. It holds your messages, every file Claude has opened, and the output of every command it runs. Each time Claude answers or uses a tool, it sends that whole record back to the model, so anything it reads early on rides along with everything that follows. I tested this on Flask, a popular open-source Python web framework, with Sonnet 5 on my Claude Pro plan. A fresh session already sat at 42.9k tokens before I typed anything, mostly the system prompt and tool definitions. I then asked Claude Code to read every Python file in Flask’s source folder and explain one function. It opened 24 files, and the context jumped to 213.2k tokens. The follow-ups made it heavier. A short question about status codes pushed the context to 227.2k tokens, and a third about JSON handling took it to 240.8k, even though neither needed a new file. Claude Code flagged the problem itself, noting that file reads were using 102.3k tokens and suggesting offset and limit for large files. The /usage screen put the whole session at 0.97 to $0.32. It’s the same thinking behind stretching a Claude Pro plan without paying for Max. Two commands show where your limit goes Check them before a session gets heavy I keep two commands close. /context breaks down what’s filling the window, from the system prompt to your messages and file reads. /usage shows the session’s estimated cost next to the plan bars for your five-hour window and your week. This is the routine I follow in every session:
Run /context before the first prompt so you know your starting point. - Name the file and the function in your first prompt, and ask Claude Code to search before it reads.
- Add a deny rule to the project’s settings.json for folders you never need, like docs and tests.
Run
/clear
when you switch tasks, and use/compact
only when you need to keep the history. -
Check
/usage
before a long task to see how much of your five-hour window is left.
Since both sessions used Sonnet 5 on a Claude Pro plan and Flask’s open-source code. Your numbers will vary with the model, the size of your project, and your setup.
My usage limit lasts almost all day now
The limit stayed the same, but the context shrank
Nothing about my plan changed between those two sessions. The questions were the same, and so were the answers. What changed was how much Claude Code had to carry into every reply, and that alone cut the cost to about a third.
The same thinking works beyond source code. Test output and log files can bloat a session just as fast, so I point Claude at the exact failure instead of the full dump. If you want to see where the rest of your limit goes, tracking your Claude tokens for a week is a good place to start.
Claude Code
- OS
- macOS, Windows, and Linux
- Developer(s)
- Anthropic
- Price model
- Subscription and pay-as-you-go API Claude Code is an agentic coding tool developed by Anthropic that uses multiple AI models from the developer.