Piping Toolset
HomeCalculators › Snow and Ice Load on Piping Calculator (ASCE 7 Inputs)

Snow and Ice Load on Piping Calculator (ASCE 7 Inputs)

Returns the ice line load wice = ρice·π·tice·(Do + tice)/144 from a uniform radial ice annulus, the snow line load wsnow = pf·(Do + 2·tice)/12 acting on the projected width, their sum, and the total with pipe weight included — all in lb/ft. The ice density and design snow pressure are ASCE 7 design values and stay user inputs.

Method last updated (calculation changelog) · fixture-verified on every build — most recently 2026-07-31.

Snow and ice are the loads that get left out. Weight, pressure, thermal and wind all have an obvious home in a stress model and a line on a load schedule; atmospheric ice on an outdoor rack in a cold climate usually does not, right up until a span deflects visibly, a spring hanger bottoms out, or a small-bore line comes down. The load itself is not exotic — it is ordinary dead weight, added to a run that was sized without it — but it is remarkably large in proportion to what small pipe weighs.

The proportion is the thing worth internalising. Half an inch of radial ice on an NPS 12 line adds roughly 8 lb/ft, against a bare pipe weight in the region of 50 lb/ft — noticeable but manageable. Put the same half inch on an NPS 2 line and the ice adds around 1.5 lb/ft to a pipe that weighs about 3.7 lb/ft empty. The ice has increased the load by 40%, and it is small-bore piping — sized by handling and schedule rather than by stress, supported at generous spans, often on light steel — that fails first.

The geometry is why. Ice accretes as an annulus of roughly constant radial thickness, so its cross-sectional area goes as π·t·(Do + t) — nearly proportional to diameter for thin ice. Pipe weight goes roughly as diameter times wall. Since a small line has a much lower weight-to-diameter ratio than a large one, the same ice thickness is a far larger fractional load on it. Nothing about that is obvious from looking at a pipe rack, and it is the reason the check is worth doing on the small lines rather than the headers.

Snow is the other half, and it shares the geometry: it acts as a pressure on the projected width, and the ice has already widened that projection to Do + 2·tice. Whether the two are taken together at all is a project decision this calculator deliberately leaves open — many specifications take the worse of the two rather than the sum, on the reasonable grounds that a full design ice event and a full design snow event are not the same weather. The card computes both and reports them separately for exactly that reason, and it warns about the simultaneity question on every run.

Radial ice annulus and snow load on a pipe cross-section A pipe cross-section surrounded by a uniform ring of ice, with a band of snow resting across the full projected width above it. Ice thickness, outside diameter, and the projected width are dimensioned. snow — p_f D_o + 2·t_ice — projected width t_ice ρ_ice D_o (incl. insulation) w_ice = ρ·π·t·(D_o + t) / 144 w_snow = p_f·(D_o + 2·t) / 12 both in lb/ft, added to the pipe + contents weight ρ_ice and p_f are ASCE 7 design values — user-supplied
Ice is treated as a uniform radial annulus of thickness t_ice around the pipe, so its weight follows the annulus area. Snow is treated as a pressure acting on the projected width, which the ice has already widened to D_o + 2·t_ice — the two loads share a geometry, which is why a line that carries ice also carries more snow.
Open this calculator → Download sample report

Method

Two line loads from the same geometry, reported separately and summed.

Ice, as a uniform radial annulus of thickness tice around the pipe. The annulus cross-sectional area is π·tice·(Do + tice) in square inches; dividing by 144 converts to square feet, and multiplying by the ice density gives weight per foot of run:

wice = ρice · π · tice · ( Do + tice ) / 144

Snow, as a design pressure acting on the projected width of the iced pipe. The projection is the outside diameter plus ice on both sides; dividing by 12 converts inches to feet, so the pressure in psf becomes a line load in lb/ft:

wsnow = pf · ( Do + 2 · tice ) / 12

wadded = wice + wsnow

wtotal = pipe weight + wadded

where Do is the outside diameter including insulation and jacketing — ice forms on whatever is actually exposed to the weather, and an insulated line collects a larger annulus on a larger circumference than the bare pipe would. The pipe weight input is the bare pipe plus contents plus insulation in lb/ft; entering 0 reports the added atmospheric load alone, which is what you want when you are handing an incremental load case to a stress model that already carries the pipe weight.

Both material values are yours from ASCE 7. The ice density is the design value that standard specifies for atmospheric icing — it is meaningfully less than solid ice, because accreted glaze is not solid, and using a textbook density for pure ice overstates the load. The design snow pressure pf comes from the ground snow load for the site with the standard's exposure, thermal and importance factors applied. Neither is embedded here.

The engine validates that the diameter is positive and that thickness, snow pressure and pipe weight are non-negative, and that the ice density is positive whenever an ice thickness is entered. Setting tice = 0 suppresses the ice term and pf = 0 suppresses the snow term, so a single card covers the ice-only case, the snow-only case and the combined case. Status is always COMPUTED — this is a load generator, and there is no pass or fail until the load reaches a span, a support or a stress check.

