Unmapped Dataworks

Free tools · NASA Black Marble, night light

Night light from space

The light NASA’s Black Marble sees at about 1:30 in the morning, for every ward, municipality, district and province, month by month since January 2012 and every year. Newest year: 2025.

What it coversCovers all 4,485 wards in all 213 municipalities: the whole country.Green: places with records. Worked out from release 2026-11-13. Boundaries: Municipal Demarcation Board, 2026 boundaries. The dataset

Night light is the light a satellite sees from space at about 1:30 in the morning: street lights, buildings, mines, factories, harbours and fires. NASA takes out moonlight, haze and stray light, leaves out cloudy nights and sets faint glow to zero. Brightness is the light given off, in nanowatts per square centimetre per steradian (nW/cm²/sr), averaged over the place; “lit” is the share of the land giving off 1 or more, twice the faint glow NASA treats as noise.

What it is not: it cannot tell the grid from solar or a generator, who pays for the light, how many people live there or how well off they are. A load-shedding month mixes dark nights with lit ones, fires and flares can light a month up, and a cloudy month rests on fewer nights.

The country, month by month

2022 and 2023, the heaviest load-shedding20122014201620182020202220242026
South Africa’s average brightness each month since January 2012 (nW/cm²/sr). Shaded: 2022 and 2023, the years of the heaviest load-shedding. A gap is a month seen too little.

At 1:30 in the morning a place in a load-shedding slot is dark and one outside it is not, so a month’s figure mixes the two. How the dip in 2022 and 2023 was checked is in the docs.

Every municipality, 2025

By average brightness in NASA’s yearly product: the light given off over the whole municipality, divided by its area, so a big, mostly dark municipality reads low even with a bright town in it. Lit is the share of its land giving off 1 or more.

