Roof Loading — ASCE 7 Snow, Rain, Wind Uplift & Ponding
Roof loading is unique in structural design because four load types act simultaneously or in critical alternation: snow (gravity), rain/ponding (gravity, progressive), wind uplift (reversed gravity), and roof live load (construction and maintenance). ASCE 7-22 Chapters 7 (Snow), 8 (Rain), and 26–30 (Wind) provide the loading provisions. The critical design condition often involves the interaction between these loads — particularly wind uplift opposing dead load, and rain accumulation on deflected roofs.
Balanced snow load (ASCE 7-22 Section 7.3)
The flat-roof snow load pf represents the uniform snow accumulation on a roof without drift effects:
pf = 0.7 × Ce × Ct × Cs × Is × pg
Where:
- pg = ground snow load (psf) from ASCE 7 Figure 7.2-1 (ranges from 0 in southern states to 300+ psf in mountain regions)
- Ce = exposure factor (0.7 for fully exposed windy sites, 1.0 for partially exposed, 1.2 for sheltered)
- Ct = thermal factor (1.0 for heated, 1.1 for unheated closed, 1.2 for unheated open, 1.3 for continuously below freezing)
- Cs = roof slope factor (1.0 for slopes ≤ 30 degrees on warm roofs, reduces for steeper slopes)
- Is = importance factor (1.0 for Risk Category II, 1.1 for RC III, 1.2 for RC IV)
Example: pg = 30 psf, heated warehouse (Ct = 1.0), suburban terrain (Ce = 1.0), flat roof (Cs = 1.0), Risk Category II (Is = 1.0): pf = 0.7 × 1.0 × 1.0 × 1.0 × 1.0 × 30 = 21 psf.
Roof live load (ASCE 7-22 Section 4.8)
Roof live load Lr per ASCE 7-22 Table 4.3-1 accounts for maintenance workers, equipment, and temporary storage:
Lr = 20 × R1 × R2 (psf, 12 psf ≤ Lr ≤ 20 psf)
Where R1 reduces for tributary area (R1 = 1.0 for At ≤ 200 sf, R1 = 1.2 - 0.001At for 200 < At < 600, R1 = 0.6 for At ≥ 600) and R2 reduces for steep slopes (R2 = 1.0 for F ≤ 4 in/ft). For most structural roof framing: **Lr = 12 psf** (tributary area > 600 sf, flat slope).
Snow vs roof live load: ASCE 7 load combinations 3 and 4 treat snow (S) and roof live load (Lr) as separate loads that do not occur simultaneously:
- 1.2D + 1.6S + 0.5W (or 0.5Lr)
- 1.2D + 1.6Lr + 0.5S (or 0.5W)
For locations with pg > 30 psf, snow typically governs over Lr. For locations with pg < 15 psf, Lr often governs.
Rain load and ponding (ASCE 7-22 Section 8)
Rain load R is the weight of water that accumulates on a roof assuming the primary drainage is blocked and only the secondary (overflow) drainage functions:
R = 5.2 × (ds + dh) (psf)
Where ds = depth of water at the secondary drain inlet (in) and dh = additional depth from hydraulic head at the secondary drain (in). For a typical secondary scupper at 2 in above the roof surface with 1 in of hydraulic head: R = 5.2 × 3 = 15.6 psf.
Ponding instability occurs when the accumulated rainwater causes enough deflection to collect more water in a progressive feedback loop. AISC 360-22 Appendix 2 provides the stability criterion:
Cp + 0.9Cs ≤ 0.25
Where Cp = 504 × Lp^4 / (Ip × 10^7) and Cs = 504 × Ls^4 / (Is × 10^7). If this criterion fails, the roof is ponding-unstable.
Worked example — roof beam design for combined loads
Given: Roof beam spanning 40 ft, tributary width 6 ft, flat metal deck roof. Location: Chicago (pg = 25 psf). Dead load = 20 psf (deck + insulation + roofing + beam self-weight distributed).
Step 1 — Calculate loads: pf = 0.7 × 1.0 × 1.0 × 1.0 × 1.0 × 25 = 17.5 psf (balanced snow). Lr = 12 psf (tributary area > 600 sf). R = 5.2 × 3 = 15.6 psf (rain — assuming 2" secondary drain + 1" head).
Step 2 — Governing load combination (ASCE 7-22 Section 2.3.1): LC3: 1.2D + 1.6S + 0.5Lr = 1.2(20) + 1.6(17.5) + 0.5(12) = 24 + 28 + 6 = 58 psf LC4: 1.2D + 1.6Lr + 0.5S = 1.2(20) + 1.6(12) + 0.5(17.5) = 24 + 19.2 + 8.75 = 52 psf LC5 (rain): 1.2D + 1.6R = 1.2(20) + 1.6(15.6) = 24 + 25.0 = 49 psf
LC3 governs at 58 psf.
Step 3 — Beam design: wu = 58 × 6 / 1000 = 0.348 klf. Mu = 0.348 × 40² / 8 = 69.6 kip-ft. Required Zx = 69.6 × 12 / (0.90 × 50) = 18.6 in³. Minimum: W10x19 (Zx = 21.6 in³).
Step 4 — Deflection check (L/240 for total load): I_required = 5 × wservice × L^4 / (384 × E × delta_allow). wservice = (20 + 17.5) × 6 / 1000 = 0.225 klf. delta_allow = 480/240 = 2.0 in. I = 5 × 0.225 × (480)^4 / (384 × 29000 × 2.0) = 5 × 0.225 × 5.31 × 10^10 / (2.23 × 10^7) = 5.97 × 10^10 / 2.23 × 10^7 = 2679 in^4? This seems too high — recalculate in kip-in units: w = 0.225/12 = 0.01875 kli. I = 5 × 0.01875 × 480^4 / (384 × 29000 × 2.0) = 5 × 0.01875 × 5.31 × 10^10 / (22,272,000) = 4.977 × 10^9 / 2.23 × 10^7 = 223 in^4. W12x26 has I = 204 in^4 — close but insufficient. Use W14x22 (I = 199 in^4) — still insufficient. Use W12x30 (I = 238 in^4) — OK. Deflection controls over strength (as is typical for roof beams).
Wind uplift load combinations
The critical roof load combination for net uplift is:
0.9D + 1.0W (ASCE 7-22 LC7, where W is negative/uplift)
For a roof with D = 20 psf and wind uplift = -35 psf (Zone 1, interior): Net = 0.9(20) + 1.0(-35) = 18 - 35 = -17 psf (net uplift).
The roof framing, connections, and anchorage must resist this net uplift. Joist seat welds, purlin clips, and deck attachments all need to be checked for this reversed loading direction.
Code comparison
ASCE 7-22 (USA): Snow per Chapter 7, Rain per Chapter 8, Wind per Chapters 26–30. Separate load combinations for each. Ponding per AISC 360 Appendix 2 or SJI Technical Digest 3. Ground snow load mapped by location.
AS 1170.1/AS 1170.2/AS 1170.3 (Australia): Snow per AS 1170.3 (alpine regions only, sk = 0.3–4.5 kPa). Most Australian roofs are governed by wind uplift (cyclonic regions) or roof live load. Rain loading is addressed through drainage design standards (AS/NZS 3500.3) rather than structural load provisions. Wind provisions in AS 1170.2 are more detailed for cyclonic regions than ASCE 7.
EN 1991-1-3/EN 1991-1-4 (Eurocode): Snow per EN 1991-1-3 with characteristic ground snow load sk, shape coefficients mu_1 and mu_2. Rain ponding addressed by requiring adequate drainage and minimum slope. Wind per EN 1991-1-4 with peak velocity pressure qp and external/internal pressure coefficients. Eurocode applies partial factors on actions (gamma_Q = 1.5 for variable loads) rather than the LRFD load factors used in ASCE 7.
ASCE 7-22 load combinations for roof design
Roof design uses a subset of the ASCE 7-22 Section 2.3.1 load combinations that are relevant to roof loading. Not all seven combinations govern — the following are the ones that typically control roof member design:
| Combination | Formula | Controls For |
|---|---|---|
| LC1 | 1.4D | Minimum gravity (rarely governs for roofs) |
| LC2 | 1.2D + 1.6Lr + 0.5S | Low-snow regions where Lr exceeds S |
| LC3 | 1.2D + 1.6S + 0.5Lr | Snow regions where S exceeds Lr (most common gravity case) |
| LC4 | 1.2D + 1.6Lr + 0.5W + 0.5S | Roof live load with companion wind |
| LC5 | 1.2D + 1.6W + 0.5Lr + 0.5S | Wind as primary load (lateral design) |
| LC6 | 1.2D + 1.6R + 0.5Lr | Rain load primary (flat roofs with blocked drainage) |
| LC7 | 0.9D + 1.0W | Net uplift (wind opposes dead load) |
| LC8 | 0.9D + 1.0E | Seismic uplift (only for seismic regions) |
Critical observations:
- Snow and roof live load are never both factored at 1.6 in the same combination. One is primary (1.6) and the other is companion (0.5). This reflects their non-concurrent nature.
- Rain load R only appears with 1.6 factor in LC6. In other combinations, rain is not considered as a companion action because rain and snow/wind are not expected to occur simultaneously at design intensity.
- LC7 (0.9D + 1.0W) is the only combination that can produce net tension (uplift) in roof members. The 0.9 factor on dead load is a lower bound to account for dead load variability — the actual dead load could be less than calculated.
- For LC7, W includes the positive (inward) pressure on the windward wall and the negative (uplift) pressure on the roof. The net effect on the roof is typically uplift.
Dead load estimation by roof component
Accurate dead load estimation is critical for roof design because dead load appears in every load combination and directly affects the net uplift calculation in LC7. The following table provides typical dead load ranges for common roof components:
| Component | Weight (psf) | Notes |
|---|---|---|
| Steel roof deck (22 ga, 1.5 in B-deep) | 1.6 to 2.0 | Varies with span and profile |
| Steel roof deck (20 ga, 1.5 in B-deep) | 2.0 to 2.5 | Heavier gauge for longer spans |
| Steel roof deck (18 ga, 3 in W-deep) | 2.8 to 3.5 | Deep deck for long spans |
| Rigid insulation (1 in polyiso) | 0.5 to 0.7 | Multiple layers common (2 to 4 in total) |
| Rigid insulation (1 in XPS) | 0.8 to 1.0 | Higher R-value per inch |
| Built-up roofing (3-ply + gravel) | 5.5 to 6.5 | Heavier than single-ply |
| TPO/PVC single-ply membrane | 0.3 to 0.5 | Lightweight, common on commercial roofs |
| Standing seam metal roofing | 1.0 to 2.0 | Includes clips and fasteners |
| Corrugated metal roofing | 1.0 to 1.5 | Light industrial applications |
| Acoustic deck (perforated + insulation) | 3.0 to 5.0 | For noise control |
| Mechanical / electrical allowance | 2.0 to 5.0 | Rooftop units, conduits, piping |
| Fireproofing (spray-applied) | 0.5 to 1.5 | On structural members only |
| Beam / joist self-weight (distributed) | 2.0 to 5.0 | Spread over tributary width |
| Purlin self-weight (distributed) | 0.5 to 1.5 | Light gauge, spread over tributary |
| Ceiling / suspended items | 1.0 to 3.0 | Suspended ceiling, lights, sprinklers |
Typical total dead loads by roof type:
| Roof Type | Typical Dead Load (psf) | Components |
|---|---|---|
| Metal building (standing seam on purlins) | 3 to 5 | Deck + insulation + membrane + framing |
| Commercial flat roof (membrane on steel deck) | 12 to 18 | Deck + insulation + membrane + framing + MEP |
| Heavy flat roof (concrete fill on deck) | 25 to 40 | Deck + fill + insulation + membrane + MEP |
| Industrial (corrugated on purlins) | 3 to 6 | Deck + framing, minimal insulation |
The dead load range matters significantly for the LC7 uplift check: a metal building roof at 4 psf dead load with 35 psf wind uplift produces net uplift of 0.9(4) + 1.0(-35) = -31.4 psf, while a commercial flat roof at 15 psf produces 0.9(15) + 1.0(-35) = -21.5 psf. The lighter roof has 46% more net uplift, requiring more robust connections.
Rain load detailed calculation
ASCE 7-22 Section 8.2 defines rain load R as the weight of water that accumulates on the roof when the primary drainage system is blocked and the secondary (overflow) drainage system is functioning. The calculation is straightforward but requires careful attention to the geometry of the drainage system:
R = 5.2 x (ds + dh) (psf, where depths are in inches)
Where:
- ds = static head = depth of water from the roof surface to the inlet of the secondary drainage system (in). This is the vertical distance from the low point of the roof (at the secondary drain) to the secondary drain inlet elevation. For a scupper 2 in above the roof surface, ds = 2.0 in.
- dh = hydraulic head = additional depth of water above the secondary drain inlet required to force the design flow rate through the secondary drainage system (in). This depends on the drain type and flow rate.
Hydraulic head determination:
- For secondary scuppers: dh = (Q / (2.49 x W))^0.67, where Q = design flow rate (gpm) and W = scupper width (in).
- For secondary drains (roof drains): dh is obtained from manufacturer flow charts, typically 0.5 to 2.0 in for properly sized drains.
- For free discharge (open scupper through parapet): dh is minimal, approximately 0.5 to 1.0 in.
Design flow rate: The rainfall intensity for drain sizing is typically based on a 100-year, 1-hour rainfall event per the plumbing code (IPC or UPC). The rainfall rate i (in/hr) and the tributary roof area A (sf) determine Q = 0.0104 x i x A (gpm).
Rain load examples:
| Secondary Drain Type | ds (in) | dh (in) | R (psf) | Notes |
|---|---|---|---|---|
| Scupper, 2 in above roof | 2.0 | 1.0 | 15.6 | Common metal building |
| Scupper, 4 in above roof | 4.0 | 1.5 | 28.6 | High parapet with limited overflow |
| Roof drain (secondary) | 1.5 | 0.5 | 10.4 | Well-designed flat roof |
| No secondary drainage | -- | -- | Unbounded | Code violation; ponding to collapse |
The most dangerous rain loading scenario occurs when the secondary drainage capacity is inadequate or the secondary drain inlet is set too high. In the 1998 collapse of a warehouse in Oregon, the primary drains were blocked by leaves, and the secondary scuppers were set 8 in above the roof surface (to keep water off the roof membrane). The resulting rain load of 5.2 x (8 + 2) = 52 psf exceeded the roof capacity by a factor of 2.
Ponding instability per AISC 360-22 Appendix 2
Ponding instability is a serviceability and strength limit state unique to roof structures. It occurs when rainwater accumulation on a flexible roof causes deflection that traps more water, which causes more deflection, in a positive feedback loop. AISC 360-22 Appendix 2 provides a simplified stability check and a more detailed analysis method.
Simplified stability criterion:
Cp + 0.9 x Cs <= 0.25 (AISC Appendix 2, Eq. A-2-1)
Where:
- Cp = 32 x Ls x Lp^4 / (10^7 x Ip) — primary member flexibility
- Cs = 32 x Ls^4 / (10^7 x Is) — secondary member (joist/purlin) flexibility
- Lp = primary member span (ft), Ip = primary member moment of inertia (in^4)
- Ls = secondary member span (ft), Is = secondary member moment of inertia (in^4)
If Cp + 0.9Cs exceeds 0.25, the roof is potentially ponding-unstable and requires either: (1) stiffer members, (2) increased roof slope, (3) additional secondary drainage, or (4) a detailed ponding analysis using the iterative method in AISC Appendix 2 Section 2.2.
Detailed analysis method: The iterative approach computes the water depth at each step, calculates the resulting deflection, adds the deflected water depth, and repeats until convergence (stable) or divergence (unstable). If the water depth converges, the final member forces are checked against the member capacity. If the depth diverges (grows without bound), the roof is unstable and must be stiffened.
Practical guidance for avoiding ponding problems:
| Condition | Minimum Slope | Notes |
|---|---|---|
| Steel deck on joists, span less than 40 ft | 1/4 in per ft (1:48) | Standard practice |
| Steel deck on joists, span 40 to 60 ft | 3/8 in per ft (1:32) | Additional slope recommended |
| Concrete deck on steel beams | 1/4 in per ft (1:48) | Heavier deck resists ponding better |
| Standing seam metal roof on purlins | 1/2 in per ft (1:24) | Minimum for drainage between purlins |
Even with adequate slope, secondary (overflow) drains must be provided at every low point. Primary drains alone are insufficient because debris can block them. The secondary drainage system must be independent and sized for the full design rainfall.
Combined loading worked example — snow + wind + dead
Given: A warehouse in Minneapolis, MN (pg = 60 psf). The roof is a flat commercial roof with steel deck on open web steel joists at 5 ft on center. Joists span L = 45 ft. Dead load = 14 psf. Wind uplift (Zone 2, edge zone) = -42 psf. Rain load R = 15.6 psf.
Step 1 — Calculate individual loads:
- Dead load D = 14 psf
- Snow load pf = 0.7 x 1.0 x 1.0 x 1.0 x 1.0 x 60 = 42 psf
- Roof live load Lr = 12 psf (tributary area = 45 x 5 = 225 sf > 200 sf, R1 = 1.2 - 0.001 x 225 = 0.975, but using 12 psf minimum)
- Wind uplift W = -42 psf (Zone 2, edge)
- Rain load R = 15.6 psf
Step 2 — Evaluate governing gravity combination: LC3: 1.2(14) + 1.6(42) + 0.5(12) = 16.8 + 67.2 + 6.0 = 90.0 psf LC2: 1.2(14) + 1.6(12) + 0.5(42) = 16.8 + 19.2 + 21.0 = 57.0 psf LC6: 1.2(14) + 1.6(15.6) = 16.8 + 25.0 = 41.8 psf LC3 governs at 90.0 psf.
Step 3 — Evaluate net uplift combination: LC7: 0.9(14) + 1.0(-42) = 12.6 - 42.0 = -29.4 psf (net uplift) The joists, deck attachments, and connections must resist 29.4 psf net uplift.
Step 4 — Design joist for gravity (LC3): wu = 90.0 x 5 / 1000 = 0.450 klf. Mu = 0.450 x 45^2 / 8 = 113.9 kip-ft. Required Zx = 113.9 x 12 / (0.90 x 50) = 30.4 in^3.
Step 5 — Check deflection under service snow (LC3 service level): w_service = (14 + 42) x 5 / 1000 = 0.280 klf (dead + snow, unfactored). delta_allow = 45 x 12 / 240 = 2.25 in. I_req = 5 x 0.280/12 x (540)^4 / (384 x 29000 x 2.25) = 5 x 0.02333 x 8.503 x 10^10 / (2.506 x 10^7) = 396 in^4.
Joist selection: A 28K10 joist at 45 ft span with I approximately 400 in^4 would satisfy both strength and deflection. Verify against SJI load tables for the specific joist designation.
Step 6 — Check ponding stability: Cp (girder): assume W21x44 girder spanning 45 ft, Ip = 843 in^4. Cp = 32 x 45 x 45^4 / (10^7 x 843) = 32 x 45 x 4.1 x 10^6 / (8.43 x 10^9) = 0.070. Cs (joist): assume 28K10, Is approximately 400 in^4. Cs = 32 x 45^4 / (10^7 x 400) = 32 x 4.1 x 10^6 / (4.0 x 10^9) = 0.033. Cp + 0.9 x Cs = 0.070 + 0.030 = 0.100 less than 0.25. Ponding stable.
Step 7 — Check net uplift on connections: Net uplift per joist = 29.4 x 5 x 45 / 1000 = 6.6 kips (total uplift per joist). Each joist seat (2 seats) resists 3.3 kips. Joist seat weld capacity (typical 1/4 in fillet, 2 in long each side): phiRn = 0.75 x 2 x 0.928 x 2 x 2 = 5.6 kips per seat. OK.
Common mistakes engineers make
Applying snow load and roof live load simultaneously. ASCE 7 treats S and Lr as non-concurrent variable loads. They appear in different positions in the load combinations (one as the primary 1.6 factor, the other as 0.5 companion). Adding them together overestimates the demand.
Ignoring rain loading because "the roof has drains." Rain load R per ASCE 7 Section 8 assumes the primary drains are fully blocked. The design rain depth is measured to the secondary drainage level. Engineers who delete R from the load combinations are ignoring a load that has caused real collapses.
Using floor live load reduction for roof members. ASCE 7 Section 4.7 live load reduction applies to floor live loads, not roof live loads. Roof live load reduction uses the separate R1/R2 factors from Section 4.8. Applying the 15-psf-per-tributary-area floor reduction to roof framing is incorrect.
Designing roof framing for gravity only without checking net uplift. At building edges and corners, wind uplift can exceed twice the dead load. If the dead load is light (15–20 psf metal roof) and the wind uplift is high (40–65 psf in Zones 2 and 3), the net uplift is substantial and governs connection design.
Run this calculation
Related references
- Load Combinations ASCE 7
- Live Load Reference
- How to Verify Calculations
- load combinations
- wind load basics
- beam deflection limits reference
- structural wind load calculator
- snow load calculator
- Purlin Girt
Disclaimer
This page is for educational and reference use only. It does not constitute professional engineering advice. All design values must be verified against the applicable standard and project specification before use. The site operator disclaims liability for any loss arising from the use of this information.