Original research · Building code
The Ice Barrier Line
Everyone wants a map of where ice and water shield is required. The code does not contain one, and this page explains what it contains instead.
Written by HyreRoof Research Primary-source research and fact checking
The finding
What an ice barrier is actually for
Start with the failure, because the code section only makes sense as a response to it. An ice dam is not a weather event. It is a heat event that happens to involve snow.
Snow sits on a roof. Heat escaping from the conditioned space below, through gaps in the ceiling plane, through under-insulated attic floor, through leaky ducts and recessed lights, warms the underside of the deck above the heated part of the house. Snow in contact with that warmed deck melts, even while the outside air is well below freezing.
The meltwater runs down the roof under the snowpack until it reaches the part of the roof that is not over heated space: the overhang past the exterior wall, the eave. That surface is at the outdoor temperature. The water refreezes there and builds a ridge of ice, and the next meltwater ponds behind it.
That ponded water is the problem. Standing water finds its way under shingles, which are a shedding system and not a waterproof one, asphalt shingles are lapped to shed water running downhill, and they have no defence against water sitting still or pushed uphill by capillary action.
It runs into the sheathing, down the top plate of the wall, into the insulation and out through the ceiling, and the homeowner sees a stain on the bedroom ceiling in February and blames the roof covering.
The ice barrier is a membrane, not a shingle accessory. Two layers of underlayment cemented together, or more usually now a self-adhering polymer-modified bitumen sheet: a peel-and-stick rubberised asphalt membrane that bonds to the deck and self-seals around the shank of every nail driven through it. It does not stop ice forming. It makes the part of the roof most likely to be underwater behave like a waterproof roof rather than a shedding one.
Two things follow from the mechanism, and both matter more than the map everybody asks for. First, the geometry of the requirement is about the wall, not the roof. The dam forms where heated space stops, so the membrane has to run past that line and up into the heated zone, hence "24 inches inside the exterior wall line" rather than "36 inches from the eave". A house with a deep overhang needs a wider run of membrane than a house with a clipped one, and a specification written in feet from the gutter can be perfectly compliant on one house and non-compliant on the next.
Second, an ice barrier treats the symptom. The cause is heat and air leaking into the attic, and the fix for that is air sealing, insulation and adequate roof ventilation. A ventilation shortfall will keep making ice dams under a perfectly installed membrane; the membrane will just stop them from ruining the ceiling for a while. Our ventilation calculator works out the net free area a roof of a given size needs, which is the other half of this conversation.
The words the code uses, and what they mean
- Ice barrier
- The code’s own term for what the trade calls ice and water shield. R905.1.2 defines it by construction, not by brand: not fewer than two layers of underlayment cemented together, or a self-adhering polymer-modified bitumen sheet used in place of normal underlayment.
- Ice dam
- A ridge of ice at the cold eave of a roof, formed by meltwater from snow that was melted by heat escaping through the roof deck over the heated part of the house, and refrozen where the deck is no longer warm.
- Exterior wall line
- The plane of the outside face of the building’s exterior wall. The code measures the ice barrier inward from this line, which is why the required run of membrane depends on how far the roof overhangs.
- Eave
- The lower edge of a roof, including the part that projects beyond the exterior wall. The overhang is unheated from below, which is exactly why it is where ice forms.
- Underlayment
- The sheet material laid on the deck under the roof covering. Ordinary underlayment is a secondary water barrier. It is not self-sealing around fasteners and is not what the ice barrier provision is asking for.
- Self-adhering polymer-modified bitumen sheet
- A peel-and-stick membrane of rubberised asphalt with a release film, which bonds to the deck and closes around nail shanks driven through it. This is what almost every jurisdiction sees installed when it asks for an ice barrier.
- Table R301.2
- The IRC’s climatic and geographic design criteria table. It is printed as a blank form. The adopting jurisdiction fills in ground snow load, wind speed, seismic category, frost line depth, termite probability, winter design temperature, flood hazard, air freezing index, mean annual temperature, and ICE BARRIER UNDERLAYMENT REQUIRED, as YES or NO. Called Table R301.2(1) in editions before 2021.
- Air freezing index
- Another cell in the same table: a cumulative measure of the severity and duration of below-freezing temperatures over a winter. It is a design input for frost protection, not the ice barrier trigger, but it is the closest thing to a climate number sitting next to the ice barrier cell.
What the section actually says, and which edition we read
Building code claims go stale, and a claim from the wrong edition is worse than no claim. So: the text below is Section R905.1.2 as printed in the 2021 Seattle Residential Code, which publishes the 2021 IRC in full with Seattle’s own amendments flagged. Seattle marks its amendments with a bracketed [S] and strikes deleted model text; R905.1.2 carries neither, so what follows is the model 2021 IRC language. We could not read the text at ICC’s own Digital Codes library, which returned an access refusal to every request we made on 3 September 2026.
"R905.1.2 Ice barriers. In areas where there has been a history of ice forming along the eaves causing a backup of water as designated in Table R301.2, an ice barrier shall be installed for asphalt shingles, metal roof shingles, mineral-surfaced roll roofing, slate and slate-type shingles, wood shingles and wood shakes. The ice barrier shall consist of not fewer than two layers of underlayment cemented together, or a self-adhering polymer-modified bitumen sheet shall be used in place of normal underlayment and extend from the lowest edges of all roof surfaces to a point not less than 24 inches (610 mm) inside the exterior wall line of the building.
On roofs with slope equal to or greater than 8 units vertical in 12 units horizontal (67-percent slope), the ice barrier shall also be applied not less than 36 inches (914 mm) measured along the roof slope from the eave edge of the building. Exception: Detached accessory structures not containing conditioned floor area."
Five things in that paragraph are routinely got wrong.
One: the trigger is a cross-reference, not a criterion. "As designated in Table R301.2" means the code has delegated the question. If your jurisdiction’s Table R301.2 says NO, R905.1.2 imposes nothing on you no matter how cold it gets.
Two: it is a list of coverings, and the list is finite. Asphalt shingles, metal roof shingles, mineral-surfaced roll roofing, slate and slate-type shingles, wood shingles, wood shakes. Clay and concrete tile, standing-seam metal panels and low-slope membrane systems are governed by their own sections with their own underlayment rules.
Three: 24 inches is measured from the wall, inward. Not from the eave, not from the gutter, not from the fascia. On a house with a 24-inch overhang the membrane has to cover four feet of roof measured up the slope before it satisfies the requirement, and on a steeply pitched roof the sloped distance is longer again than the horizontal one. A single 36-inch roll laid along the eave is a common way to fail this.
Four: "all roof surfaces" is plural on purpose. Every lower edge of every roof plane, including dormers, porch roofs and lower runs above bay windows, not only the main eave.
Five: the exception is narrower than people think. "Detached accessory structures not containing conditioned floor area" exempts an unheated detached garage or shed. An attached garage is not detached. A heated workshop is not unconditioned. And the exception makes physical sense: an unheated detached building has no heat loss to melt the snowpack, so it does not form ice dams the way a house does.
How the governing text has moved between editions
Editions differ, jurisdictions adopt different editions in different years, and a claim sourced to the wrong one is a stale-code error. Here is what we were able to verify, edition by edition, with the limits of each stated.
| Edition and section | The trigger | The required extent | Notes and limits |
|---|---|---|---|
| 2012 IRC, R905 and Table R301.2(1) | Areas with a history of ice forming along the eaves causing a backup of water, as designated in Table R301.2(1) | From the lowest edges of all roof surfaces to a point at least 24 inches inside the exterior wall line | Quoted verbatim in the Montana Building Codes Bureau advisory. The companion IBC section quoted in the same advisory carries an alternative numeric trigger the IRC does not have. |
| 2012 IBC, Section 1507 (one of two formulations) | Areas where the average daily temperature in January is 25°F or less, or where there is a possibility of ice forming along the eaves causing a backup of water | From the lowest edges of all roof surfaces to a point at least 24 inches inside the exterior wall line | The only quantitative line anywhere in this family of provisions. It is a commercial-code formulation, not the residential one, and it is a January mean, not a design low. |
| 2021 IRC, R905.1.2 (as printed in the 2021 Seattle Residential Code) | Areas with a history of ice forming along the eaves causing a backup of water, as designated in Table R301.2 | Not fewer than two layers of underlayment cemented together, or a self-adhering polymer-modified bitumen sheet, from the lowest edges of all roof surfaces to a point not less than 24 inches inside the exterior wall line. On roofs of 8:12 or steeper the ice barrier shall also be applied not less than 36 inches measured along the roof slope from the eave edge. | Exception: detached accessory structures not containing conditioned floor area. Applies to asphalt shingles, metal roof shingles, mineral-surfaced roll roofing, slate and slate-type shingles, wood shingles and wood shakes. |
| 2024 IRC, R905.1.2 (via code change RB262-22) | Unchanged: a history of ice forming along the eaves, as designated in Table R301.2 | The Montana Department of Labor and Industry’s own 2021-to-2024 update training reproduces the 36-inch steep-slope sentence with the word "also" removed and the paragraph split, while describing the change as removing a requirement that applied to roofs of 8:12 or greater. | We could not read the 2024 IRC text at ICC Digital Codes directly, see Limitations. Treat the steep-slope sentence as a question for your building official rather than as settled, and do not assume the 2024 edition applies to you at all until you have checked what your jurisdiction adopted. |
The single most important practical consequence of this table is that you cannot answer an ice barrier question from "the IRC" alone. You need to know which edition your jurisdiction adopted, what it amended, and what its Table R301.2 says. Those are three separate lookups and only the building department has all three.
Seven jurisdictions, verified one at a time
We deliberately did not build a fifty-state map. We could not source one jurisdiction by jurisdiction, and a state-level colour for a requirement that is set below state level would be an invention with a legend on it. What we did instead was verify individual determinations against the adopting authority’s own published document, and the spread in that small sample is the finding.
At one end is Seattle, whose published Table R301.2 carries a flat "No" in the ice barrier column. Seattle has a 20 psf ground snow load, a 52.8°F mean annual temperature, a January mean of 42.8°F and 1.8 inches of January snow in the 1991–2020 normals. It is a wet, mild city that gets snow rarely and does not hold it. The determination is consistent with the climate.
At the other end is Grand County, Colorado, at roughly 8,200 feet, which did not merely tick YES. Its published amendment package rewrites R905.1.2 to require a self-adhering polymer-modified bitumen sheet on all sloped roofs, from the eaves to a point six feet inside the exterior wall: three times the model code’s 24 inches, plus 24 inches from the centreline of every valley, fully adhered, on all habitable structures. A roof built to the model code in that county would fail inspection by a wide margin.
Between those two the sample is more interesting than a climate map would predict. Montana settled the question for the entire state in a 2016 technical advisory from its Building Codes Bureau, on the reasoning that conditions "throughout the entire State of Montana" produce ice formation: a statewide YES issued as an interpretation rather than as fifty separate table entries.
The Capitol Region Council of Governments in Connecticut publishes "Yes*" with the asterisk defined on the same page as "Established by the jurisdiction", which is the clearest published admission we found anywhere that this cell is a decision and not a reading. And the Town of Mamaroneck, New York says YES on a 25 psf ground snow load and a 52.2°F mean annual temperature: a materially milder set of design criteria than several places that could equally have said no.
HyreRoof analysis: Mamaroneck and Seattle publish mean annual temperatures within 0.6°F of each other (52.2 and 52.8) and reach opposite determinations. That is not an inconsistency to be corrected. It is the provision working exactly as drafted: Mamaroneck has a snow-and-freeze winter and a documented history of eave ice, and Seattle has a rain winter and does not, and no annual average can tell those two climates apart.
The verified determinations
Each row is sourced to the jurisdiction’s own published document, numbered against the source list at the foot of this page. This is a sample, not a census, and it is not representative of anything by design.
| Jurisdiction | Level | Edition or document read | Ice barrier required? | What the document actually says | Src |
|---|---|---|---|---|---|
| Seattle, Washington | City | 2021 Seattle Residential Code | No | Table R301.2 as published in the 2021 Seattle Residential Code carries "No" in the ICE BARRIER UNDERLAYMENT REQUIRED column, alongside a 20 psf ground snow load and a 52.8°F mean annual temperature. The table is marked [S], the code’s own flag for a Seattle amendment; Section R905.1.2 immediately downstream of it carries no such flag. | 2, 3 |
| State of Montana | State, whole jurisdiction | 2012 IBC and 2012 IRC at the time of the advisory | Yes | Technical Advisory T1-16, issued by the Building Codes Bureau of the Montana Department of Labor and Industry on 28 September 2016, answers the question directly: ice barrier underlayment is required for new and re-roof installations in Montana, because "weather conditions throughout the entire State of Montana are certainly conducive to and definitively produce ice formation". | 4 |
| Grand County, Colorado | County | 2021 IRC with county amendments | Yes, amended and enlarged | The county’s published amendment package rewrites R905.1.2 outright: a self-adhering polymer-modified bitumen sheet on all sloped roofs, from the eaves to a point 6 feet inside the exterior wall: three times the model code’s 24 inches, plus 24 inches from the centreline of all valleys, fully adhered, on all habitable structures. | 5 |
| Durango, Colorado | City | Published Table R301.2 | Yes | ICE BARRIER UNDERLAYMENT REQUIRED: YES, against a 40–60 psf ground snow load, a 32-inch frost line, an air freezing index of 1,500 and an elevation of 6,670 feet. | 6 |
| Duchesne County, Utah | County | Published Table R301.2(1) | Yes | ICE BARRIER UNDERLAYMENT REQUIRED: Yes, with a 30-inch frost line, a −2°F winter design temperature, an air freezing index of 2,841 and a note that ground snow load varies with elevation and must be taken from the Utah State University snow load tool. | 7 |
| Town of Mamaroneck, New York | Town | Published Table R301.2 | Yes | ICE BARRIER UNDERLAYMENT REQUIRED: YES, with a 25 psf ground snow load, a 42-inch frost line, an air freezing index of 1,500 and a 52.2°F mean annual temperature: a milder climate than several jurisdictions that could equally have said no. | 8 |
| Capitol Region, Connecticut | Regional council of governments | Published Table R301.2(1) | Yes* | ICE BARRIER UNDERLAYMENT REQUIRED: Yes*, with the asterisk defined on the same page as "Established by the jurisdiction": the clearest published statement anywhere in our sample that this cell is a local decision rather than a climatic reading. | 9 |
Six of the seven say yes and one says no, and that is a property of how we found them rather than of the country: jurisdictions that publish a standalone ice barrier handout are jurisdictions that get asked about it. Do not read a national proportion out of this table. Read the range.
The climate the criterion is supposed to be tracking
If the code will not draw the line, the climate record at least shows where a line could sensibly go. The IRC gives no number. The IBC formulation quoted in the Montana advisory does: "areas where the average daily temperature in January is 25 degrees F or less". That is the only quantitative trigger anywhere in this family of provisions, and it is a January mean rather than a design low.
HyreRoof analysis. We pulled the 1991–2020 monthly normals for 62 first-order stations from NOAA. 16 of them have a January mean temperature at or below 25°F. Chicago sits on the line almost exactly, at 25.2°F, which is a useful thing to know about a criterion that was written decades ago and has not moved since: the country’s third city is a rounding error from the threshold.
But a temperature threshold on its own is the wrong instrument, and the scatter above shows why. Two variables have to be present at once. There has to be snow on the roof, and the eave has to be below freezing while the upper deck is above it. Applying both, January mean at or below 32°F and at least three inches of January snowfall, a screen we chose for being crude enough to argue with, brings 33 of the 59 stations with a published snowfall normal into scope.
The stations the screen excludes are the interesting ones. 0 stations are at or below freezing in January and still get less than three inches of January snow, Grand Junction at 27.7°F and 4.5 inches is close to the boundary, and Wichita, Denver and Boise sit in the cold-and-dry group in various ways. Cold with no snowpack does not make an ice dam. Meanwhile 8 stations get real January snow above a 32°F January mean, where snow arrives and leaves before it can be worked on by a full melt-freeze cycle.
Why freeze–thaw counting does not answer it either
The obvious next move is to count the days the temperature crosses freezing, since freezing and thawing is what an ice dam does. We built that measure and it does not work, and the reason it does not work is worth the space.
HyreRoof analysis. Denver has the most freeze–thaw crossing days in our sample, 91 between December and March, more than any station in New England or the upper Midwest, because a dry, sunny, high-altitude winter day routinely starts below freezing and ends above it.
Grand Junction is second at 84. Albuquerque is above Buffalo. Casper is above Syracuse. Meanwhile Duluth has only 32 crossing days, and Fargo 36, because in a genuinely cold place the temperature does not bother crossing the line: it stays under it for weeks.
Duluth gets 16.8 inches of snow in January and Fargo 10.3. Denver gets 6.4 and Grand Junction 4.5. Crossing days measure the air, and ice dams are made by the roof. What melts the snowpack in a real ice dam is heat leaking out of the house, not a sunny afternoon, which is precisely why the roof can be melting at the ridge while the air outside has not been above freezing in a fortnight.
A station in northern Minnesota that never thaws all winter is an ice dam machine; a station in Colorado that thaws every afternoon and has three inches of snow on the ground is not.
This is the strongest argument we can make for why the code says what it says. Every objective climate variable we tested, January mean, snowfall, days below freezing, crossing days, captures part of the mechanism and misses part of it, because the decisive variable is not in the weather record at all.
It is the thermal performance of the individual roof. A drafting committee that wanted a defensible national threshold would have had to pick one of these and be wrong in a predictable direction. Deferring to "a history of ice forming along the eaves", determined locally, is a less tidy rule and a more honest one.
The climate record, 62 stations
NOAA 1991–2020 US Climate Normals, coldest January first. The screen column is HyreRoof arithmetic, January mean at or below 32°F and January snowfall of three inches or more, and it is a description of climate, not a statement of what any jurisdiction requires.
| Station | January mean (°F) | January snowfall (in) | January days ≤ 32°F | Freeze–thaw days, Dec–Mar | HyreRoof screen |
|---|---|---|---|---|---|
| Fargo, ND | 9.2 | 10.3 | 30.8 | 36 | In scope |
| Duluth, MN | 11.2 | 16.8 | 30.8 | 32 | In scope |
| Bismarck, ND | 12.8 | 8.9 | 30.9 | 52 | In scope |
| Des Moines, IA | 15.7 | 11.3 | 30.7 | 51 | In scope |
| Minneapolis–St Paul, MN | 16.2 | 11.0 | 30.5 | 46 | In scope |
| Anchorage, AK | 16.9 | 12.4 | 30.3 | 37 | In scope |
| Madison, WI | 19.4 | 13.7 | 29.7 | 53 | In scope |
| Burlington, VT | 20.9 | 21.1 | 28.7 | 53 | In scope |
| Concord, NH | 22.3 | 17.1 | 29.9 | 70 | In scope |
| Lansing, MI | 23.9 | 14.3 | 28.3 | 55 | In scope |
| Portland, ME | 24.0 | 18.6 | 29.3 | 67 | In scope |
| Milwaukee, WI | 24.0 | 14.9 | 28.4 | 53 | In scope |
| Syracuse, NY | 24.1 | 34.0 | 27.7 | 57 | In scope |
| Albany, NY | 24.4 | 15.6 | 28.1 | 63 | In scope |
| Omaha, NE | 24.4 | 7.2 | 29.7 | 67 | In scope |
| Grand Rapids, MI | 24.8 | 22.6 | 28.1 | 55 | In scope |
| Casper, WY | 25.1 | 9.0 | 29.2 | 76 | In scope |
| Chicago, IL | 25.2 | 11.3 | 28.1 | 57 | In scope |
| Great Falls, MT | 25.2 | 9.2 | 26.9 | 71 | In scope |
| Buffalo, NY | 25.5 | 26.7 | 27.1 | 53 | In scope |
| Detroit, MI | 25.8 | 14.0 | 27.2 | 57 | In scope |
| Hartford, CT | 27.1 | 14.2 | 27.2 | 71 | In scope |
| Grand Junction, CO | 27.7 | 4.5 | 30.1 | 84 | In scope |
| Indianapolis, IN | 28.5 | 8.8 | 25.7 | 58 | In scope |
| Pittsburgh, PA | 28.8 | 13.3 | 25.4 | 60 | In scope |
| Kansas City, MO | 29.0 | 4.9 | 27.3 | 63 | In scope |
| Cleveland, OH | 29.1 | 18.4 | 25.8 | 56 | In scope |
| Spokane, WA | 29.6 | 12.3 | 25.9 | 65 | In scope |
| Columbus, OH | 29.6 | 9.5 | 24.9 | 58 | In scope |
| Boston, MA | 29.9 | 14.3 | 24.8 | 60 | In scope |
| Providence, RI | 30.2 | 10.3 | 26.2 | 72 | In scope |
| Salt Lake City, UT | 31.4 | 12.7 | 27.4 | 68 | In scope |
| Cincinnati, OH | 31.4 | 7.7 | 24.3 | 59 | In scope |
| Denver, CO | 32.1 | 6.4 | 29.6 | 91 | Out |
| St Louis, MO | 32.1 | 5.7 | 24.1 | 55 | Out |
| Boise, ID | 32.2 | 5.3 | 25.5 | 67 | Out |
| Wichita, KS | 33.2 | 2.7 | 27.7 | 70 | Out |
| New York, NY | 33.7 | 8.8 | 20.5 | 47 | Out |
| Philadelphia, PA | 33.7 | 7.1 | 22.5 | 58 | Out |
| Baltimore, MD | 34.3 | 6.4 | 24.0 | 69 | Out |
| Louisville, KY | 35.7 | 4.5 | 21.3 | 51 | Out |
| Albuquerque, NM | 37.4 | 1.4 | 26.1 | 76 | Out |
| Washington, DC | 37.5 | 4.9 | 19.5 | 48 | Out |
| Oklahoma City, OK | 38.2 | 1.8 | 21.8 | 55 | Out |
| Tulsa, OK | 38.5 | 1.9 | 21.5 | 55 | Out |
| Nashville, TN | 39.6 | 2.0 | 18.8 | 50 | Out |
| Little Rock, AR | 40.7 | 1.1 | 16.5 | 41 | Out |
| Raleigh, NC | 41.9 | 2.6 | 18.0 | 53 | Out |
| Portland, OR | 41.9 | 1.7 | 8.7 | 25 | Out |
| Charlotte, NC | 42.1 | 1.6 | 16.6 | 48 | Out |
| Seattle, WA | 42.8 | 1.8 | 7.0 | 21 | Out |
| Atlanta, GA | 44.8 | 1.0 | 12.8 | 31 | Out |
| Dallas–Fort Worth, TX | 46.3 | 0.1 | 10.6 | 25 | Out |
| Las Vegas, NV | 49.5 | 0.0 | 3.3 | 9 | Out |
| Memphis, TN | 51.1 | 0.0 | 8.0 | 19 | Out |
| San Francisco, CA | 51.3 | not published | 0.0 | 0 | , |
| Houston, TX | 53.8 | 0.0 | 4.1 | 9 | Out |
| New Orleans, LA | 54.3 | 0.0 | 2.9 | 5 | Out |
| Phoenix, AZ | 56.8 | not published | 0.4 | 1 | , |
| Los Angeles, CA | 57.9 | not published | 0.0 | 0 | , |
| Tampa, FL | 62.0 | 0.0 | 0.5 | 1 | Out |
| Miami, FL | 68.6 | 0.0 | 0.0 | 0 | Out |
Three stations, San Francisco, Phoenix and Los Angeles, publish no January snowfall normal and are shown as not published rather than as zero, because those are different claims. The freeze–thaw column is a HyreRoof derivation and is defined in the Method section; it is not a NOAA product and NOAA does not publish it.
What this means if you are having a roof done
- Ask the building department, not the internet, and ask for the table
The question that gets a definite answer is: "what does your Table R301.2 say in the ICE BARRIER UNDERLAYMENT REQUIRED cell, and which edition of the IRC are you enforcing?" Most departments publish the completed table as a one-page PDF. That single page settles the requirement for your address.
- Check whether your jurisdiction amended R905.1.2 as well as filling in the table
These are two separate acts. Grand County, Colorado both ticked YES and rewrote the section to demand six feet instead of 24 inches. A contractor working to the model code in an amended jurisdiction will fail inspection while being entirely correct about what "the IRC" says.
- Measure from the wall, and account for your overhang
The 24 inches is measured inside the exterior wall line. If your eaves project two feet, a single 36-inch roll along the edge does not reach the required line, and on a steep roof the sloped distance is longer still. Ask the estimate to state the coverage in courses or in feet up the slope, not in rolls.
- Ask about every lower edge, not just the front of the house
The section says "all roof surfaces". Dormer eaves, porch roofs, the lower run above a bay, the garage tie-in. These are the places an ice barrier gets quietly left off a quote and the places ice dams actually form.
- Treat valleys as a separate question
The model section does not mention valleys. Grand County’s amendment adds 24 inches from every valley centreline, and many contractors membrane valleys as standard practice regardless. Ask whether valleys are included and get the answer in writing rather than assuming either way.
- Fix the cause as well as the symptom
An ice barrier stops the water getting into your ceiling. Air sealing the attic floor, insulating it properly and ventilating the roof stops the snow melting in the first place. If you are re-roofing anyway, the deck is off and the attic is accessible, and it is the cheapest hour you will ever spend on this problem.
- Do not go up to look at the ice yourself
An iced roof edge in winter is the single worst surface in residential construction, and roofing already carries about fifteen times the average American worker’s fatal-injury rate on dry days. Our fatality atlas has the numbers. Look at the ceiling from inside and at the eave from the ground.
- Beware of anyone who shows you a national map of this
There is no national ice barrier map, because the requirement is not set nationally or even at state level. A map with fifty colours on it has either guessed from climate or generalised one city’s answer to a whole state. Neither will help you at your permit counter.
Method
Everything on this page is public and free. Here is exactly what we did and where each figure came from.
- 1 Decided in advance not to publish a map
The topic brief asked for a study and a map. We established early that R905.1.2 delegates its trigger to a jurisdiction-completed cell in Table R301.2, at which point a state-level map became indefensible. We recorded the deviation rather than producing the map, and this Method section is where it is stated.
- 2 Read the code text from an adopting jurisdiction, edition named
ICC’s Digital Codes library refused every request we made. We instead took the text from the 2021 Seattle Residential Code Chapter 9 PDF published by Seattle SDCI, which reproduces the 2021 IRC with Seattle amendments flagged by a bracketed [S] and strikethrough. R905.1.2 carries no such flag, so the text is the model language.
- 3 Cross-checked the older text against a state agency interpretation
Montana Building Codes Bureau Technical Advisory T1-16 (28 September 2016) quotes the 2012 IRC and 2012 IBC ice barrier language verbatim, including the IBC’s alternative 25°F January criterion, which does not appear in the IRC at all. That document is the source for both the 2012 rows in the editions table.
- 4 Sourced every jurisdiction determination to that jurisdiction
Seven determinations, each read from a document published by the adopting authority itself: a code chapter, an amendment package, a technical advisory or a completed Table R301.2. We did not accept any determination from a trade publication, a manufacturer or a contractor site, and we did not extrapolate any of them to a neighbouring jurisdiction.
- 5 Pulled the NOAA normals station by station
The 1991–2020 Monthly US Climate Normals access directory at NOAA NCEI, one CSV per station, 62 first-order stations chosen to span the temperature range from Fargo to Miami. We read MLY-TAVG-NORMAL and MLY-SNOW-NORMAL for month 01, and MLY-TMIN-AVGNDS-LSTH032 for January days at or below freezing.
- 6 Derived freeze–thaw crossing days
HyreRoof analysis: for each of December, January, February and March we took MLY-TMIN-AVGNDS-LSTH032 (days the minimum was at or below 32°F) and subtracted MLY-TMAX-AVGNDS-LSTH032 (days the maximum was also at or below 32°F). The difference is the number of days the air crossed freezing, and we summed the four months. NOAA does not publish this variable; it is ours, and it is arithmetic on two of theirs.
- 7 Applied one deliberately crude screen
HyreRoof analysis: January mean at or below 32°F and January snowfall of at least three inches. Two variables, one threshold each, chosen because both are necessary conditions for the physical mechanism and because a two-variable screen can be argued with. We did not build a weighted index. An index nobody can check is not research, and this one is designed to be checkable and, if you disagree with the thresholds, re-runnable.
- 8 Kept the climate screen and the code requirement in separate columns
Nothing on this page says a jurisdiction should require an ice barrier because our screen puts it in scope, or should not because it does not. The screen describes climate. The determinations table describes law. They are printed apart on purpose.
Limitations and retrieval failures
- We could not read the IRC at its publisher
Every request to codes.iccsafe.org on 3 September 2026 returned either an HTTP 403 refusal or a JavaScript shell with no code text in it. The 2021 text on this page therefore comes from Seattle’s published adoption of it, and the 2024 text comes second-hand from a state agency’s training material. If you need the authoritative text, it is at the publisher and behind that barrier.
- The 2024 IRC change is reported with a contradiction we did not resolve
The Montana Department of Labor and Industry’s 2021-to-2024 update training says Section R905.1.2 "has been revised to remove a requirement that applied to roofs with a slope of 8:12 or greater", and then reproduces code language that still contains the 36-inch steep-slope sentence, with the word "also" deleted. We have printed both statements rather than choosing between them. Do not rely on this page for the steep-slope rule under the 2024 IRC. Ask your building official.
- Seven jurisdictions is a sample and a biased one
We found these documents because the jurisdictions publish standalone ice barrier guidance, which is what a jurisdiction does when the question comes up a lot. Six of the seven say yes. That proportion means nothing about the country and we have said so beside the table as well as here.
- One of the seven documents is a proposal, not a confirmed adoption
The Grand County, Colorado amendment package we read is headed as a proposal to adopt the 2021 codes with an effective date of 1 July 2026, with commission hearings in March 2026. We could not confirm final adoption from the county’s own record on 3 September 2026. The six-foot amendment is real as a published county position; whether it is in force today is something we did not verify.
- The Montana advisory quotes the 2012 codes, not the current ones
Technical Advisory T1-16 is dated 28 September 2016 and reasons from the 2012 IBC and 2012 IRC. Its statewide conclusion is a determination about Montana’s climate rather than about a specific edition, and the underlying provision has not changed in substance since, but it is an older document and we have dated it rather than presenting it as current.
- Climate normals are averages, and ice dams are events
A 30-year normal tells you nothing about the winter you are about to have. A city well below our screen can produce a season of severe ice damming from one prolonged cold spell after a heavy snow, which is exactly what a "history of ice forming along the eaves" is meant to capture and a normal is not.
- One airport station is not a jurisdiction
Each row of the climate table is a single first-order station, usually an airport. Elevation, lake effect and urban heat move the real figure across a metropolitan area, sometimes by a great deal: the Colorado and Utah jurisdictions in our sample sit thousands of feet above the nearest reporting station.
- Three stations publish no January snowfall normal
San Francisco, Phoenix and Los Angeles. We have shown them as not published rather than as zero, and excluded them from the scatter and the screen. Several warm stations also carry NOAA measurement flags on months that round to zero, which is why we publish the January figure rather than an annual total built by summing flagged months.
- The freeze–thaw variable is ours and is a proxy for the wrong thing
It measures air temperature crossing freezing. The physical driver of an ice dam is heat loss through the roof deck melting snow while the eave stays cold, which no air temperature variable captures. We publish it because it is instructive about why a climate threshold cannot do this job, not because it should be used to decide anything.
- This page is not code advice
It is a description of how a provision is structured and what a small number of named authorities have published. The requirement at your address is whatever your building department enforces, and that is the only answer that has any legal weight.
Questions
Where is ice and water shield required by code?
Which IRC section covers ice barriers?
How far up the roof does an ice barrier have to go?
Is there a temperature that triggers the ice barrier requirement?
Does my state require ice and water shield?
What is an ice dam and how does it form?
Will an ice barrier stop ice dams?
Is ice and water shield required in valleys?
Does the requirement apply to a detached garage or a shed?
Which roof coverings does R905.1.2 apply to?
Can a jurisdiction require more than the IRC says?
Why is there no national map of ice barrier requirements?
Is a colder city always more likely to require an ice barrier?
Do freeze–thaw cycles predict where ice dams happen?
How do I check what my jurisdiction requires?
Can I reproduce the climate figures on this page?
Written and audited by
HyreRoof Research
Primary-source research, data analysis and fact checking
We are a research desk, not a sales floor. We read the statute, the licensing board’s own pages, the code section or the federal dataset ourselves, and we publish the figure with the document it came from and the date we retrieved it. Where a number cannot be traced to a primary source, we publish the shorter page and say what we could not verify. On our first study that rule removed a Minnesota exam statistic and left two states blank. Those gaps are on the page, not in a file somewhere.
- 36
- primary sources read and cited
- 16
- federal and state government domains
- 36
- citations carrying a retrieval date
- 3
- researched pages published
How this desk works
- Primary sources only. Statutes from the legislature’s own publishing system, licensing rules from the board that issues the licence, datasets from the agency that collected them. Never a directory, an aggregator or another guide.
- Three states, not two. A requirement is recorded as verified present, verified absent, or not verified. Most comparisons collapse the third into the second, which turns an unchecked cell into a factual claim.
- Retrieval dates on everything. Regulation changes. A citation without the date it was read is not a citation.
- Failures are published. When a source blocks automated retrieval we record the failure and leave the row empty, rather than filling it from a secondary summary.
- Authorship is organisational. Research is attributed to this desk, never to an invented expert. Outside commentary, where used, is attributed to named and verifiable people.
Data as of 3 September 2026. Authorship on this site is organisational: the analysis belongs to the desk rather than to a named individual, and we do not publish credentials we do not hold. Our editorial policy sets out how we source, date and correct what we publish.
Sources & retrieval dates
- City of Seattle SDCI, 2021 Seattle Residential Code, Chapter 9: Roof Assemblies , Section R905.1.2 Ice barriers, printed in full with its exception. Seattle amendments are flagged [S]. This section carries no flag, so the text is the 2021 IRC model language Retrieved 3 September 2026.
- City of Seattle SDCI, 2021 Seattle Residential Code, Chapter 3: Building Planning , [S] Table R301.2, Climatic and Geographic Design Criteria: ground snow load 20 psf, frost line 12 in, ICE BARRIER UNDERLAYMENT REQUIRED "No", mean annual temperature 52.8°F Retrieved 3 September 2026.
- Montana Dept of Labor and Industry, Building Codes Bureau, Technical Advisory T1-16, Ice Barrier Underlayment , Issued 28 September 2016; quotes the 2012 IRC and 2012 IBC ice barrier language verbatim including the IBC 25°F January criterion, and concludes ice barrier underlayment is required for new and re-roof work throughout Montana Retrieved 3 September 2026.
- Montana Dept of Labor and Industry, 2021 to 2024 IRC changes, Chapters 1–10 (training material, dated 6 March 2025) , Slide "Ice Barriers – 905", code change RB262-22: describes the 2024 revision to R905.1.2 and reproduces the current text Retrieved 3 September 2026.
- Grand County, Colorado, amendments to the 2021 International Residential Code , Section R905.1.2 amended to require a self-adhering polymer-modified bitumen sheet on all sloped roofs to 6 feet inside the exterior wall and 24 inches from all valley centrelines; Table R301.2(1) ICE BARRIER, YES; published as a proposal with an effective date of 1 July 2026 Retrieved 3 September 2026.
- City of Durango, Colorado, Table R301.2, Climatic and Geographic Design Criteria , Ground snow load 40–60 psf, frost line 32 in, ICE BARRIER UNDERLAYMENT REQUIRED "YES", air freezing index 1,500, elevation 6,670 ft Retrieved 3 September 2026.
- Duchesne County, Utah, Table R301.2(1), Climatic and Geographic Design Criteria , Frost line 30 in, winter design temperature −2°F, ICE BARRIER UNDERLAYMENT REQUIRED "Yes", air freezing index 2,841, mean annual temperature 45°F Retrieved 3 September 2026.
- Town of Mamaroneck, New York, Table R301.2, Climatic and Geographic Design Criteria , Ground snow load 25 psf, frost line 42 in, ICE BARRIER UNDERLAYMENT REQUIRED "YES", air freezing index 1,500, mean annual temperature 52.2°F Retrieved 3 September 2026.
- Capitol Region Council of Governments, Connecticut, Table R301.2(1) , Ground snow load 30 lbs, ICE BARRIER UNDERLAYMENT REQUIRED "Yes*", with the asterisk defined on the page as "Established by the jurisdiction" Retrieved 3 September 2026.
- NOAA NCEI, 1991–2020 US Climate Normals, monthly, station access directory , One CSV per station; MLY-TAVG-NORMAL, MLY-SNOW-NORMAL, MLY-TMIN-AVGNDS-LSTH032 and MLY-TMAX-AVGNDS-LSTH032 read for 62 first-order stations Retrieved 3 September 2026.
- NOAA NCEI, 1991–2020 Monthly Normals documentation , Variable definitions, measurement and completeness flags, and the normals calculation methodology used for the values above Retrieved 3 September 2026.
- ICC Digital Codes, 2021 and 2024 International Residential Code, R905.1.2 , RETRIEVAL FAILURE. Every request on 3 September 2026 returned HTTP 403 or a JavaScript shell containing no code text. Recorded here because the publisher is the authoritative source and we could not read it Retrieved 3 September 2026.
Working out what your roof needs?
The two calculators below will not tell you what your building department requires, only the building department can, but they will get you closer to a sensible conversation, and neither asks for your details.
HyreRoof does not perform roofing work and has no commercial relationship with any code body, jurisdiction, manufacturer or contractor named on this page. This page is general information, not code, legal or professional advice. What applies at your address is whatever your building department enforces. Every quotation carries its edition, our own arithmetic is labelled "HyreRoof analysis", and our editorial policy explains how we correct errors.