How to reduce tech debt: three models that work
Prioritise what to fix, allocate time to fix it, prevent the next layer from forming. Three pages of cheat sheet for the leader who needs to start on Monday.
Step 01 / Prioritise
Three priority tiers
Not all debt is created equal. Sort yours into three tiers in 30 seconds.
Debt that costs hours of pain every single working day. The 45-minute build. The flaky test that fails 1 in 4 runs. The deploy that requires a runbook. Stop the bleeding first.
Debt in code that changes weekly. Use churn-times-complexity to find it. These pay back fastest because every refactor saves friction every sprint thereafter.
Ugly code in modules nobody touches. Resist the urge. Time spent here is time not spent on Tier 1.
Step 02 / Allocate
Three sprint allocation models
Pick the one that fits your team's shape and political reality. Mixing models within a quarter erodes the discipline.
Model
The 20% Rule
Reserve 20% of every sprint
Best for: Steady-state teams with healthy velocity. Shopify and Atlassian's published default.
Watch out: Erodes when delivery pressure spikes. Needs a leader who protects it.
Model
Dedicated Sprints
1 full sprint per quarter
Best for: Concentrated debt in specific modules. Easier to defend politically.
Watch out: Episodic by nature. McKinsey 2023 found systematic allocation outperforms.
Model
Debt Squad
Permanent 1-2 engineer rotation
Best for: Teams of 8+ with critical debt. Specialised focus.
Watch out: Squad becomes the dumping ground. Rotate to prevent burnout.
Step 03 / Execute
Refactoring techniques quick reference
Pick the technique that fits the shape of the debt. Avoid the big-bang rewrite unless the codebase is genuinely irrecoverable.
Step 04 / Prevent
Stop the next layer forming
Six-item checklist. Adopt all six and your annual accrual rate drops from 18% to single digits.
- Tag debt at creation. Every shortcut links to a cleanup ticket in the backlog.
- Update Definition of Done. Add “no new debt without a tracked cleanup”.
- Architecture review for large features. Catch design debt before it ships.
- Quarterly debt budget. Allocate explicitly in OKR planning, not as residual.
- Automated quality gates. CI fails on regression; SonarQube ratchet up.
- Quarterly debt retrospectives. Track the trend; celebrate paydown.
For the full strategy selector quiz, comparison matrix, and detailed technique guides: techdebtcalculator.com/payoff.