Capacity planning calculator narrative
A step-by-step recipe for building a capacity planning calculator that tells a clear story about your infrastructure limits.
Ingredients
- Historical throughput data (requests/sec, 30-day window)
- Per-node capacity ceiling (measured via load test)
- Growth rate assumption (weekly or monthly)
- Headroom target percentage (default 30%)
- Lead time for provisioning new nodes (days)
Step 1 — Baseline
Pull your peak daily throughput from the last 30 days. Use the 95th percentile, not the absolute max, to filter out one-off spikes. Call this P95_rps.
Step 2 — Node capacity
Run a controlled load test against a single production-spec node. Record the throughput where p99 latency crosses your SLO. That number is node_cap.
Step 3 — Current footprint
Divide baseline by per-node capacity and round up:
nodes_now = ceil(P95_rps / node_cap)
Step 4 — Forecast
Project forward by your provisioning lead time plus one week. Apply your growth rate compound:
future_rps = P95_rps * (1 + growth_rate)^(lead_time_weeks + 1) nodes_future = ceil(future_rps / node_cap)
Step 5 — Headroom check
Compare future node count against current. If the gap is less than your headroom target, trigger a provisioning ticket:
headroom_pct = (nodes_future - nodes_now) / nodes_now * 100 if headroom_pct < target_headroom: alert
Narrative output
The calculator should produce a single sentence summary: “At current growth, you will exhaust headroom in X weeks. Provision Y additional nodes by YYYY-MM-DD to maintain >30% buffer.” This turns raw numbers into an actionable story for on-call and leadership.
Edge cases
- Zero growth: still revalidate headroom monthly.
- Negative growth: clamp to zero, do not de-provision automatically.
- Missing data: fall back to last known good baseline with a stale-data warning.