What this code requires
CRC R325.1.2 requires every habitable room to have openings to the outdoors, through windows, skylights, doors, louvers or other approved openings, with an openable area of at least 4 percent of the room’s floor area. Habitable rooms are spaces for living, sleeping, eating or cooking, so kitchens count; bathrooms, closets, halls and utility spaces don’t. Rooms other than kitchens can skip natural ventilation where a whole-house mechanical ventilation system, or one producing 0.35 air changes per hour, is installed per the California Mechanical Code. Kitchens can skip it with a local exhaust system. The 8 percent natural light rule is the companion R325.1.1, covered with the combined calcs under CRC R325.1.
How to fix it
Calculate the 4-percent threshold for each habitable room
For every habitable room on the project (bedrooms, living rooms, dining rooms, offices, dens), multiply the floor area in square feet by 0.04. That’s your required openable window area. Write this out in a ventilation schedule on the plans — a simple table with columns for Room Name, Floor Area (SF), Required Openable Area (SF), and Provided Openable Area (SF). Plan-checkers need to see the math, not just the windows.
Verify the openable area of each window, not the total glazing
Total window size isn’t the number that counts. Only the portion that actually opens matters. For double-hung windows, that’s typically half the total glass area. For casement windows that swing fully open, you can generally count the full light. For single-hung windows, count only the lower operable sash. Check the manufacturer’s spec sheet or window schedule on the plans to confirm the openable fraction for each unit you’re calling out. When in doubt, use the smaller number.
Size up windows that fall short or switch to mechanical ventilation
If a room’s windows don’t hit the 4-percent threshold, you have two options. First, upsize one or more windows until the openable area meets the threshold — show the revised window size on the floor plan and window schedule, and update the ventilation calc. Second, specify a whole-house mechanical ventilation system (or one producing 0.35 air changes per hour in the habitable rooms); kitchens still need natural ventilation or a local exhaust system. If you go mechanical, call out the unit, its CFM rating, and the ducting path. The system must meet the California Mechanical Code or ASHRAE 62.2 as adopted. Either path is valid; just pick one and document it fully.
Add a ventilation compliance note to each room on the floor plan
Once the calc works, tie it directly to the plan sheets. On the floor plan, add a note at each habitable room: for example, “Bedroom 1: 156 SF floor area, 6.24 SF openable required, 7.5 SF provided via W-101 and W-102.” If the room uses mechanical ventilation, the note should reference the equipment schedule item. This makes the plan-checker’s job straightforward and avoids back-and-forth requests for clarification.
Check converted spaces: garages, bonus rooms, and covered patios
Any space being converted to habitable use needs R325.1.2 documentation even if it’s labeled as “office” or “flex space.” For garage conversions, the existing window (if any) is often too small. Take the converted floor area, apply the 4-percent calc, and show clearly whether the existing window qualifies or whether you’re adding glass. For covered patio conversions, confirm whether the space is fully enclosed — open-air patios don’t need R325.1.2, but a closed patio addition becomes habitable space and does.
Include a ventilation schedule or table on the plans before resubmittal
Don’t rely on inline notes alone. Add a ventilation schedule to the architectural sheets (typically the floor plan or a dedicated code compliance sheet) that lists every habitable room, its floor area, required openable area, provided openable area or mechanical ventilation spec, and the code reference. This is the single document the plan-checker will go to when verifying R325.1.2, and having it in one place avoids scattered notes across multiple sheets. If you’re using mechanical ventilation for any rooms, cross-reference the equipment schedule item number.
Take the CRC R325.1.2 fix steps with you
All 6 steps in one email, so you have them on site instead of on this page.
Why you got flagged
Here’s why plan-checkers flag R325.1.2: it applies to every habitable room in the project, so one underdocumented room is enough to generate a correction.
The most common trigger is a room addition where the designer shows the window on the floor plan but never calculates whether the openable area reaches 4 percent of the floor area. A 12 x 14 room has 168 square feet of floor area, so it needs at least 6.72 square feet of openable area. A single 3 x 4 window provides 12 square feet of total glass, but if it’s a double-hung and only the lower half opens, the openable area is about 6 square feet. That’s just below the threshold, and plan-checkers are trained to catch exactly that gap.
ADU conversions are the second major source. A garage converted to living space often has one small window that served the original storage use. Designers carry that window forward without running the 4 percent calc. When the plan-checker does the math and the room fails, the letter asks for a larger opening or for one of the mechanical alternatives in the exception: a whole-house mechanical ventilation system, or a system producing 0.35 air changes per hour in the habitable rooms, installed per the California Mechanical Code.
A third pattern involves rooms labeled “office,” “study” or “flex” on the plans. Those are still habitable space under the CRC definition, so they need the same documentation as a bedroom. Kitchens also count, and a kitchen without enough openable area needs a local exhaust system per the CMC to use the kitchen exception.
Finally, plans that say “ventilation per code” without numbers get flagged immediately, and so do rooms that rely on a covered patio or an adjoining room for air without showing the conditions the code sets for those arrangements. Plan-checkers need to see room area, openable area and the resulting percentage, or a callout to the mechanical system the exception relies on.
The official code
2025 California Residential Code R325.1.2 — Natural Ventilation of Habitable Rooms (CA BSC Codes page)
Read the source →