There is a moment every fast-growing FTTH ISP recognises. The traffic graph that was a comfortable upward curve last quarter starts to flatten near the ceiling. By the time customer complaints arrive, the saturation is already three weeks old. The procurement cycle for the upgrade is six weeks. The maths is unforgiving.
Capacity planning is just early procurement
When operators say they want "AI capacity planning," what they actually want is to convert a slow, technical signal — utilisation creeping above 70% on a backbone interface — into a fast, business signal — "buy 10 Gbps of upstream by week 6 of Q3." The hard problem is not forecasting traffic, which is well understood. The hard problem is closing the loop between forecast and procurement before the user notices.
A simple, defensible model
You do not need a deep neural network to forecast bandwidth on the timescales that matter for procurement. A seasonal-decomposition model (STL or Prophet-style) plus a weekly peak rule works extraordinarily well on the 4–12 week horizon. The model produces three numbers we care about: the date the link will hit 80% peak utilisation, the date it will hit 95%, and the expected weekly growth slope.
- Train on at least 90 days of 1-minute counters from each link or PON port.
- Decompose: trend, weekly seasonality, daily seasonality, residuals.
- Forecast peak by week (95th-percentile of forecast distribution).
- Map forecast peak to known thresholds (80%, 90%, 95%) and emit saturation dates.
- Re-train weekly. Drift kills these models faster than anyone expects.
Where it gets interesting: cohort-based forecasting
The trickier part of forecasting is when growth is not organic — when sales is about to onboard a 2,000-subscriber building in week 4. That growth does not show up in historical traffic. It shows up in the CRM. A capacity planner that only sees the NMS will miss the cliff. A capacity planner connected to the CRM and the order book sees it weeks in advance.
The integration that pays for itself
The single best feature you can add to a capacity planner is a feed from your sales pipeline: planned activations per week per geography. We have seen forecast accuracy go from ±35% to ±9% just by enabling that one signal.
The cost of being late
It is worth quantifying the alternative. The "wait for complaints" pattern costs in three ways: churn (subscribers leave a saturated link within 2–3 months), reputation (negative NPS spreads), and expensive emergency procurement (paying lit-up premium for a port you could have ordered at a discount with notice). We model the carrying cost of saturation at roughly $4–9 per affected subscriber per month, plus a 3–5% churn premium.
90+ days
Typical procurement lead time for backbone upgrade
$4–9
Carrying cost per affected subscriber per month of saturation
+3–5%
Churn uplift in a saturated cohort
What good looks like
- 1A dashboard that shows every uplink, PON port and backbone segment with its predicted saturation date.
- 2A weekly summary auto-delivered to the CTO and finance — what is going to need money in 60–90 days.
- 3Direct integration with the CRM/order book so planned activations affect the curve before they go live.
- 4Auto-generated procurement tickets for the ports that cross thresholds, with options pre-quoted from upstream providers.
