Rooftop Solar Loading: Why the Added Dead Load Is the Least Interesting Part of the Problem
A rooftop solar array adds somewhere between 2.5 and 5 pounds per square foot of dead load to a roof. For a typical commercial roof designed to carry 20 psf of dead load plus a live or snow load, that's a modest increase and often within the reserve capacity the original design happened to have.
Which is exactly why rooftop solar structural problems tend to catch owners by surprise. The dead load question gets asked, it gets answered favourably, and the assessment stops there. Meanwhile the array has changed the wind pressure distribution across the roof, altered how snow accumulates and where it drifts, introduced concentrated point loads at every ballast block or attachment, and in some cases modified the load path in ways the original framing never contemplated.
This post covers what a rooftop PV installation actually does to an existing roof structure: the wind uplift behaviour that governs most array designs, the snow drift geometry that panels create, how attachment method changes the structural problem entirely, and what an assessment needs to establish before an array goes on.
1. Wind Is the Governing Load, Not Gravity
Solar modules mounted above a roof surface at a tilt angle are, aerodynamically, a series of small inclined plates in the turbulent flow field over the roof. Wind flowing over and under them produces net uplift on the windward rows, downforce on some interior rows, and significant pressure fluctuation across the whole array.
For ballasted systems on low-slope roofs, this is the design driver. The array is held down by its own weight plus the weight of concrete ballast blocks, and the required ballast is determined by the uplift force the wind produces. Under-ballast the array and it slides or lifts in a storm. Over-ballast it and you have added far more dead load than necessary, potentially exceeding the roof's reserve capacity for no reason.
Why the roof zones matter
Wind pressure on a low-slope roof is not uniform. Flow separation at the roof edge produces a zone of high suction along the perimeter, and vortices generated at the corners produce the highest suction anywhere on the roof. ASCE 7 divides the roof into zones reflecting this: interior field, perimeter, and corner, with progressively higher pressure coefficients.
An array laid out uniformly across a roof therefore experiences very different demands depending on where each module sits. Corner modules may need two or three times the ballast that field modules need. A layout that ignores zoning and applies uniform ballast is either unsafe at the corners or excessively heavy in the field, and frequently both.
The common design response is to set the array back from the roof edge, keeping modules out of the highest-suction corner and perimeter zones entirely. The setback also serves fire access and maintenance requirements, so it usually appears in the layout for multiple reasons at once. Where roof area is constrained and modules must extend toward the perimeter, the ballast schedule has to vary by zone, and that variation is a structural loading pattern the roof framing has to accommodate.
Array-specific wind data
ASCE 7-22 includes provisions specifically for rooftop solar arrays, developed from wind tunnel testing on module geometries. These address parapet height effects, module tilt angle, array setback distance, and the shielding that interior modules receive from the rows upwind of them. The pressure coefficients differ substantially from those for the bare roof, and using bare-roof coefficients for an array design either overpredicts or underpredicts uplift depending on the configuration.
Many ballasted racking manufacturers supply their own wind tunnel test data and ballast calculation software, validated for their specific product geometry. That data is generally more accurate for that product than a generic code calculation, and using it is reasonable practice, but the resulting ballast layout still has to be checked against the roof's structural capacity by an engineer working for the owner rather than the racking supplier.
2.5 to 5 psf
Typical added dead load from a rooftop PV array. The number that actually governs the design is usually the wind uplift at the roof corners, which can require ballast several times heavier there than in the roof field.
2. Snow Drift: The Load Panels Create by Existing
In snow country, a solar array changes the snow load picture in ways that go well beyond adding weight.
Tilted modules shed snow. That snow doesn't disappear; it slides off the module and accumulates at the base of the array row, and in the gaps between rows. So while the module surface itself may carry little snow, the roof immediately downslope of each row carries substantially more than the balanced snow load the roof was designed for. On an array with many rows, this produces a repeating pattern of drift loading across the roof.
The array also acts as an obstruction to wind-driven snow transport. Snow blowing across a roof deposits where the wind velocity drops, and a row of modules creates exactly that condition. Drifts form on the leeward side of the array in the same way they form against a parapet or a rooftop unit.
ASCE 7 drift provisions treat rooftop obstructions, and the array can reasonably be modelled as such, but the analysis needs to consider the array geometry: row spacing, module height above the roof, and the tilt angle that determines how readily snow sheds. An array that sheds snow efficiently onto a narrow gap between rows concentrates that load more severely than one with wide row spacing.
The practical consequence is that in high snow load regions, the governing gravity load case for a roof with solar frequently isn't the array's own weight. It's the redistributed snow that the array causes to accumulate unevenly.
3. Attachment Method Changes the Structural Problem
There are three broad approaches to fixing an array to a roof, and each presents a different structural question.
Ballasted, non-penetrating. Racking sits on the roof surface on protective pads and is held down by concrete blocks. No roof penetrations, which preserves the membrane warranty and simplifies installation. The structural question is distributed dead load plus the concentrated bearing under each ballast tray and support foot. On a lightweight steel deck spanning between joists, those point loads can locally exceed deck capacity even when the average load is well within limits, so bearing pad size and location relative to joist lines matter.
Mechanically attached. Racking is bolted or screwed into the structural deck or into the framing members below. This eliminates most of the ballast weight, which helps where reserve capacity is limited, but transfers uplift directly into the structure as concentrated tension. Each attachment becomes a point where uplift force is delivered into a joist top chord or a deck, and the connection has to be verified for tension, including the withdrawal capacity of the fastener in whatever it's anchored to. On open-web steel joists, an uplift load applied at a panel point is very different structurally from one applied mid-panel on the top chord.
Hybrid. Ballast in the field of the roof where uplift is lower, mechanical attachment at corners and perimeter where uplift is highest. This optimises the trade-off between added dead load and roof penetrations, and it's common on retrofit projects where the roof has limited spare gravity capacity but the corners still need positive restraint.
4. What the Existing Structure Assessment Has to Establish
Before an array can be designed, the engineer needs to know what the roof can carry, and on an existing building that's an investigation rather than a lookup.
Original design capacity
If drawings exist, they establish the framing layout, member sizes, and the design loads the roof was originally proportioned for. That last item is the critical one and it's frequently misread. A roof designed in 1985 to a 20 psf snow load in a jurisdiction that now maps 30 psf under current code has no reserve capacity at all, even though the framing hasn't changed. The question isn't what the roof was designed for; it's what the roof can carry, evaluated against current code demands including the array.
Where drawings don't exist, field measurement establishes joist and beam spans, spacings, and member dimensions. For open-web steel joists, the joist designation stamped on the end of the member, where legible, identifies the standard load table it was manufactured to. Where it isn't legible, capacity has to be back-calculated from measured chord and web geometry, which introduces uncertainty that the assessment should state explicitly.
Condition
Design capacity assumes the structure is in the condition it was built in. Corrosion at joist bearing seats, deteriorated deck at areas of chronic leakage, previous unrepaired damage from earlier rooftop work, and modifications made for HVAC or other equipment all reduce actual capacity. A visual survey of the underside of the roof structure, at whatever access the building permits, is a necessary part of the assessment.
What is already up there
Existing rooftop equipment, mechanical units, ductwork, screens, previous re-roofing layers, all contribute dead load that may or may not have been in the original design. Multiple roofing membranes layered over the years are a common finding and can add several pounds per square foot that nobody accounted for. Establishing the current actual dead load, rather than the design dead load, is part of determining what capacity remains.
The Reserve Capacity Question
Owners frequently ask whether their roof can take solar, expecting a yes or no. The accurate answer is a number: the roof has some quantity of spare capacity, expressed in psf, after accounting for current actual dead load, current code snow or live load, and its condition. That number determines whether a ballasted system is feasible, whether the design has to shift toward mechanical attachment to reduce weight, or whether structural strengthening is required first. Framing the question as a capacity number rather than a yes or no is what allows the array design to be adjusted to fit rather than abandoned or forced.
5. Where Problems Actually Show Up
Deck capacity between joists. Global load checks on joists and beams pass, but the metal deck spanning between joists is locally overloaded by a ballast block bearing near midspan. Deck is thin and its capacity is often the binding constraint for concentrated loads even when the framing has ample reserve.
Uplift at joist top chords. Open-web steel joists are efficient in gravity loading and much less so in uplift, because the top chord that's normally in compression and laterally braced by the deck goes into tension and the bottom chord goes into compression without lateral bracing. A joist adequate for downward load may require bottom chord bracing to handle net uplift from a mechanically attached array.
Drainage disruption. Racking and ballast placed across a drainage path dam water on a low-slope roof. Ponded water is both a durability problem and a structural one: ponding is a progressive instability where deflection under water weight creates more capacity for water, which causes more deflection. Array layout has to preserve flow paths to drains.
Load path to the lateral system. Arrays add mass at roof level, which increases seismic demand on the building's lateral system in proportion. On most buildings the added mass is small relative to the roof and structure weight and the effect is negligible, but on light structures in high seismic regions it warrants a check rather than an assumption.
Conclusion
The structural assessment for rooftop solar is not primarily a dead load calculation. Wind uplift, concentrated at roof corners and perimeter, generally governs the array's own design and determines the ballast that becomes the added dead load. Snow redistribution around and between module rows can produce gravity load cases more demanding than the balanced snow the roof was designed for. Attachment method determines whether the structural question is distributed weight or concentrated tension.
On an existing building, all of that has to be evaluated against a structure whose real capacity is established by investigation rather than assumption, in its current condition, carrying whatever has accumulated on it since it was built. Getting a clear number for remaining capacity early is what allows the array to be designed to fit the building rather than discovering a conflict after the layout is fixed.