## Definition A **reasoning budget** is the maximum number of internal "thinking" tokens an LLM is allowed to spend *before* producing its visible answer. It is the mechanism behind [[Extended Thinking]] and the trigger words `think`, `think hard`, `think harder`, and `ultrathink` in Claude Code. ## Budget Tiers (Claude Code, approx.) | Trigger | Approx. internal tokens | | -------------- | ----------------------- | | *(none)* | minimal | | `think` | ~4,000 | | `think hard` | ~10,000 | | `think harder` | ~32,000 | | `ultrathink` | up to ~64,000 | ## Heuristic — Spend Where You Can't Un-Spend a Mistake Use a higher budget when: - The action is hard to reverse (migrations, schema, public APIs). - The decision constrains future work (framework, dependency). - The model has to *weigh trade-offs*, not execute a plan. Skip the budget when: - Renaming one variable in one file. - Writing a regex you already know the shape of. - Translating code line-by-line. ## Cost Thinking tokens bill as **output tokens**. A 20k-token ultrathink session adds roughly $0.30 in thinking *before* the response itself. ## Failure Modes - *Over-thinking.* On simple tasks the model second-guesses correct work and rewrites it worse. - *Under-feeding.* More thinking does not manufacture missing information; feed the file first. ## Related - [[Extended Thinking]] - [[Model Selection Strategy]] - [[Token]] - [[Specialized Agent]]