About this site · a personal project

A clearer view
of Cape Town's water.

I'm a Capetonian who watched the dams during 2018 and never quite stopped. This site is the result: a daily read of the six reservoirs that supply the city, drawn from the same public data DWS, the City of Cape Town, Open-Meteo and ESA already publish for everyone.

The numbers are not hidden. DWS releases a weekly state-of-dams PDF. The City runs a consumption dashboard. ESA's Sentinel-2 satellites map every catchment from orbit. Open-Meteo forecasts the rainfall. They're just scattered, technical, and a step or two removed from the question most Capetonians actually have: is the system getting better or worse this week, and what does that mean for summer? This site closes that gap.

Theewaterskloof Dam from above, captured by Sentinel-2 on 24 April 2026
Theewaterskloof from orbit · 24 April 2026 ↗ Copernicus Sentinel-2 · ESA open data
What you'll find here
Why this exists
A hobby

I'm not a hydrologist or a journalist. I'm a Capetonian who lived through 2018, likes building things with data, and got curious about whether the official numbers could be read more clearly than they tend to be. The site grows when the curiosity does.

A clearer signal

The combined system is at 73.6% right now. On its own, that figure tells you very little. Where does it sit against last year? Against the same week in 2018? Against what we'd need going into summer? Most of what this site does is paste those comparisons next to the headline number.

Honest about limits

Nothing here is real-time and nothing is invented. Every figure traces back to a primary source. The data has limits — DWS publishes weekly, the City updates its dashboard once a week, the satellite frames refresh monthly, the rainfall forecast looks seven days ahead — and the site says so where it matters. The methodology page documents the chain of custody from PDF to pixel.

Built with

Open data, open tools, no ads. The only third-party script is a pageview-only Google Analytics tag so I can see whether anyone's reading this. Otherwise the site is a static build that reads JSON files committed by a daily scraper — no servers, no databases, just published numbers.

  • · Astro · static site framework
  • · React islands · only where interactivity needs them
  • · Tailwind · styling
  • · Zod · runtime schema validation on every JSON input
  • · DWS · CCT · Open-Meteo · ESA · primary data
  • · Netlify · hosting, with a deploy preview for every change
Start here