#MunicipalityProvinceBrightness (nW/cm²/sr)LitAgainst 2024
1City of JohannesburgGauteng22.198%9.1% brighter
2EkurhuleniGauteng16.4100%12% brighter
3City of Cape TownWestern Cape13.565%11% brighter
4eThekwiniKwaZulu-Natal10.786%10% brighter
5The MsunduziKwaZulu-Natal6.175%6.6% brighter
6EmfuleniGauteng5.956%1.7% brighter
7City of TshwaneGauteng4.951%6.7% brighter
8Nelson Mandela BayEastern Cape4.541%3.5% brighter
9uMhlathuzeKwaZulu-Natal3.557%6.6% brighter
10Mogale CityGauteng3.544%9.1% brighter
11StellenboschWestern Cape3.056%14% brighter
12RustenburgNorth West2.939%5.9% brighter
13Rand West CityGauteng2.848%5.8% brighter
14KwaDukuzaKwaZulu-Natal2.640%12% brighter
15Govan MbekiMpumalanga2.420%about the same
16EmalahleniMpumalanga2.440%0.8% darker
17MidvaalGauteng2.143%5.6% brighter
18Local Municipality of MadibengNorth West2.141%6.2% brighter
19DrakensteinWestern Cape2.026%12% brighter
20MandeniKwaZulu-Natal2.056%13% brighter
21Buffalo CityEastern Cape1.721%8.2% brighter
22Victor KhanyeMpumalanga1.736%4.3% brighter
23PolokwaneLimpopo1.525%5.0% brighter
24Ray NkonyeniKwaZulu-Natal1.432%7.5% brighter
25Greater TzaneenLimpopo1.429%4.4% brighter
26NewcastleKwaZulu-Natal1.318%7.2% darker
27ThulamelaLimpopo1.327%10% brighter
28City of MbombelaMpumalanga1.218%2.5% brighter
29LesediGauteng1.228%7.2% brighter
30Fetakgomo TubatseLimpopo1.225%2.6% brighter
31Dr JS MorokaMpumalanga1.127%4.6% brighter
32MkhambathiniKwaZulu-Natal1.128%22% brighter
33Merafong CityGauteng1.120%3.8% brighter
34MfoloziKwaZulu-Natal1.129%4.9% brighter
35MoreteleNorth West1.124%9.1% brighter
36Greater LetabaLimpopo1.023%2.0% brighter
37Steve TshweteMpumalanga0.9614%5.0% darker
38Port St JohnsEastern Cape0.8827%1.1% brighter
39City of MatlosanaNorth West0.8812%11% brighter
40NkomaziMpumalanga0.8716%7.4% brighter
41Saldanha BayWestern Cape0.8611%8.9% brighter
42Thembisile HaniMpumalanga0.8415%3.7% brighter
43MakhuduthamagaLimpopo0.8221%9.3% brighter
44NdwedweKwaZulu-Natal0.7923%13% brighter
45MangaungFree State0.767.3%1.3% brighter
46MafikengNorth West0.7211%1.4% darker
47UmdoniKwaZulu-Natal0.7117%7.6% brighter
48Sol PlaatjeNorthern Cape0.635.8%1.6% brighter
49Mossel BayWestern Cape0.637.3%8.6% brighter
50Inkosi MtubatubaKwaZulu-Natal0.6216%13% brighter
51King Sabata DalindyeboEastern Cape0.588.8%4.9% darker
52uMlalaziKwaZulu-Natal0.5816%3.6% brighter
53Greater GiyaniLimpopo0.5713%14% brighter
54Lepele-NkumpiLimpopo0.5714%12% brighter
55PhokwaneNorthern Cape0.5611%3.7% brighter
56GamagaraNorthern Cape0.567.2%about the same
57MetsimaholoFree State0.526.7%2.0% brighter
58Ephraim MogaleLimpopo0.5211%1.9% darker
59Alfred DumaKwaZulu-Natal0.5010%2.0% brighter
60Collins ChabaneLimpopo0.5013%6.4% brighter
61Breede ValleyWestern Cape0.506.8%6.4% brighter
62MatjhabengFree State0.496.8%3.9% darker
63uMngeniKwaZulu-Natal0.4811%about the same
64Moses KotaneNorth West0.489.1%12% brighter
65UmzumbeKwaZulu-Natal0.4710%6.8% brighter
66MogalakwenaLimpopo0.458.2%4.7% brighter
67Elias MotsoalediLimpopo0.4511%about the same
68OverstrandWestern Cape0.446.0%10.0% brighter
69MaphumuloKwaZulu-Natal0.4311%16% brighter
70Ingquza HillEastern Cape0.4210%5.0% brighter
71BushbuckridgeMpumalanga0.429.6%2.4% brighter
72KnysnaWestern Cape0.406.4%8.1% brighter
73uMshwathiKwaZulu-Natal0.3911%7.1% darker
74MakhadoLimpopo0.388.3%8.6% brighter
75Winnie Madikizela-MandelaEastern Cape0.358.8%6.1% brighter
76NyandeniEastern Cape0.347.8%3.0% brighter
77KougaEastern Cape0.334.9%14% brighter
78BitouWestern Cape0.335.7%14% brighter
79SwartlandWestern Cape0.325.4%3.2% brighter
80Ba-PhalaborwaLimpopo0.304.6%3.4% brighter
81TheewaterskloofWestern Cape0.305.0%7.1% brighter
82GeorgeWestern Cape0.303.3%15% brighter
83NongomaKwaZulu-Natal0.296.6%3.3% darker
84uMuziwabantuKwaZulu-Natal0.276.7%3.8% brighter
85DannhauserKwaZulu-Natal0.278.8%13% darker
86RichmondKwaZulu-Natal0.265.3%about the same
87MarulengLimpopo0.266.5%8.3% brighter
88JB MarksNorth West0.254.1%4.2% brighter
89Maluti a PhofungFree State0.245.1%4.3% brighter
90JoziniKwaZulu-Natal0.245.9%9.1% brighter
91LekwaMpumalanga0.243.9%7.7% darker
92UmzimvubuEastern Cape0.235.2%15% brighter
93EndumeniKwaZulu-Natal0.234.4%about the same
94MolemoleLimpopo0.235.0%4.5% brighter
95Inkosi LangalibaleleKwaZulu-Natal0.224.5%about the same
96MnqumaEastern Cape0.213.7%5.0% brighter
97uPhongoloKwaZulu-Natal0.215.4%about the same
98UmhlabuyalinganaKwaZulu-Natal0.215.2%17% brighter
99NtabankuluEastern Cape0.204.7%18% brighter
100Johannes Phumani PhungulaKwaZulu-Natal0.205.3%about the same
101MsingaKwaZulu-Natal0.194.1%about the same
102UlundiKwaZulu-Natal0.194.3%about the same
103Chief Albert LuthuliMpumalanga0.194.4%about the same
104Greater TaungNorth West0.194.7%9.5% darker
105OudtshoornWestern Cape0.192.1%19% brighter
106Ga-SegonyanaNorthern Cape0.183.5%about the same
107LangebergWestern Cape0.182.7%5.9% brighter
108DihlabengFree State0.172.4%6.3% brighter
109DipalesengMpumalanga0.173.0%5.6% darker
110NgwatheFree State0.162.5%about the same
111AbaqulusiKwaZulu-Natal0.162.8%6.7% brighter
112Kumkani MhlontloEastern Cape0.153.4%about the same
113MoqhakaFree State0.152.2%6.3% darker
114UmvotiKwaZulu-Natal0.152.7%7.1% brighter
115UmzimkhuluKwaZulu-Natal0.152.8%15% brighter
116MsukaligwaMpumalanga0.152.6%12% darker
117MkhondoMpumalanga0.152.7%7.1% brighter
118KgatelopeleNorthern Cape0.151.9%about the same
119NdlambeEastern Cape0.142.8%7.7% brighter
120Thaba ChweuMpumalanga0.142.2%about the same
121MatatieleEastern Cape0.132.4%8.3% brighter
122Greater KokstadKwaZulu-Natal0.131.5%8.3% brighter
123Bela-BelaLimpopo0.132.3%about the same
124DitsobotlaNorth West0.132.6%about the same
125NqutuKwaZulu-Natal0.122.7%20% darker
126ThabazimbiLimpopo0.121.9%20% brighter
127LephalaleLimpopo0.122.1%about the same
128EmakhazeniMpumalanga0.122.4%about the same
129NalaFree State0.111.6%8.3% darker
130NkandlaKwaZulu-Natal0.112.2%about the same
131BergrivierWestern Cape0.111.7%10.0% brighter
132Dr AB XumaEastern Cape0.101.9%about the same
133Big Five HlabisaKwaZulu-Natal0.102.5%9.1% darker
134MthonjaneniKwaZulu-Natal0.101.7%17% darker
135MusinaLimpopo0.101.4%11% brighter
136RatlouNorth West0.103.2%17% darker
137Sundays River ValleyEastern Cape0.092.2%13% brighter
138MbhasheEastern Cape0.091.6%13% brighter
139SetsotoFree State0.091.4%about the same
140Ramotshere MoiloaNorth West0.092.4%about the same
141Lekwa-TeemaneNorth West0.091.4%about the same
142WitzenbergWestern Cape0.091.3%13% brighter
143Cape AgulhasWestern Cape0.091.3%13% brighter
144OkhahlambaKwaZulu-Natal0.082.2%11% darker
145eDumbeKwaZulu-Natal0.081.9%about the same
146KgetlengrivierNorth West0.081.6%11% darker
147SwellendamWestern Cape0.081.1%14% brighter
148ElundiniEastern Cape0.071.1%17% brighter
149MafubeFree State0.071.3%about the same
150MpofanaKwaZulu-Natal0.071.0%about the same
151ImpendleKwaZulu-Natal0.071.9%17% brighter
152Dr Nkosazana Dlamini ZumaKwaZulu-Natal0.071.7%about the same
153BloubergLimpopo0.071.8%17% brighter
154Dr Pixley Ka Isaka SemeMpumalanga0.071.5%12% darker
155Maquassi HillsNorth West0.071.3%12% darker
156MakanaEastern Cape0.061.0%about the same
157Raymond MhlabaEastern Cape0.061.1%14% darker
158Intsika YethuEastern Cape0.060.8%about the same
159NketoanaFree State0.060.9%20% brighter
160Modimolle-MookgophongLimpopo0.061.0%about the same
161TsantsabaneNorthern Cape0.060.7%about the same
162MagarengNorthern Cape0.061.3%50% brighter
163NalediNorth West0.060.9%14% darker
164MamusaNorth West0.061.2%14% darker
165Kou-KammaEastern Cape0.051.1%67% brighter
166NgqushwaEastern Cape0.051.2%25% brighter
167SakhisizweEastern Cape0.051.0%about the same
168Enoch MgijimaEastern Cape0.051.0%25% brighter
169MasilonyanaFree State0.050.9%about the same
170TswelopeleFree State0.050.6%about the same
171MantsopaFree State0.051.0%about the same
172EmadlangeniKwaZulu-Natal0.051.0%17% darker
173TswaingNorth West0.051.3%17% darker
174HessequaWestern Cape0.051.0%about the same
175AmahlathiEastern Cape0.040.9%33% brighter
176Joe MorolongNorthern Cape0.040.7%about the same
177MatzikamaWestern Cape0.040.8%about the same
178Great KeiEastern Cape0.030.8%about the same
179Inxuba YethembaEastern Cape0.030.4%about the same
180EmalahleniEastern Cape0.030.8%about the same
181SenquEastern Cape0.030.7%about the same
182Khâi-MaNorthern Cape0.030.4%about the same
183EmthanjeniNorthern Cape0.030.3%50% brighter
184Dawid KruiperNorthern Cape0.030.3%about the same
185DikgatlongNorthern Cape0.030.5%about the same
186CederbergWestern Cape0.030.6%about the same
187Blue Crane RouteEastern Cape0.020.3%100% brighter
188Walter SisuluEastern Cape0.020.3%about the same
189LetsemengFree State0.020.4%about the same
190KopanongFree State0.020.4%100% brighter
191TokologoFree State0.020.4%about the same
192PhumelelaFree State0.020.5%33% darker
193RichtersveldNorthern Cape0.020.3%about the same
194Nama KhoiNorthern Cape0.020.4%about the same
195UmsobomvuNorthern Cape0.020.4%about the same
196SiyathembaNorthern Cape0.020.2%100% brighter
197Kai !GaribNorthern Cape0.020.4%about the same
198KannalandWestern Cape0.020.4%about the same
199Beaufort WestWestern Cape0.020.2%about the same
200Dr Beyers NaudeEastern Cape0.010.2%about the same
201MohokareFree State0.010.3%about the same
202HantamNorthern Cape0.010.1%about the same
203ThembelihleNorthern Cape0.010.1%about the same
204SiyancumaNorthern Cape0.010.3%about the same
205!KheisNorthern Cape0.010.2%about the same
206Kagisano/MolopoNorth West0.010.3%about the same
207LaingsburgWestern Cape0.010.1%about the same
208Prince AlbertWestern Cape0.010.1%about the same
209KamiesbergNorthern Cape0.000%about the same
210Karoo HooglandNorthern Cape0.000%about the same
211UbuntuNorthern Cape0.000.1%100% darker
212KareebergNorthern Cape0.000.1%about the same
213RenosterbergNorthern Cape0.000.1%about the same

