Dev & engineering · free calculator
Code review cycle time cost
Quantify the hidden tax of slow code review — context-switch drag, DORA benchmarks, annual recoverable productivity.
Cycle time per PR
1.4 days
33 hrs · Elite teams: < 24 hrs
Annual cost of review drag
$942,101
$18,117/week · 5.0 PRs/eng/wk
Show the work
- Author context-switch / PR0.8 hrs
- Author lost focus / PR4.5 hrs
- Weekly author cost$18,117
- Potential cycle reduction9 hrs
- Annual savings if < 24hr cycle$353,288
Code review cycle time — the hidden productivity tax
Every engineering team tracks velocity, but very few track code review cycle time — even though it's one of the largest drags on actual throughput. A 3-day PR cycle means every feature spends 3 days in limbo, the author context-switches 2-5 times, and downstream work gets blocked. This calculator quantifies that cost so you can justify fixing it.
What "cycle time" means
PR cycle time = hours from open to merge. Components:
- Time to first review: PR opens, waits for a reviewer to look. Biggest single component in most teams (50-70% of cycle).
- Review rounds × time per round: Reviewer comments → author fixes → re-review. Each round usually takes 4-24 hours depending on timezone overlap.
- Approval to merge: CI runs, author or maintainer merges. Usually fast if CI is healthy.
DORA benchmarks
The DORA research program (now part of Google Cloud) measures this across 30k+ teams:
- Elite: < 24 hours open-to-merge. First review < 4 hrs. 1-2 rounds typical.
- High: 1-2 days. First review < 1 business day. 2-3 rounds common.
- Medium: 2-7 days. First review 1-2 days. Context frequently lost between rounds.
- Low: > 7 days. PRs go stale, rebase conflicts mount, authors abandon context entirely.
Teams that improve from Low → Elite typically ship 30-50% more feature work without any velocity changes — just by removing review drag.
The real cost: context switching
The hidden cost of slow review isn't wall-clock time — it's the author's mental re-loading. UC Irvine research (Mark, Gonzalez, Harris) measures full task re-engagement after interruption at ~23 minutes. Every review round is an interruption:
- Author opens new PR → switches to next task → review comment arrives → stops next task → re-loads old PR → fixes comments → switches back to next task
- 2 switches × 23 min = 46 min per round
- 3 rounds × 46 min = ~138 min per PR just in context-switch waste
- 40 PRs/week × 138 min = 92 hours/week of pure switching drag for an 8-person team
That's 23% of a developer's week lost to review friction. At $86/hour loaded cost, 40 PR/week team, that's ~$200k/year in recoverable productivity.
Why PRs sit
Common reasons PRs wait for review:
- No SLA: No team agreement on how fast review should happen. Reviewers treat it as background work.
- PR too big: Reviewer sees 1,200 lines of diff, puts it off for tomorrow. Tomorrow becomes next week.
- Unclear context: PR has no description, no linked ticket. Reviewer needs to ping the author to understand. Slack tag doesn't get answered.
- Too many reviewers required: Waiting on 3 approvals means waiting on the slowest reviewer. Make optional reviewers truly optional.
- Timezone mismatch: PR opens EU afternoon, reviewer wakes up in US, 8-hour delay built-in.
- Reviewer queue overflow: Senior engineers get 20+ review requests, triage to favorites, rest rot.
Proven interventions
Ranked by impact:
- Smaller PRs (biggest lever): Average PR size in elite teams: 100-300 lines. In low-performing teams: 1000+. Force small PRs via: stacked PRs, feature flags, trunk-based development.
- Review SLA: Team commits to first review within N hours (4 hrs for elite, 24 hrs for most). Enforced by reminders bots (Pullreminders, Reviewable, CodeApprove).
- Review time budget: Every engineer blocks 30-60 min/day for review. Same time, daily. Treats review as first-class work.
- Single required reviewer: Default to 1 required. Add more only for critical infrastructure, security, or architecture decisions.
- Comment severity: nit / suggestion / question / blocking. Authors act on priority; reviewers save 'blocking' for real blockers.
- Async-first PR templates: Clear description, linked ticket, screenshots, "how to test" section. Reviewer doesn't need author online.
- Automate the nits: Formatters, linters, type checks, spell checkers catch 80% of nit comments before humans see them.
Review load balancing
Avoid putting entire review load on senior engineers:
- Round-robin reviewer assignment: CODEOWNERS + auto-assign. Spreads load evenly.
- Pair review: Junior reviews first, senior checks junior's review. Double throughput; teaches juniors.
- Review budget = build budget: Track reviews completed per person; balance so no one person reviews > 2x team average.
- Reviewer office hours: Senior engineers do synchronous review for 1-2 hours/day. Authors come to them; reduces async delay.
What not to do
- Required-N-reviewers rules: Scaling review requirements linearly with codebase size just creates bottlenecks. Use CODEOWNERS instead.
- "Ship it" cultures: Approving without actually reading creates bug rewards. No better than no review.
- Treating review as teaching time: Useful occasionally, but slow. Teaching belongs in 1:1s, code walkthroughs, pairing sessions — not in blocking review comments.
- Personality-dependent reviewer choice: "I only get Alice to review" creates bus factor and reviewer burnout. Spread it.
Measuring progress
Track 4 metrics:
- Time to first review: Median in hours. Target: < 4 hours business time.
- Open-to-merge time: Median in hours. Target: < 24 hours.
- Rounds per PR: Mean. Target: < 2.
- PR size: Lines changed median. Target: < 400.
All 4 available in GitHub + a dashboard (LinearB, Waydev, Sleuth, or custom SQL on GitHub events). Many teams improve 40-60% in 90 days just by making these numbers visible.
Related calculators
Keep the math moving
Dev & engineering
Cloud hosting cost estimator
AWS, GCP, Azure, DO, Fly — monthly cost per MAU by compute, bandwidth, DB, storage.
Dev & engineering
LLM API cost calculator
Claude, GPT-4o, Gemini, DeepSeek — cost per call, daily/monthly/annual with prompt caching.
Dev & engineering
Freelance dev hourly rate
What to charge per hour based on target salary + benefits + overhead + utilization + profit margin.
Dev & engineering
Server capacity planning
Servers needed for peak RPS with CPU/RAM math, utilization targets, and N+1 / 2N redundancy.
Dev & engineering
Database cost calculator
RDS, Aurora Serverless, PlanetScale, Supabase, Neon, Atlas — monthly DB cost with storage + reads + writes.
Dev & engineering
Load balancer breakeven
Self-hosted HAProxy vs managed AWS ALB / GCP LB / Cloudflare — where the crossover point actually is.