820.8 MW of solar PV connected as of 19 October 2026, up +38% since the Q1 2025 reading: solar accounts for 64.8% of decentralised generation capacity. The Open Data portal asked for the share of solar PV in electricity production by municipality; since the Leneda files give connected capacity rather than energy produced, this dashboard measures the PV share of installed capacity, municipality by municipality.
Reminder: installed capacity does not mean energy produced; the PNEC figure is the target written into the national plan, not a projection by this dashboard.
Cumulative installed capacity by technology across the 6 published readings. Solar PV accounts for 92% of the 246 MW net added to the fleet since Q1 2025 (wind +34.3 MW, cogeneration -15.5 MW, hydropower, biomass and biogas -0.3 MW together).
| Reading | Solar PV | Wind | Biomass | Cogeneration | Hydro | Biogas |
|---|---|---|---|---|---|---|
| 2025 Q1 | 593.8 | 213.7 | 96.6 | 73.1 | 34.0 | 9.8 |
| 2025 Q2 | 648.7 | 213.7 | 96.6 | 73.1 | 34.0 | 9.8 |
| 2025 Q3 | 698.4 | 226.5 | 96.6 | 72.5 | 34.0 | 9.2 |
| 2025 Q4 | 745.4 | 230.7 | 96.6 | 72.5 | 34.0 | 9.9 |
| 2026 Q1 | 769.3 | 230.7 | 96.6 | 60.3 | 34.0 | 9.8 |
| 19 Oct 2026 | 820.8 | 248.1 | 96.6 | 57.6 | 34.0 | 9.4 |
Net additions of solar PV capacity between consecutive Leneda readings. The quarterly bars compare two quarterly files; the last bar compares the weekly reading of 19 October 2026 with the latest published quarterly reading (Q1 2026), two separate Leneda extracts.
Capacity (MW) and production (GWh) are two different measures. According to the ILR (Key figures 2025 of the electricity market, published 2026), solar PV produced 627 GWh in 2025, ahead of wind (467 GWh), out of a national production of 1,826 GWh and a gross national consumption of 6,529 GWh; 444 GWh were self-consumed or shared (7% of final consumption). Lux-solaire calculation from these figures: PV accounts for 34.3% of national production and 9.6% of gross consumption.
ILR, end of 2025: 746 MW of solar PV (+197 MW, +35.8%) and 33,304 installations (+10,694, +47.3%). Leneda, Q4 2025 reading: 745.4 MW and 33,250 installations.
PNEC (integrated national energy and climate plan, July 2024 update, table 8, p. 44), planned installed PV capacity, in MW:
| 2025 | 2026 | 2027 | 2028 | 2029 | 2030 |
|---|---|---|---|---|---|
| 644 | 756 | 867 | 989 | 1,111 | 1,236 |
draw, to the nearest rounding, all of their decentralised capacity from solar PV. The median PV share per municipality reaches 93.4%.
the largest rise in PV capacity since the Q1 2025 reading, in Luxembourg (+83%).
The four largest PV installations on record top out just below 5 MW (Junglinster, Differdange, Käerjeng, Sanem), likely the mark of a tender threshold.
Set against population, PV capacity reverses the rankings: 1,179 W per inhabitant nationally (municipal median 1,687 W/inh.), 7,883 W/inh. in Colmar-Berg against 197 in Luxembourg. Large plants inflate small municipalities: in Colmar-Berg, 19.9 MW come from only 171 installations. The “rooftops” column counts installations of 30 kW or less per 1,000 inhabitants.
| Canton | PV kW | Inst. | Population | W/inh. | Inst./1,000 inh. |
|---|---|---|---|---|---|
| Clervaux | 85,621 | 2,495 | 22,423 | 3,818 | 111.3 |
| Vianden | 16,647 | 485 | 5,856 | 2,843 | 82.8 |
| Redange | 59,552 | 2,803 | 21,812 | 2,730 | 128.5 |
| Grevenmacher | 77,536 | 2,940 | 34,461 | 2,250 | 85.3 |
| Mersch | 78,170 | 2,938 | 37,424 | 2,089 | 78.5 |
| Wiltz | 35,362 | 1,708 | 20,623 | 1,715 | 82.8 |
| Echternach | 34,617 | 1,689 | 20,736 | 1,669 | 81.5 |
| Remich | 36,990 | 1,873 | 24,844 | 1,489 | 75.4 |
| Capellen | 83,898 | 4,614 | 57,336 | 1,463 | 80.5 |
| Diekirch | 41,472 | 2,089 | 36,670 | 1,131 | 57.0 |
| Esch | 160,528 | 7,451 | 198,114 | 810 | 37.6 |
| Luxembourg | 110,439 | 6,893 | 215,968 | 511 | 31.9 |
96% of installations are 30 kW or less, mostly residential rooftops, yet they account for only 55% of capacity. At the other end, 132 installations above 0.5 MW alone concentrate 175 MW.
| Size (kW) | Inst. | share of installations | MW | share of capacity |
|---|---|---|---|---|
| 0–5 kW | 2,979 | 7.8 % | 11.7 | 1.4 % |
| 5–10 kW | 15,195 | 40.0 % | 120.5 | 14.7 % |
| 10–15 kW | 9,529 | 25.1 % | 115.8 | 14.1 % |
| 15–30 kW | 8,830 | 23.3 % | 201.0 | 24.5 % |
| 30–100 kW | 616 | 1.6 % | 38.1 | 4.6 % |
| 100–500 kW | 696 | 1.8 % | 158.6 | 19.3 % |
| 0.5–1 MW | 78 | 0.2 % | 55.9 | 6.8 % |
| 1–5 MW | 54 | 0.1 % | 119.3 | 14.5 % |
| Sanem | Esch | 30,165 | 891 | +7,069 | 96,480 | 1,525 | 45.1 | |
| Luxembourg | Luxembourg | 27,322 | 2,024 | +12,426 | 59,508 | 197 | 14.6 | |
| Wincrange | Clervaux | 25,794 | 708 | +3,100 | 79,074 | 5,129 | 140.8 | |
| Junglinster | Grevenmacher | 25,734 | 861 | +4,735 | 27,008 | 2,765 | 92.5 | |
| Dudelange | Esch | 24,131 | 957 | +2,777 | 25,868 | 1,074 | 42.6 | |
| Clervaux | Clervaux | 22,771 | 618 | +3,388 | 35,201 | 3,567 | 96.8 | |
| Käerjeng | Capellen | 21,210 | 841 | +3,322 | 21,821 | 1,854 | 73.5 | |
| Differdange | Esch | 20,774 | 903 | +6,681 | 21,620 | 661 | 28.7 | |
| Colmar-Berg | Mersch | 19,889 | 171 | +7,935 | 24,484 | 7,883 | 67.8 | |
| Contern | Luxembourg | 17,292 | 479 | +5,055 | 17,382 | 3,401 | 94.2 | |
| Rambrouch | Redange | 15,225 | 750 | +3,511 | 36,800 | 2,969 | 146.3 | |
| Troisvierges | Clervaux | 14,346 | 347 | +1,989 | 14,346 | 3,823 | 92.5 | |
| Parc Hosingen | Clervaux | 14,079 | 569 | +2,555 | 32,849 | 3,134 | 126.7 | |
| Mersch | Mersch | 13,524 | 695 | +4,772 | 22,605 | 1,235 | 63.5 | |
| Niederanven | Luxembourg | 13,373 | 872 | +4,635 | 15,253 | 1,872 | 122.1 | |
| Tandel | Vianden | 13,223 | 275 | +7,442 | 18,223 | 5,556 | 115.5 | |
| Kehlen | Capellen | 12,992 | 797 | +4,043 | 13,312 | 1,691 | 103.8 | |
| Betzdorf | Grevenmacher | 12,933 | 507 | +3,257 | 13,343 | 3,068 | 120.3 | |
| Mondercange | Esch | 12,722 | 520 | +2,070 | 16,928 | 1,735 | 70.9 | |
| Bettembourg | Esch | 12,721 | 662 | +5,130 | 13,351 | 1,086 | 56.5 | |
| Bissen | Mersch | 12,587 | 310 | +5,174 | 16,492 | 3,505 | 86.3 | |
| Esch-sur-Alzette | Esch | 12,148 | 448 | +3,975 | 12,553 | 317 | 11.7 | |
| Mamer | Capellen | 12,092 | 721 | +2,572 | 13,949 | 1,020 | 60.8 | |
| Grevenmacher | Grevenmacher | 11,912 | 243 | +1,037 | 20,272 | 2,240 | 45.7 | |
| Redange/Attert | Redange | 11,039 | 365 | +1,940 | 12,434 | 3,493 | 115.5 | |
| Frisange | Esch | 10,657 | 442 | +5,263 | 10,657 | 2,103 | 87.2 | |
| Hesperange | Luxembourg | 10,323 | 688 | +3,466 | 10,905 | 594 | 39.6 | |
| Dippach | Capellen | 9,650 | 411 | +5,121 | 9,650 | 2,015 | 85.8 | |
| Steinfort | Capellen | 9,333 | 538 | +2,262 | 9,583 | 1,511 | 87.1 | |
| Wiltz | Wiltz | 9,214 | 369 | +3,744 | 16,248 | 1,070 | 42.9 | |
| Helperknapp | Mersch | 9,129 | 592 | +2,264 | 9,159 | 1,697 | 110.1 | |
| Bertrange | Luxembourg | 8,832 | 482 | +2,814 | 9,052 | 898 | 49.0 | |
| Schengen | Remich | 8,714 | 507 | +2,057 | 13,494 | 1,660 | 96.6 | |
| Weiswampach | Clervaux | 8,631 | 253 | +2,731 | 28,639 | 3,121 | 91.5 | |
| Schuttrange | Luxembourg | 8,598 | 485 | +2,970 | 9,646 | 1,931 | 108.9 | |
| Flaxweiler | Grevenmacher | 8,534 | 297 | +1,038 | 8,933 | 3,756 | 130.7 | |
| Echternach | Echternach | 8,293 | 223 | +1,522 | 8,293 | 1,378 | 37.1 | |
| Mondorf-les-Bains | Remich | 8,173 | 267 | +1,457 | 10,179 | 1,464 | 47.8 | |
| Rosport-Mompach | Echternach | 7,845 | 436 | +1,233 | 17,045 | 2,050 | 114.0 | |
| Steinsel | Luxembourg | 7,646 | 495 | +1,770 | 8,155 | 1,204 | 77.9 | |
| Groussbus-Wal | Redange | 7,267 | 338 | +1,304 | 7,273 | 3,060 | 142.3 | |
| Ell | Redange | 7,163 | 247 | +1,054 | 7,963 | 4,199 | 144.8 | |
| Roeser | Esch | 7,021 | 447 | +3,358 | 11,541 | 969 | 61.7 | |
| Pétange | Esch | 6,972 | 593 | +2,946 | 8,272 | 326 | 27.7 | |
| Habscht | Capellen | 6,812 | 454 | +2,222 | 6,812 | 1,276 | 85.0 | |
| Lenningen | Remich | 6,756 | 208 | +5,052 | 6,756 | 3,231 | 99.5 | |
| Lac de la Haute-Sûre | Wiltz | 6,738 | 292 | +1,235 | 6,738 | 2,805 | 121.6 | |
| Nommern | Mersch | 6,529 | 201 | +607 | 6,979 | 4,335 | 133.5 | |
| Erpeldange-sur-Sûre | Diekirch | 6,353 | 226 | +1,215 | 6,543 | 2,289 | 81.4 | |
| Beckerich | Redange | 6,147 | 344 | +1,289 | 10,417 | 2,092 | 117.1 | |
| Leudelange | Esch | 6,087 | 206 | +2,604 | 27,415 | 2,215 | 75.0 | |
| Esch-sur-Sûre | Wiltz | 5,787 | 341 | +1,193 | 22,931 | 1,683 | 99.2 | |
| Vallée de l'Ernz | Diekirch | 5,605 | 290 | +1,396 | 18,375 | 1,907 | 98.7 | |
| Feulen | Diekirch | 5,450 | 236 | +1,475 | 8,840 | 2,227 | 96.4 | |
| Mertert | Grevenmacher | 5,341 | 255 | +1,299 | 5,777 | 915 | 43.7 | |
| Walferdange | Luxembourg | 5,206 | 409 | +2,094 | 6,206 | 553 | 43.4 | |
| Winseler | Wiltz | 5,191 | 167 | +661 | 5,191 | 3,206 | 103.2 | |
| Reckange-sur-Mess | Esch | 5,161 | 318 | +1,747 | 5,161 | 1,696 | 104.5 | |
| Beaufort | Echternach | 5,131 | 220 | +1,346 | 5,131 | 1,623 | 69.6 | |
| Strassen | Luxembourg | 5,113 | 387 | +2,448 | 7,289 | 461 | 34.9 | |
| Schifflange | Esch | 5,097 | 487 | +2,094 | 5,787 | 430 | 41.1 | |
| Ettelbruck | Diekirch | 5,022 | 292 | +1,462 | 9,023 | 497 | 28.9 | |
| Mertzig | Diekirch | 4,871 | 260 | +998 | 4,871 | 2,012 | 107.4 | |
| Kayl | Esch | 4,749 | 437 | +1,761 | 4,749 | 475 | 43.7 | |
| Koerich | Capellen | 4,686 | 277 | +1,136 | 5,586 | 1,675 | 99.0 | |
| Stadtbredimus | Remich | 4,673 | 238 | +2,484 | 4,673 | 2,331 | 118.7 | |
| Lorentzweiler | Mersch | 4,645 | 313 | +1,429 | 4,765 | 970 | 65.3 | |
| Wormeldange | Grevenmacher | 4,576 | 273 | +1,340 | 4,582 | 1,391 | 83.0 | |
| Bous-Waldbredimus | Remich | 4,543 | 335 | +1,448 | 4,545 | 1,355 | 99.9 | |
| Manternach | Grevenmacher | 4,377 | 304 | +926 | 8,737 | 1,894 | 131.5 | |
| Waldbillig | Echternach | 4,347 | 255 | +1,142 | 4,347 | 2,178 | 127.8 | |
| Diekirch | Diekirch | 4,133 | 157 | +1,016 | 8,381 | 557 | 21.2 | |
| Biwer | Grevenmacher | 4,128 | 200 | +1,113 | 4,128 | 2,161 | 104.7 | |
| Garnich | Capellen | 4,096 | 328 | +1,176 | 11,096 | 1,624 | 130.1 | |
| Bettendorf | Diekirch | 3,866 | 206 | +733 | 4,157 | 1,258 | 67.0 | |
| Heffingen | Mersch | 3,801 | 159 | +2,348 | 3,801 | 2,342 | 98.0 | |
| Useldange | Redange | 3,788 | 245 | +899 | 3,833 | 1,729 | 111.8 | |
| Vichten | Redange | 3,757 | 190 | +619 | 3,757 | 2,624 | 132.7 | |
| Sandweiler | Luxembourg | 3,481 | 298 | +1,230 | 4,111 | 900 | 77.1 | |
| Lintgen | Mersch | 3,475 | 238 | +938 | 4,100 | 999 | 68.4 | |
| Boulaide | Wiltz | 3,447 | 200 | +641 | 3,447 | 2,208 | 128.1 | |
| Weiler-la-Tour | Luxembourg | 3,253 | 274 | +910 | 3,259 | 1,293 | 108.9 | |
| Consdorf | Echternach | 3,190 | 221 | +345 | 3,190 | 1,527 | 105.8 | |
| Berdorf | Echternach | 3,100 | 154 | +1,195 | 3,102 | 1,368 | 68.0 | |
| Kopstal | Capellen | 3,027 | 247 | +1,204 | 3,038 | 640 | 52.2 | |
| Saeul | Redange | 2,923 | 154 | +408 | 2,983 | 2,724 | 143.5 | |
| Fischbach | Mersch | 2,891 | 166 | +614 | 2,891 | 2,129 | 122.2 | |
| Bourscheid | Diekirch | 2,775 | 179 | +1,085 | 22,425 | 1,547 | 99.8 | |
| Bech | Echternach | 2,712 | 180 | +685 | 2,712 | 1,964 | 130.3 | |
| Goesdorf | Wiltz | 2,542 | 175 | +736 | 8,592 | 1,516 | 104.4 | |
| Dalheim | Remich | 2,444 | 189 | +638 | 23,444 | 1,023 | 79.1 | |
| Kiischpelt | Wiltz | 2,443 | 164 | +716 | 2,470 | 1,855 | 124.5 | |
| Putscheid | Vianden | 2,319 | 146 | +678 | 4,757 | 1,931 | 121.6 | |
| Préizerdaul | Redange | 2,243 | 170 | +561 | 3,458 | 1,240 | 94.0 | |
| Rumelange | Esch | 2,125 | 140 | +579 | 2,419 | 371 | 24.4 | |
| Schieren | Diekirch | 1,982 | 156 | +773 | 6,342 | 886 | 69.7 | |
| Larochette | Mersch | 1,700 | 93 | +443 | 1,700 | 763 | 41.7 | |
| Remich | Remich | 1,686 | 129 | +733 | 2,396 | 404 | 30.9 | |
| Reisdorf | Diekirch | 1,414 | 87 | +449 | 1,435 | 967 | 59.5 | |
| Vianden | Vianden | 1,106 | 64 | +541 | 1,106 | 486 | 28.1 |