Inputs
DoOutside diameter including insulation and jacketingin
tIceRadial design ice thickness from ASCE 7 for the site — user-supplied; 0 = no ice casein
rhoIceDesign ice density from ASCE 7 — user-suppliedlb/ft³
pfDesign snow pressure for the site — user-supplied; 0 = no snow casepsf
pipeWeightBare pipe + contents + insulation weight; 0 = report added load onlylb/ft
Outputs
wIceIce line load from the radial annuluslb/ft
wSnowSnow line load on the projected widthlb/ft
wAddedIce + snowlb/ft
wTotalPipe + contents + ice + snow; equals wAdded when pipe weight is 0lb/ft

Limitations — what this calculator is not

Quick reference — why small pipe is the problem

The same ice thickness is a completely different load case depending on line size, because ice weight tracks diameter while pipe weight tracks diameter times wall. Values below are the equations on this page evaluated at 0.5 in radial ice and 56 lb/ft³, against standard schedule 40 empty pipe weights:

Line sizeBare pipe (sch 40, empty)Ice at 0.5 in radialIce as a fraction of pipe weight
NPS 2 (2.375 in)≈ 3.7 lb/ft≈ 1.75 lb/ft≈ 48% — the governing case, on the lightest supports and the longest relative spans.
NPS 6 (6.625 in)≈ 19 lb/ft≈ 4.35 lb/ft≈ 23%
NPS 12 (12.75 in)≈ 49.6 lb/ft≈ 8.09 lb/ft≈ 16%
NPS 24 (24 in)≈ 171 lb/ft≈ 14.96 lb/ft≈ 9% — real, but rarely what governs the design of a header.

The pattern inverts the intuition that big lines carry big loads. On a rack where every line gets the same ice, the small-bore piping absorbs the largest proportional increase — and it is the small-bore that is routinely supported at generous spans off light steel, sized by handling rather than by stress, and left out of the load schedule. If you run this check on one line size, run it on the smallest one.

Worked example — fixture-verified

An NPS 12 bare line (12.75 in OD, no insulation) on an outdoor rack in a cold climate. ASCE 7 gives a design radial ice thickness of 0.5 in at a design ice density of 56 lb/ft³ for the site, with a design snow pressure of 20 psf. The pipe weight is left at zero so the card reports only the atmospheric load being added to the existing weight case.

Given
Outside diameter Do12.75in
Radial ice thickness0.5in
Ice density56lb/ft³
Design snow pressure pf20psf
Pipe weight0 (added load only)lb/ft

Step by step

  1. Ice annulus area: π · tice · (Do + tice) = π · 0.5 · (12.75 + 0.5) = π · 0.5 · 13.25 = 20.81305 in².
  2. Convert to square feet: 20.81305 / 144 = 0.1445351 ft² of ice per foot of run.
  3. Ice line load: wice = 56 · 0.1445351 = 8.094 lb/ft.
  4. Projected width for snow: Do + 2·tice = 12.75 + 1.0 = 13.75 in, which is 13.75/12 = 1.1458333 ft.
  5. Snow line load: wsnow = 20 · 1.1458333 = 22.917 lb/ft.
  6. Total added: 8.094 + 22.917 = 31.011 lb/ft, and with pipe weight entered as 0 the total equals the added load.
Result COMPUTED
wIce — ice line load8.094lb/ft
wSnow — snow line load22.917lb/ft
wAdded — ice + snow31.011lb/ft
wTotal — total line load31.011lb/ft

Two things are worth noticing. First, the snow dominates — 22.9 lb/ft against 8.1 lb/ft — because a 20 psf pressure over a 13.75 in projected width is simply a lot of load, and this is the usual result on a line of this size. Second, and this is the point of reporting them separately: whether 31.011 lb/ft is the right number depends entirely on whether your project combines full ice with full snow. Taking the worse of the two instead gives 22.917 lb/ft, which is 26% less. That is a specification decision, and it belongs on the load schedule rather than buried in a calculation.

Why you can trust these numbers: this exact case is fixture snow-ice-load.json — case “NPS 12 bare, 0.5 in ice (56 pcf) + 20 psf snow” (tolerance 0.01) — in the calc-core release gate. It re-runs on every commit; a red fixture blocks deployment. See the validation methodology.

Worked example 2 — the same load case with pipe weight included

The identical line and the identical weather, but now the bare pipe weight is entered so the card returns the complete gravity load a support has to carry. NPS 12 schedule 40 empty is about 49.6 lb/ft; entering it here gives the total rather than the increment.

Given
Outside diameter Do12.75in
Radial ice thickness0.5in
Ice density56lb/ft³
Design snow pressure pf20psf
Pipe weight49.6lb/ft

