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

When does Day Zero
arrive — and under what?

Today the combined system sits at 47.3%. Cape Town uses around 859 ML a day. 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%APR 26JULOCTJAN 27APRTODAY · 47%
What this means

Day Zero is possible — but not the likely outcome.

The line on the chart is the typical projection: it bottoms out at 26%, above the 13.5% Day Zero line. But the model also runs 1,000 different rainfall futures, and roughly 1 in 7 of them (14%) does cross Day Zero — usually around May 2027. The shaded band on the chart shows that range of possibilities.

Monthly storage · median path
May 26
44%
Jun
49%
Jul
57%
Aug
64%
Sep
63%
Oct
59%
Nov
56%
Dec
51%
Jan 27
46%
Feb
39%
Mar
33%
Apr
30%
May
26%
Jun
31%
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.