Calculator
Row Spacing and Inter-Row Shading Calculator
On a flat roof or a field, the limit on capacity is rarely the module count. It is the distance between rows. Pack rows tightly and you fit more kilowatts on the site, but every row shades the one behind it for part of every winter day, and a shaded bottom cell string drags a whole module down.
This calculator returns the minimum pitch that keeps the array unshaded at the design hour you choose, together with the ground coverage ratio that pitch implies and the resulting capacity density.
Set the array geometry
Long edge for portrait, short edge for landscape.
Sun height at the worst hour you want clear. 17° is typical for 21 December, 10:00–14:00 in southern Europe.
How far east or west the sun is from due array-facing at that hour.
Array height above mounting plane
0.6 m
Horizontal footprint of the row
1.65 m
Shadow cast at the design hour
1.71 m
After the azimuth correction
Minimum row pitch
3.36 m
Front edge to front edge
Ground coverage ratio
49.2%
Conservative spacing
Capacity density
0.119 kWp per m² of ground
1,186 Wp per 10 m² strip
How the calculation works
Figure — Row pitch geometry
A tilted row is a vertical obstruction of height L·sin(β). The length of the shadow it casts on level ground is that height divided by the tangent of the solar altitude. When the sun is not directly in front of the array, only the component of the shadow perpendicular to the rows matters, so the shadow is multiplied by the cosine of the azimuth offset.
The pitch you need is the horizontal footprint of the row itself, L·cos(β), plus that corrected shadow. Ground coverage ratio is the module footprint divided by the pitch: it is the single number that describes how densely the site is packed, and it is what yield models ask for.
The design hour is a commercial decision rather than a physical constant. Clearing the winter solstice at 09:00 costs a great deal of land for energy that arrives at low irradiance; clearing 10:00 to 14:00 on the solstice is the common European compromise.
The formula
h = L × sin(β) b = L × cos(β) s = h / tan(α) s' = s × cos(γ) pitch = b + s' GCR = b / pitch L module slope length · β tilt · α solar altitude at the design hour γ sun azimuth offset from the array normal
Assumptions behind the numbers
- The mounting plane is level. On a slope, a south-facing incline reduces the required pitch and a north-facing incline increases it.
- Rows are long compared with their height, so end effects are ignored.
- The design hour is entered by you. The default of 17° altitude corresponds roughly to solar noon ±2 hours on 21 December at 38° latitude.
- Diffuse shading between rows is not modelled. Even an unshaded array loses about 1 to 3% of diffuse irradiance to neighbouring rows at typical ground coverage ratios.
- Module dimensions are nominal. Frame clamps, maintenance walkways and fire access routes add to real pitch.
How to read the result
A ground coverage ratio between 0.35 and 0.45 is normal for European fixed-tilt ground mounts. Flat-roof systems at 10 to 15° tilt often run at 0.5 or higher because the shadow is short and roof area is the binding constraint.
If the pitch the calculator returns does not fit the site, the usual lever is tilt, not spacing. Dropping from 30° to 15° roughly halves the shadow while costing only a few percent of annual yield in mid-latitudes, and it frequently increases total site output because you fit more capacity.
Worked example
A flat roof carries 450 W modules in portrait, 1.76 m long, tilted at 20°, and the designer wants the array clear from 10:00 to 14:00 on the winter solstice, when the sun reaches 17° altitude and sits about 30° off the array normal at the edges of that window.
Row height is 1.76 × sin 20° = 0.60 m and the footprint is 1.76 × cos 20° = 1.65 m. The raw shadow is 0.60 ÷ tan 17° = 1.97 m, reduced by cos 30° to 1.71 m. Pitch is therefore 1.65 + 1.71 = 3.36 m, a ground coverage ratio of 49%.
Reducing tilt to 12° drops the pitch to 2.53 m — a quarter less roof per row — at the cost of roughly 3% specific yield. On a roof where area is the limit, the lower tilt delivers more annual kilowatt-hours in total.
Mistakes that skew the answer
- Using solar noon altitude for the design hour, which leaves the array shaded through most of the winter morning and afternoon.
- Forgetting the azimuth correction, which over-sizes the pitch and wastes site area.
- Ignoring the fact that a shaded bottom cell row can disable a third of a module through its bypass diode, so partial shading is not proportionally small.
- Designing the pitch to the module and then adding walkways afterwards, which pushes the last row off the roof.
- Applying flat-ground geometry to a pitched or terraced site without correcting for the ground slope.
Questions readers ask
- What row spacing should I use for a flat roof?
- For a 20° tilt on a typical southern European roof, pitch is around 1.9 to 2.1 times the module slope length if you want a clear winter solstice midday window. Lower tilts of 10 to 15° cut that to roughly 1.4 to 1.6 times, which is why most modern flat-roof arrays are shallow.
- Is it ever right to accept some shading?
- Yes. Land and roof area cost money, and the last hour of winter sun is worth very little. Many utility-scale designs accept 1 to 2% annual shading loss because the extra capacity per hectare more than pays for it. Model the trade-off rather than treating zero shading as a rule.
- Does east-west mounting change the answer?
- Completely. East-west ballasted systems face rows against each other with almost no gap, reaching ground coverage ratios above 0.8. They produce less per kilowatt but far more per square metre, and the shading geometry here does not apply.
- How does tilt interact with soiling and snow?
- Shallow tilts shed rain and snow less effectively, so soiling losses rise slightly and snow can sit for longer. In snowy regions keep at least 15° and allow clearance at the bottom edge for shed snow, which otherwise builds up and shades the lowest cells.
- What altitude angle corresponds to my location?
- At solar noon on 21 December, altitude is approximately 90° minus your latitude minus 23.45°. For 38° latitude that is about 28.5° at noon, falling to roughly 17° two hours either side. Use an hourly solar position table or PVGIS for an exact figure.