Tilt and orientation factors for balcony solar

We modeled how much sunlight reaches a panel at every common balcony angle and direction, because published guidance usually assumes rooftop angles. The results drive our calculator. You may reuse them with credit under CC BY 4.0.

Yearly production by tilt and facing, as a percent of a 20° south-facing panel, at about 39° N (Denver, Washington DC, Kansas City) SouthSE / SWE / WNE / NWNorth 90° vertical 68% 65% 53% 36% 26% 60° angled railing 94% 88% 71% 49% 37% 35° on a stand 102% 97% 82% 65% 57% 20° roof pitch 100% 96% 87% 77% 72% 10° nearly flat 96% 94% 89% 83% 81%
Yearly energy at each tilt and facing, relative to a 20° south-facing panel in the same place, at about 39° N (Denver, Washington DC, Kansas City). The outlined row is the typical balcony setup: panels hanging flat on a railing. Modeled by Balcony Solar Atlas with pvlib (Perez sky model) on typical-year weather; see the data and method.

Method

  1. Weather: the typical-meteorological-year files bundled with pvlib-python 0.16.1: Miami, FL (TMY2, 25.8° N), Greensboro, NC (TMY3, 36.1° N) and Sand Point, AK (TMY3, 55.3° N).
  2. Sun position from pvlib at the mid-point of each hour.
  3. Irradiance on the tilted surface with the Perez transposition model and ground albedo 0.2.
  4. For each tilt (10°, 20°, 35°, 60°, 90°) and facing (0°, 45°, 90°, 135°, 180° from south), we summed the year and divided by the 20° south value at the same site.
  5. For a given state, the calculator interpolates linearly by the latitude of its largest city.

Limitations: three sites cannot capture every climate; cloudy coastal areas favor diffuse light and may see vertical panels do slightly better than shown. Values are irradiance ratios, so they leave out the small extra losses from steep angles of incidence on glass.

Self-use curve

The share of yearly output a home uses, for a constant background load, modeled hourly on the Greensboro year with a 35° south array and 18% losses.

Constant load ÷ peak output0.10.20.30.40.50.60.811.251.52
Share used24%43%58%71%81%89%99%100%100%100%100%

Raw values

Miami FL (25.8° N)
TiltSSE/SWE/WNE/NWN
10°0.9770.9340.8890.8630.874
20°1.0000.9220.8390.7840.799
35°0.9910.8760.7540.6550.658
60°0.8660.7280.5980.4600.440
90°0.5740.4930.4170.3130.278
Greensboro NC (36.1° N)
TiltSSE/SWE/WNE/NWN
10°0.9590.9400.8930.8430.821
20°1.0000.9650.8740.7750.728
35°1.0170.9640.8250.6600.577
60°0.9270.8680.7050.4870.373
90°0.6540.6370.5250.3500.254
Sand Point AK (55.3° N)
TiltSSE/SWE/WNE/NWN
10°0.9350.9110.8480.7840.755
20°1.0000.9540.8370.7130.661
35°1.0570.9860.8090.6170.533
60°1.0350.9450.7260.4960.378
90°0.8290.7530.5670.3870.304
Copy as CSV
site,latitude,tilt_deg,degrees_from_south,factor
Miami FL,25.8,10,0,0.977
Miami FL,25.8,10,45,0.934
Miami FL,25.8,10,90,0.889
Miami FL,25.8,10,135,0.863
Miami FL,25.8,10,180,0.874
Miami FL,25.8,20,0,1
Miami FL,25.8,20,45,0.922
Miami FL,25.8,20,90,0.839
Miami FL,25.8,20,135,0.784
Miami FL,25.8,20,180,0.799
Miami FL,25.8,35,0,0.991
Miami FL,25.8,35,45,0.876
Miami FL,25.8,35,90,0.754
Miami FL,25.8,35,135,0.655
Miami FL,25.8,35,180,0.658
Miami FL,25.8,60,0,0.866
Miami FL,25.8,60,45,0.728
Miami FL,25.8,60,90,0.598
Miami FL,25.8,60,135,0.46
Miami FL,25.8,60,180,0.44
Miami FL,25.8,90,0,0.574
Miami FL,25.8,90,45,0.493
Miami FL,25.8,90,90,0.417
Miami FL,25.8,90,135,0.313
Miami FL,25.8,90,180,0.278
Greensboro NC,36.1,10,0,0.959
Greensboro NC,36.1,10,45,0.94
Greensboro NC,36.1,10,90,0.893
Greensboro NC,36.1,10,135,0.843
Greensboro NC,36.1,10,180,0.821
Greensboro NC,36.1,20,0,1
Greensboro NC,36.1,20,45,0.965
Greensboro NC,36.1,20,90,0.874
Greensboro NC,36.1,20,135,0.775
Greensboro NC,36.1,20,180,0.728
Greensboro NC,36.1,35,0,1.017
Greensboro NC,36.1,35,45,0.964
Greensboro NC,36.1,35,90,0.825
Greensboro NC,36.1,35,135,0.66
Greensboro NC,36.1,35,180,0.577
Greensboro NC,36.1,60,0,0.927
Greensboro NC,36.1,60,45,0.868
Greensboro NC,36.1,60,90,0.705
Greensboro NC,36.1,60,135,0.487
Greensboro NC,36.1,60,180,0.373
Greensboro NC,36.1,90,0,0.654
Greensboro NC,36.1,90,45,0.637
Greensboro NC,36.1,90,90,0.525
Greensboro NC,36.1,90,135,0.35
Greensboro NC,36.1,90,180,0.254
Sand Point AK,55.3,10,0,0.935
Sand Point AK,55.3,10,45,0.911
Sand Point AK,55.3,10,90,0.848
Sand Point AK,55.3,10,135,0.784
Sand Point AK,55.3,10,180,0.755
Sand Point AK,55.3,20,0,1
Sand Point AK,55.3,20,45,0.954
Sand Point AK,55.3,20,90,0.837
Sand Point AK,55.3,20,135,0.713
Sand Point AK,55.3,20,180,0.661
Sand Point AK,55.3,35,0,1.057
Sand Point AK,55.3,35,45,0.986
Sand Point AK,55.3,35,90,0.809
Sand Point AK,55.3,35,135,0.617
Sand Point AK,55.3,35,180,0.533
Sand Point AK,55.3,60,0,1.035
Sand Point AK,55.3,60,45,0.945
Sand Point AK,55.3,60,90,0.726
Sand Point AK,55.3,60,135,0.496
Sand Point AK,55.3,60,180,0.378
Sand Point AK,55.3,90,0,0.829
Sand Point AK,55.3,90,45,0.753
Sand Point AK,55.3,90,90,0.567
Sand Point AK,55.3,90,135,0.387
Sand Point AK,55.3,90,180,0.304

Scripts: research/orientation.py and research/self_consumption.py in the site repository. Cite as: Balcony Solar Atlas, “Tilt and orientation factors for balcony solar,” 2026.