Step by step

  1. The atmospheric loads are unchanged — they depend only on the geometry and the ASCE 7 values: ice 8.094 lb/ft, snow 22.917 lb/ft, added 31.011 lb/ft.
  2. Add the pipe weight: wtotal = 49.6 + 31.011 = 80.611 lb/ft.
  3. Ice and snow together have increased the gravity load on this run by 31.011/49.6 = about 63%.
  4. Status is COMPUTED — this is the load a span check consumes, not a verdict.
Result COMPUTED
wAdded — ice + snow31.011lb/ft
pipeWeight — bare pipe entered49.6lb/ft
wTotal — total line load80.611lb/ft

A 63% increase on the gravity load is the whole argument for running this check. Support spans and spring hangers sized on 49.6 lb/ft are being asked to carry 80.6 lb/ft, and midspan deflection scales directly with the distributed load — so a span that sagged an acceptable amount bare will sag about 63% more under the design ice and snow event. That is enough to matter on a deflection-limited span, and more than enough to matter on a spring hanger whose travel range was set without it. Take this number into the support span calculator and re-check the spans rather than assuming the original layout absorbs it.

Fixture case “with pipe weight added” (tolerance 0.01) — locked in the same release gate as the example above.

Sources & citations

Per the source & citation policy, allowable-stress and factor table values are user-supplied. Where a page does reproduce specific ASME data (the B16.5 ratings, the quick-reference tables), it does so under ASME authorization and states the source table and conditions inline.

FAQ

Should I add snow and ice together, or take the worse of the two?

That is a project decision and both practices are defensible, which is why the card reports them separately and warns rather than choosing for you. The argument for the worse-of-two is meteorological: a design ice accretion event and a design snow event are different weather, and requiring both to occur at full design magnitude simultaneously is a conservatism most specifications do not carry. The argument for the sum is that a rack in a cold climate genuinely does accumulate snow on top of iced pipe, and the combination is not rare. Check what your project's load definitions and the owner's engineering specification say. Whichever you use, put it on the load schedule so the next engineer does not have to reverse-engineer it.

Does the ice thickness go on the bare pipe OD or the insulated OD?

The insulated OD, including any metal jacketing — enter that as Do. Ice forms on whatever surface is exposed to the weather, so an insulated line collects its annulus on a larger circumference and carries more ice than the bare pipe would. The effect is not small: on an NPS 8 line, 2 in of insulation plus jacket takes the exposed diameter from about 8.6 in to about 12.9 in, and the ice load with it. The same widened diameter also increases the snow projection, and — separately — the wind projection.

Why is the design ice density lower than the density of ice?

Because accreted atmospheric ice is not solid ice. Glaze and rime build with entrapped air and an irregular structure, so the design density ASCE 7 specifies for atmospheric icing is meaningfully below the roughly 57 lb/ft³ of solid ice, and considerably below it for rime. Using a solid-ice or textbook value overstates the load. The standard's value is the one calibrated to what actually accretes, and it is a user input here precisely so you take it from the governing edition rather than from a physical-properties table.

How does ice interact with the wind load?

In two ways, and only one of them is intuitive. The obvious one: ice widens the projected area the wind acts on to Do + 2·tice, so the same wind speed produces a larger force. The less obvious one: ASCE 7 does not pair the design ice with the basic wind speed of Chapter 26 — it specifies a lower concurrent wind speed for the ice load case, on the grounds that the design ice event and the design windstorm are not the same event. Using the full basic wind speed together with full design ice double-counts a conservatism the standard has already resolved. Take the ice-widened diameter and the concurrent speed into the ASCE 7 wind load calculator, and keep that case separate from the ordinary wind case.

Is this a sustained load or an occasional load?

It depends on your project's load definitions, and the distinction has real consequences because occasional loads get the increased allowable of ASME B31.3 ¶302.3.6 while sustained loads do not. Ice and snow are dead weight while they are present, which argues for treating them in the sustained case; they are also transient and infrequent, which argues for the occasional case. Practice varies, and some specifications split the difference — a nominal ice allowance carried in the sustained case with the full design event treated as occasional. Whichever your project uses, apply it consistently between the stress model, the support design and the structural loads handed to the civil discipline, because that boundary is where the load most often gets dropped.

What do I do with the lb/ft once I have it?

Add it to the distributed weight in the gravity load case and re-check what that case governs. Two checks matter most. Support spans: midspan deflection and bending stress both scale directly with the distributed load, so a 63% increase in load is a 63% increase in sag on the same span — run it through the support span calculator. And spring hangers: a variable spring sized on the operating weight will see a different load with ice on the line, which changes its variability and can take it outside the acceptable range, so check it with the spring variability calculator. Beyond the piping, the added load goes to the rack steel, and that is a structural check rather than a piping one.

Related calculators

Open this calculator → All calculators