Three reference PR shapes you can map your work to
Aider's token consumption per PR depends on three things: how much of your codebase Aider reads (context), how much code it generates (output), and how many iterations the conversation runs before you accept. The three shapes below cover roughly 90% of real-world Aider PRs.
**Small fix** (~1,000 input + 500 output tokens). A single-file change: typo, off-by-one, null check, formatter fix. Aider reads the affected file (`/add file.py`), you describe the fix in 1-2 sentences, Aider generates a 5-30 line patch, you accept. Often resolved in one conversation turn.
**Medium feature** (~10,000 input + 3,000 output tokens). A small feature touching 2-4 files: a new API endpoint, a UI component, a test suite for an existing module. Aider reads 2-4 files (~5-15k tokens of context), you describe the feature in a paragraph, Aider generates ~80-200 lines of code across the files, you iterate 1-3 times on minor tweaks. Total token consumption includes the multi-turn cost (Aider re-sends the conversation history on each turn).
**Large refactor** (~50,000 input + 15,000 output tokens). A multi-file refactor: rename a core abstraction across 10+ files, extract a service, migrate an API contract. Aider reads 10-20 files (30-60k tokens of context), you describe the refactor in a structured spec, Aider generates 300-800 lines of changes, you iterate 3-7 times catching edge cases. Multi-turn cost is significant — by turn 5, conversation history alone might be 30k tokens.
**Calibration tip:** Aider prints token consumption after each turn (and total session cost if you run with `--cost`). After your first 20 PRs you'll have personal calibration on which shape your typical work matches. Use the population averages as priors until then.