Scenario predictor · what if rainfall comes in low? what if we use more?

When does Day Zero
arrive — and under what?

As of 18 September 2026 the combined system sits at 76.3%. Cape Town's most recent reported daily use is around 859 ML. Pick a rainfall scenario, drag the consumption fader, and pin a configuration to compare two futures on the same chart.

The shaded band shows the central 50% of 1,000 simulated rainfall outcomes; the solid line is the median. Day Zero arrives when combined storage crosses 13.5% — the City's 2018 operational trigger. Read the methodology for what data feeds the model and what its limits are.

Rainfall scenario
Daily consumption850ML/day
600 · drought-era1200 · unrestricted
about today's usage
Projected combined storageMedian · 25–75 band · 1,000 runs
100%75%50%25%0%SEP 26DECMARJUNSEPTODAY · 76%
What this means

The system stays above 39% through next summer.

At 850 ML/day, dams draw down through autumn but the winter rains catch up before things get tight.

Monthly storage · median path
Oct 26
73%
Nov
69%
Dec
64%
Jan 27
59%
Feb
52%
Mar
46%
Apr
43%
May
39%
Jun
44%
Jul
53%
Aug
59%
Sep
59%
Oct
55%
Nov
52%
What this isn't
Not a forecast

The City of Cape Town's Bulk Water Branch and the Department of Water and Sanitation publish official forecasts. This page is a visualisation tool that explores trade-offs, not a prediction of what will happen.

Not high-resolution

The model runs at monthly granularity using 4 year columns of history aggregated with 148 weekly storage readings stitched together from City dashboard archives 2017–2026. Real hydrology runs at daily resolution and accounts for evaporation, transfers and inter-basin flows that are not modelled here.

Not a single number

Day Zero is not deterministic. Even at the same starting point, different winter rainfall outcomes produce different Day Zero dates — that's why the headline shows a range, not a single date. The uncertainty is the message.

Open data

All inputs to the model are exposed at /api/scenario.json so anyone can rebuild this independently. Documentation at /predictor/api/.