The metros

Each metro’s page has every year and month since 2012 and its wards by number.

By province

How it was checked

NASA makes the yearly figure separately from the monthly ones, so the two were set against each other place by place: for municipalities the yearly figure and the mean of the year’s twelve months are a median 1.8% apart (360 of 374 municipality-years within 10%), for wards a median 1.0% (34,024 of 34,088 within 20%). The country’s light in each month of 2022 and 2023, the years of the heaviest load-shedding, was set against the same month in 2024 and 2025, after load-shedding largely stopped: 23 of the 24 months were darker. Against 2019 and 2021 only 6 were: the country’s light was rising through the decade, so the satellite shows the end of load-shedding more clearly than its start. In 2025 the 6 metros among the eight municipalities giving off the most light were City of Johannesburg, City of Cape Town, Ekurhuleni, City of Tshwane, eThekwini, Nelson Mandela Bay. Every ward adds up to its province. The workings are in the docs.

Source

NASA Black Marble night lights, VNP46A3 (monthly) and VNP46A4 (yearly), collection 2, from NASA’s LAADS DAAC (doi:10.5067/VIIRS/VNP46A3.002 and doi:10.5067/VIIRS/VNP46A4.002). The product’s page.

What we changed: we added up NASA’s light over each 2026 ward (each pixel, about 460 m across, split in four and given to the ward holding each quarter) and added the wards up to municipalities, districts and provinces.

The satellite (Suomi NPP) passes at about 1:30 in the morning. NASA’s monthly figure is the mean of the month’s clear nights; a pixel with no clear night is filled from earlier months, and that share is shown. The yearly figure is NASA’s own mean of the year’s clear nights, so it is close to, not exactly, the mean of the twelve months.

Dataset: night light by ward, release 2026-11-13.

Unmapped Dataworks