Bulle FR has the greatest solar-energy potential in canton Fribourg: its roofs could generate about 167 GWh of electricity a year. Next come Fribourg (137 GWh) and Estavayer (102 GWh). This is modelled roof potential — largest where there is the most roof area, not current generation. Source: BFE.
Ranking
BFE · 2025| Rank | Municipality | Roof potential | Residents |
|---|---|---|---|
| 1 | Bulle FR | 167 GWh | 27'276 |
| 2 | Fribourg | 137 GWh | 39'599 |
| 3 | Estavayer | 102 GWh | 10'812 |
| 4 | Murten | 95 GWh | 9'525 |
| 5 | Tafers | 93 GWh | 8'030 |
| 6 | Gibloux | 90 GWh | 8'719 |
| 7 | Düdingen | 85 GWh | 9'333 |
| 8 | Châtel-Saint-Denis | 77 GWh | 8'931 |
| 9 | Belmont-Broye | 75 GWh | 6'287 |
| 10 | Romont | 66 GWh | 6'276 |
| 11 | Kerzers | 62 GWh | 5'546 |
| 12 | Villars-sur-Glâne | 61 GWh | 12'644 |
| 13 | Marly | 54 GWh | 9'566 |
| 14 | Courtepin | 54 GWh | 5'847 |
| 15 | Mont-Vully | 52 GWh | 4'551 |
| 16 | Ried bei Kerzers | 51 GWh | 1'285 |
| 17 | Plaffeien | 50 GWh | 3'729 |
| 18 | Gurmels | 48 GWh | 4'710 |
| 19 | Wünnewil-Flamatt | 46 GWh | 5'848 |
| 20 | Givisiez | 45 GWh | 3'507 |
| 21 | Schmitten | 45 GWh | 4'303 |
| 22 | Vuisternens-devant-Romont | 43 GWh | 2'410 |
| 23 | Ursy | 39 GWh | 4'073 |
| 24 | Rue | 39 GWh | 2'638 |
| 25 | Siviriez | 38 GWh | 2'711 |
| 26 | Bösingen | 38 GWh | 3'336 |
| 27 | Val-de-Charmey | 38 GWh | 2'725 |
| 28 | Le Mouret | 36 GWh | 3'326 |
| 29 | Vuadens | 35 GWh | 2'580 |
| 30 | Hauterive | 34 GWh | 2'674 |
| 31 | Granges-Paccot | 32 GWh | 3'989 |
| 32 | Sâles | 32 GWh | 1'478 |
| 33 | Grolley-Ponthaux | 32 GWh | 2'898 |
| 34 | Villaz | 32 GWh | 2'421 |
| 35 | Montagny | 30 GWh | 3'105 |
| 36 | Attalens | 30 GWh | 3'690 |
| 37 | Prez | 29 GWh | 2'487 |
| 38 | Ueberstorf | 28 GWh | 2'417 |
| 39 | Avry | 28 GWh | 1'970 |
| 40 | Villorsonnens | 26 GWh | 1'593 |
| 41 | Haut-Intyamon | 26 GWh | 1'772 |
| 42 | Gruyères | 26 GWh | 2'353 |
| 43 | Saint-Aubin | 26 GWh | 2'106 |
| 44 | Corminboeuf | 25 GWh | 3'120 |
| 45 | Bois-d’Amont | 25 GWh | 2'489 |
| 46 | Belfaux | 24 GWh | 3'488 |
| 47 | Riaz | 24 GWh | 2'924 |
| 48 | St. Ursen | 24 GWh | 1'389 |
| 49 | Cugy | 24 GWh | 2'067 |
| 50 | Misery-Courtion | 24 GWh | 2'393 |
| 51 | Matran | 24 GWh | 2'094 |
| 52 | Pont-en-Ogoz | 23 GWh | 2'050 |
| 53 | Cheyres-Châbles | 23 GWh | 2'545 |
| 54 | Marsens | 23 GWh | 2'093 |
| 55 | La Verrerie | 22 GWh | 1'323 |
| 56 | La Roche | 22 GWh | 2'083 |
| 57 | Semsales | 21 GWh | 1'591 |
| 58 | Treyvaux | 21 GWh | 1'643 |
| 59 | Bas-Intyamon | 21 GWh | 1'759 |
| 60 | Les Montets | 21 GWh | 1'587 |
| 61 | La Brillaz | 20 GWh | 2'239 |
| 62 | Broc | 20 GWh | 2'957 |
| 63 | Surpierre | 19 GWh | 1'259 |
| 64 | Vaulruz | 19 GWh | 1'115 |
| 65 | Sorens | 18 GWh | 1'125 |
| 66 | Neyruz | 18 GWh | 2'874 |
| 67 | Heitenried | 17 GWh | 1'413 |
| 68 | Saint-Martin | 16 GWh | 1'059 |
| 69 | Giffers | 16 GWh | 1'718 |
| 70 | Mézières | 16 GWh | 1'217 |
| 71 | Le Flon | 16 GWh | 1'221 |
| 72 | Rechthalten | 15 GWh | 1'161 |
| 73 | Cottens | 15 GWh | 1'605 |
| 74 | Bossonnens | 15 GWh | 1'661 |
| 75 | Torny | 15 GWh | 1'112 |
| 76 | Jaun | 14 GWh | 659 |
| 77 | Grandvillard | 13 GWh | 925 |
| 78 | Tentlingen | 13 GWh | 1'374 |
| 79 | La Sonnaz | 13 GWh | 1'481 |
| 80 | Delley-Portalban | 13 GWh | 1'349 |
| 81 | Cressier | 13 GWh | 1'120 |
| 82 | Sévaz | 13 GWh | 324 |
| 83 | Le Pâquier | 13 GWh | 1'457 |
| 84 | Granges | 13 GWh | 1'012 |
| 85 | Plasselb | 13 GWh | 1'099 |
| 86 | Courgevaux | 12 GWh | 1'431 |
| 87 | St. Silvester | 12 GWh | 1'062 |
| 88 | Corbières | 12 GWh | 1'037 |
| 89 | Remaufens | 11 GWh | 1'462 |
| 90 | Gletterens | 11 GWh | 1'156 |
| 91 | Autigny | 11 GWh | 837 |
| 92 | Fräschels | 11 GWh | 435 |
| 93 | Châtonnaye | 11 GWh | 852 |
| 94 | Lully | 11 GWh | 1'239 |
| 95 | Billens-Hennens | 10 GWh | 910 |
| 96 | Echarlens | 10 GWh | 823 |
| 97 | Chénens | 9 GWh | 908 |
| 98 | Muntelier | 9 GWh | 1'020 |
| 99 | Le Châtelard | 9 GWh | 362 |
| 100 | Pont-la-Ville | 9 GWh | 649 |
| 101 | Hauteville | 9 GWh | 750 |
| 102 | Massonnens | 8 GWh | 605 |
| 103 | Brünisried | 8 GWh | 738 |
| 104 | Nuvilly | 8 GWh | 493 |
| 105 | Kleinbösingen | 7 GWh | 698 |
| 106 | Vallon | 6 GWh | 537 |
| 107 | Botterens | 6 GWh | 748 |
| 108 | Crésuz | 5 GWh | 508 |
| 109 | Morlon | 5 GWh | 790 |
| 110 | Pierrafortscha | 5 GWh | 148 |
| 111 | Meyriez | 4 GWh | 586 |
| 112 | Châtillon | 4 GWh | 549 |
| 113 | Grangettes | 4 GWh | 214 |
| 114 | Châtel-sur-Montsalvens | 4 GWh | 354 |
| 115 | Ferpicloz | 3 GWh | 242 |
| 116 | Greng | 3 GWh | 179 |
| 117 | Villarsel-sur-Marly | 2 GWh | 71 |
| 118 | Prévondavaux | 2 GWh | 108 |
How we measure this
BFEModelled annual electricity that rooftop photovoltaics could produce across the whole municipality, in gigawatt-hours per year, from the BFE «Solarenergiepotenziale der Schweizer Gemeinden» model (2025 snapshot). It is a potential, not installed capacity or actual generation, and it scales with roof area — so large towns lead simply because they have more roofs. It is a rolling model snapshot, not an annual survey. The companion roofs-plus-façades scenario adds vertical surfaces.
Frequently asked questions
- Which municipality in canton Fribourg has the greatest solar potential?
- Bulle FR, whose roofs could generate about 167 GWh of electricity a year (2025) — the greatest modelled roof potential of any municipality in canton Fribourg.
- Does this mean the municipality actually produces this much solar power?
- No. It is the modelled potential of the available roof surfaces — the electricity they could generate if fully used. Actual installed photovoltaics produce far less. The figure comes from the BFE solar model and scales with how much roof area a municipality has.