What this code requires
CRC R905 is the California Residential Code section governing how roof coverings must be installed. It requires matching the roofing material to the roof slope, using the correct number of underlayment layers, and detailing flashing at every valley, wall intersection, and penetration. Single-family and ADU permits get flagged under R905 when the roof plan skips underlayment specs or leaves flashing details off the drawings.
How to fix it
Confirm roof slope on every affected plane
Pull the roof plan and read the slope annotation on each plane. For asphalt shingles the minimum is 2:12; for clay or concrete tile it is typically 2.5:12 or 4:12 depending on the product. If any plane is below the minimum for the specified material, you have two options: change the roofing product to one that is listed for that slope (a low-slope shingle or a modified bitumen system), or revise the framing plan to increase the pitch. Do not just annotate a higher slope than what is built — the inspector will catch it.
Specify underlayment type and layer count on the roof plan
Add a roofing notes block to the roof plan sheet. For asphalt shingles at 4:12 and steeper, specify one layer of ASTM D226 Type I felt (No. 15) or an approved synthetic underlayment. For slopes from 2:12 up to less than 4:12, specify two layers per Table R905.1.1(2): a half-width starter strip at the eave, then full sheets lapped half a sheet plus 2 inches. For tile, the requirements vary by product but typically require at least one layer of ASTM D226 Type II felt (No. 30) with a secondary water-resistive barrier at the eave. Reference the specific product listing — some tile systems require a hot-mop or torched-on base sheet. Write it out; do not just say "per manufacturer."
Add a valley flashing detail sheet
Valleys are one of the top flashing items the plan-checker looks for. R905 permits open-cut metal valleys, woven valleys, or closed-cut valleys for shingles, but each has specific material and width requirements. Open metal valleys for shingles need a lining at least 24 inches wide of a metal listed in Table R905.2.8.2, such as 26-gauge (G90) galvanized steel. Draw a section detail at 1:10 or larger showing the valley flashing type, width, material, and how it laps the underlayment on both sides. Label it on the roof plan.
Detail step flashing at every wall-to-roof intersection
Any place a roof plane meets a vertical wall (parapet, dormer, exterior wall, chimney) needs step flashing. Per R905, each piece of step flashing must extend at least 4 inches up the vertical surface and 4 inches onto the roof deck, with counterflashing or reglet flashing at the wall. Add a 3/4-inch or 1/4-inch scale section detail showing the step flashing configuration and the waterproofing at the head of the flashing. If there is a cricket behind a chimney wider than 30 inches, call that out separately.
Show flashing at each roof penetration
Every pipe, vent, skylight, and HVAC curb that punches through the roof deck needs a listed flashing assembly. For pipes, specify a listed pipe boot flashing (EPDM or PVC collar) sized to fit the pipe diameter. For skylights, reference the manufacturer-listed flashing kit and note that the curb height must meet the minimum 4 inches above the finished roof surface. For HVAC curbs, show a counterflashing detail. Add a note on the roof plan that says 'All roof penetrations to use listed flashing per manufacturer installation instructions' and supplement with at least one detail section.
Call out the nailing schedule and wind exposure
R905 requires fastening per the roofing product listing. The listing specifies nails by gauge, length, and head diameter, plus the pattern (4-nail vs. 6-nail for high-wind). Look up the wind speed for your project site on the ASCE 7 wind map (the project's structural calcs will have this) and confirm whether the project is in a High Wind Zone requiring the enhanced fastening pattern. Add a roofing notes callout on the roof plan: for example, 'Asphalt shingles: 4 nails per shingle per manufacturer listing; 6 nails per shingle in Wind Exposure C or High Wind Zone areas.'
Verify the ice-and-water shield zone if applicable
California projects at higher elevations or in climate zones where freezing temperatures are expected need an ice-and-water shield (self-adhering polymer-modified bitumen membrane) at the eave. R905.1.2 requires it where the jurisdiction's Table R301.2 designates a history of ice forming along the eaves. For most coastal Orange County projects this does not apply, but mountain properties in the permit area do need it. Check the project's climate zone designation and, if applicable, add a note specifying the ice-and-water shield from the eave edge up the roof deck to a point at least 24 inches inside the exterior wall line.
Resubmit with a revised roofing schedule and detail index
On your cover sheet or general notes page, add a roofing assembly schedule that lists each roof plane, the slope, the roofing product, the underlayment system, and the flashing detail reference number. Then build a detail index that points to each detail sheet for valleys, step flashing, penetrations, and eave conditions. Plan-checkers review faster when the information is organized in one place. A clear schedule cuts a second round of corrections on this item.
Take the CRC R905 fix steps with you
All 8 steps in one email, so you have them on site instead of on this page.
Why you got flagged
Here is why plan-checkers flag R905 corrections most often.
The roof plan shows a shingle or tile product but does not call out the underlayment type or number of layers. CRC R905.2 (asphalt shingles) requires at least one layer of ASTM D226 Type I felt or an approved synthetic on slopes of 4:12 and steeper, and two layers on slopes from 2:12 up to 4:12. When the drawings just say "reroof per manufacturer" without specifying the underlayment, the plan-checker has no way to confirm compliance and will flag it.
A second common trigger is missing or incomplete flashing callouts. R905 requires step flashing at every wall-to-roof intersection, valley flashing at every valley, and through-flashing or a listed assembly at each pipe, skylight, and mechanical penetration. Drawings that show a roof plan with no flashing detail sheets get flagged every time.
Slope conflicts trip up a lot of plans on low-pitch roofs. Asphalt shingles have a minimum slope of 2:12 with double underlayment, and a hard floor of 2:12 even with special installation. If the plans show a 1.5:12 slope with standard shingles, R905.2 is flagged on the spot. The fix is either changing the roofing product to one rated for that slope or revising the structural drawings to bump the pitch.
Finally, fastener callouts get skipped. R905 ties fastening schedules directly to the product listing and wind exposure category. A plan that specifies the shingle brand but does not reference the nailing pattern from the manufacturer installation instructions, or does not note the wind zone, leaves the reviewer no choice but to write a correction.
The official code
2025 California Residential Code — Chapter 9 Roof Assemblies, Building Standards Commission
Read the source →