Canadian Snow Load — NBCC 2020 Ground Snow & Roof Snow Loads

Quick Reference: NBCC 2020 Clause 4.1.6 governs snow load design for Canadian steel structures. Ground snow loads S_s range from 0.5 kPa (Vancouver) to 5.0+ kPa (northern Quebec, Rocky Mountains). Roof snow S = I_S × [S_s × (C_b × C_w × C_s × C_a) + S_r]. Drift loads at steps and parapets can be 2-3 times the uniform roof snow.

Snow loading is the dominant gravity load for steel roofs across most of Canada. Unlike the US where snow loads govern regionally, nearly every Canadian structure must consider significant snow accumulation. The NBCC snow provisions account for Canada's unique climate — deep snowpacks, freeze-thaw cycles, and wind-redistribution of snow.


NBCC 2020 Snow Load Equation

The specified snow load on a roof per NBCC 2020 Clause 4.1.6.2:

S = I_S × [S_s × (C_b × C_w × C_s × C_a) + S_r]

Where:

Symbol Description Typical Value
I_S Importance factor for snow 0.80 to 1.25
S_s 1-in-50-year ground snow load (kPa) 0.5 to 5.0+ kPa
S_r 1-in-50-year associated rain load (kPa) 0.1 to 1.5 kPa
C_b Basic roof snow factor 0.7 (most roofs)
C_w Wind exposure factor 0.75 or 1.0
C_s Slope factor 0.0 to 1.0
C_a Accumulation factor 1.0 to 2.5+

Ground Snow Load S_s (NBCC Appendix C)

The 1-in-50-year ground snow load varies dramatically across Canada. Values are from NBCC 2020 Appendix C (Climatic Data):

Province / Region City S_s (kPa) S_r (kPa) Snow Zone
British Columbia Vancouver 0.5 1.5 Low
British Columbia Prince George 2.8 0.6 Moderate-High
Alberta Calgary 1.2 0.1 Moderate
Alberta Edmonton 1.8 0.3 Moderate
Alberta Fort McMurray 2.2 0.2 Moderate
Saskatchewan Regina 1.4 0.2 Moderate
Saskatchewan Saskatoon 1.5 0.2 Moderate
Manitoba Winnipeg 2.0 0.3 Moderate-High
Ontario Toronto 1.0 0.4 Moderate
Ontario Ottawa 2.1 0.5 High
Ontario Thunder Bay 2.7 0.5 High
Ontario Sudbury 2.9 0.5 High
Quebec Montreal 2.5 0.6 High
Quebec Quebec City 3.5 0.7 Very High
Quebec Saguenay 4.0 0.6 Very High
New Brunswick Fredericton 2.3 0.3 High
Nova Scotia Halifax 1.7 0.7 Moderate
Prince Edward Is. Charlottetown 2.0 0.4 High
Newfoundland St. John's 2.8 1.0 High
Newfoundland Labrador City 3.5 0.8 Very High
Yukon Whitehorse 2.0 0.3 High
NWT Yellowknife 2.5 0.2 High
Nunavut Iqaluit 3.2 0.3 Very High

Rain component S_r is significant in coastal regions (Vancouver S_r = 1.5 kPa, St. John's 1.0 kPa) where rain-on-snow events occur. The total ground snow load is S_s + S_r for design purposes.


Roof Snow Factors

Basic Roof Snow Factor C_b

C_b converts the ground snow load to the uniform roof snow load:

The 0.7 factor accounts for the lower density and redistribution of snow on roofs compared to ground. It reflects the fact that roof snow is typically less than ground snow due to wind scouring, melting, and sliding.

Wind Exposure Factor C_w

Exposure Condition C_w Typical Application
Sheltered — roof in a forest clearing or surrounded by higher buildings 1.0 Urban roof below adjacent buildings
Normal — typical suburban or urban roof 0.75 Most Canadian conditions
Exposed — roof in open terrain with no upwind obstructions 0.5 Rural buildings, airport terminals

Wind scouring reduces roof snow loads by removing snow from exposed roofs and depositing it on leeward roofs or in drifts. The lower C_w values in exposed conditions reflect this. However, C_w = 0.5 is combined with higher C_a for drift accumulation areas.

Slope Factor C_s

The roof slope factor accounts for snow sliding off pitched roofs:

Roof Slope C_s (slippery surface) C_s (non-slippery surface)
Flat to 10° 1.0 1.0
15° 0.9 1.0
20° 0.7 1.0
30° 0.4 0.8
40° 0.2 0.5
50°+ 0.0 0.2

"Slippery surfaces" include uncoated steel roofing, standing seam metal roofs, and smooth membrane roofing. Non-slippery surfaces include gravel-surfaced built-up roofing, rough tiles, and roofs with snow guards.

For slope > 60°, C_s = 0 only if sliding does not create a hazard for lower roofs, occupied areas, or exits. Otherwise, use the non-slippery value or provide snow guards.

Accumulation Factor C_a

C_a accounts for non-uniform snow accumulation due to drifting, sliding, or building geometry:

Accumulation Condition C_a Notes
Uniform snow (no drift) 1.0 Basic case
Drift at roof step (upper roof windward) 1.0 Upper roof scoured
Drift at roof step (lower roof drift) 1.5 to 3.0 Based on S_s and step height
Parapet wall drift 1.25 to 2.0 Based on parapet height
Valley drift (intersecting roofs) 1.5 to 2.5 Triangular load distribution
Leeward drift (obstruction) 1.5 to 2.0 Width of drift = 4h_d
Snow sliding from upper to lower 1.5 to 2.5 C_s = 0 on upper if sliding

Drift loads are specified as triangular or trapezoidal distributed loads acting on the lower roof adjacent to the step, parapet, or obstruction. The total drift load width is typically 4 to 6 times the drift height, which is a function of the ground snow load and step height.


Drift Loads at Steps and Parapets

Drift loads per NBCC 2020 Clause 4.1.6.5 are a critical consideration for steel roof design:

Drift Height

h_d = d × (S_s)^(0.5) - 0.5

Where:

Drift Load Magnitude

The peak drift pressure: p_d = γ × h_d Where γ = density of drift snow = 3.0 kN/m³ (typical drifted snow)

For S_s = 2.0 kPa (Winnipeg), h_d ≈ 1.2 m, p_d = 3.0 × 1.2 = 3.6 kPa — compared to the uniform roof snow S = 1.0 × [2.0 × (0.7 × 0.75 × 1.0 × 1.0) + 0.3] = 1.35 kPa. The drift load is 2.7 times the uniform load.

Drift Load Distribution

The drift load is applied as a triangular distribution:

For a roof with a 1.2 m parapet, S_s = 2.0 kPa:


Unbalanced Snow Loads

NBCC 2020 also requires consideration of unbalanced snow loads:

For flat roofs: Consider 100% of the uniform snow load on one half and 50% on the other half. This accounts for wind redistribution during a storm.

For gable roofs (pitch > 10°): Consider full snow load on the leeward side, reduced snow on the windward side. The unbalanced load pattern depends on the roof slope and wind exposure.

Unbalanced snow loads govern the design of:

  1. Purlins and girts (individual roof members)
  2. Roof truss diagonals (diagonal members in tension/compression reversal)
  3. Roof beam bracing (lateral restraint at support points)
  4. Eave connections (uplift at the windward eave)

Worked Example: Snow Load on a Steel Roof

Problem: Calculate the snow load on a flat steel roof in Ottawa for a Normal importance office building. The roof has a 1.5 m parapet, is in suburban terrain (normal exposure), has a non-slippery membrane roof, and the building is rectangular 40 m × 25 m.

Given:

Step 1 — Uniform roof snow load:

S_uniform = I_S × [S_s × (C_b × C_w × C_s × C_a) + S_r] = 1.0 × [2.1 × (0.7 × 0.75 × 1.0 × 1.0) + 0.5] = 1.0 × [2.1 × 0.525 + 0.5] = 1.0 × [1.103 + 0.5] = 1.603 kPa

Step 2 — Check if S_minimum applies:

S_min = 1.0 × [2.1 × 0.5 × 1.0 + 0.5] = 1.55 kPa (S_s × 0.5 is the minimum roof load check) Since 1.603 > 1.55, use S_uniform = 1.603 kPa.

Step 3 — Drift load at parapet:

S_s = 2.1 kPa → snow density for drift calculation γ_snow = 3.0 kN/m³

Drift height h_d calculation: First, d = S_s / γ_snow = 2.1 / 3.0 = 0.7 m (snow depth on adjacent area) h_d = d × (S_s)^(0.5) - 0.5 = 0.7 × sqrt(2.1) - 0.5 = 0.7 × 1.449 - 0.5 = 1.014 - 0.5 = 0.514 m

But h_d cannot exceed the parapet height (1.5 m), so h_d = 0.514 m.

Peak drift pressure: p_d = γ_snow × h_d = 3.0 × 0.514 = 1.543 kPa

Drift load width: w_d = 4 × h_d = 4 × 0.514 = 2.06 m from the parapet

Step 4 — Total load on roof (interior zone):

Interior zone (beyond 2.06 m from parapet): total load = 1.603 kPa

Edge zone (within 2.06 m of parapet): total load varies from 1.603 + 1.543 = 3.146 kPa at the parapet to 1.603 kPa at 2.06 m away.

Step 5 — Apply to steel roof beams:

For a roof beam at 3 m spacing, 8 m span (simple), interior zone: w_uniform = 1.603 × 3.0 = 4.81 kN/m M_max = 4.81 × 8.0² / 8 = 38.5 kN·m

For a roof beam at 3 m spacing, 8 m span, within 2.06 m of parapet: w_max = 3.146 × 3.0 = 9.44 kN/m (at parapet end) w_min = 1.603 × 3.0 = 4.81 kN/m (at 2.06 m from parapet)

The beam closest to the parapet must be checked for this trapezoidal loading.

Step 6 — Combined worst case for ULS:

Using NBCC ULS Comb. 4 (Snow principal): 1.25 × D + 1.5 × S

If roof dead load = 1.0 kPa (0.5 kPa deck + insulation + 0.5 kPa mechanical): D_factor = 1.25 × 1.0 × 3.0 = 3.75 kN/m S_factor = 1.5 × 4.81 = 7.22 kN/m (interior) or 1.5 × 9.44 = 14.16 kN/m (drift zone)

Total w_f = 3.75 + 7.22 = 10.97 kN/m (interior) Total w_f = 3.75 + 14.16 = 17.91 kN/m max (at parapet)

This governs over all other load combos for this roof beam.


Rain-on-Snow Events

The S_r component in the NBCC snow load equation accounts for rain-on-snow events, which are common in Canadian coastal and southern regions:

For steel roofs, the rain-on-snow condition produces a high-density saturated snow load. Roof drains and scuppers must be designed for the rain-on-snow meltwater volume. Blocked drains add hydrostatic load that may exceed the specified snow load.


Related Pages


Frequently Asked Questions

What is the minimum roof snow load per NBCC 2020?

NBCC 2020 Clause 4.1.6.2 requires a minimum roof snow load of S_min = I_S × [0.5 × S_s + S_r]. This applies when the calculated roof snow load C_b × C_w × C_s × C_a is less than 0.5. For example, if S_s = 1.0 kPa and S_r = 0.4 kPa: S_min = 1.0 × [0.5 × 1.0 + 0.4] = 0.9 kPa. This ensures that even roofs with high slope or exposure that would theoretically carry very little snow still have a minimum load for design. The minimum load applies regardless of the slope factor C_s.

How do drift loads affect steel roof beam design?

Drift loads create non-uniform loading patterns that can govern: (1) beams within 4 × h_d of a step or parapet see 2-3 times the uniform snow load intensity; (2) the triangular drift load produces higher shear near the step, potentially governing web shear or stiffener requirements; (3) unbalanced drift patterns can cause differential deflection between adjacent beams, stressing purlin connections; (4) drift loads emphasize the need for continuous load paths through the steel deck diaphragm. Engineers should consider drifts at every parapet, equipment screen, rooftop unit, and adjacent higher roof.

What is the difference between C_b and C_a in the NBCC snow equation?

C_b (basic roof snow factor) accounts for the overall conversion from ground snow to roof snow — it reflects that roof snow is generally less than ground snow. C_a (accumulation factor) accounts for local increases in snow depth due to drifting or sliding. C_b applies uniformly to the entire roof, while C_a applies only to specific zones (drift areas). The basic equation S_u = I_S × [S_s × C_b × C_w × C_s × S_r] gives the uniform roof snow. Drift loads are then superimposed: S_total = S_u + drift load where the drift load uses C_a values of 1.5 to 3.0.

When should snow guards be specified on Canadian steel roofs?

Snow guards (snow retention devices) should be specified when: (1) the roof slope exceeds 1:12 (approximately 5°) and snow sliding would create a hazard for building entrances, walkways, or lower roofs; (2) the roof drains into a valley that could be blocked by sliding snow; (3) sliding snow could damage rooftop equipment or solar panels; (4) the steel roofing is a slippery surface (standing seam metal) and the slope exceeds 3:12. Snow guards are designed for the sliding snow load per NBCC 4.1.6.10, calculated as the component of the snow load parallel to the roof slope. They must be attached to the structural steel (not just the roof deck) for adequate pull-out resistance.


This page is for educational reference. Snow load provisions per NBCC 2020 Division B Clause 4.1.6. Verify ground snow loads against current NBCC Appendix C climatic data applicable to your specific site location. Provincial and territorial building codes may have amendments. Results are PRELIMINARY — NOT FOR CONSTRUCTION without independent P.Eng. verification.