Crawl Space (Under-Floor) Ventilation Net Free Area

attic-ventilation does the roof; nothing did the floor.

Run the calculator

Example

You enter

You get

Details, formula, and sources

IRC R408.1 wants 1 sq ft of NET FREE area per 150 sq ft of under-floor area, with an opening within 3 ft of each corner -- but covering the ground with an approved Class I vapor retarder AND arranging the openings for cross ventilation drops it to 1/1500, a TEN-fold cut, because the ground is where nearly all the moisture comes from. A 1,500 sq ft crawl needs 1,440 sq in and 29 vents bare; with a retarder it needs 144 sq in and just 4, at which point the CORNER rule governs instead of the area. Net free area is product data off the vent and is far less than the rough opening. The base ratio is an input because jurisdictions amend it -- Washington adopts 1/300, not 1/150. The unvented conditioned crawl space of R408.3 is a different assembly and is not sized here.

required net free area = under-floor area / ratio, with ratio = the base denominator (IRC 150) or 1500 when an approved Class I vapor retarder covers the ground and the openings are placed for cross ventilation; sq in = sq ft x 144; vents by area = ceil(required sq in / net free area per vent); vents required = max(vents by area, corner count).

IRC R408.1 / R408.2, under-floor space ventilation. Washington's adopted WAC 51-51-0408 amends the base ratio to 1/300, which is why the base denominator is an editable input here rather than a fixed 150.

The ratio, the 1/1500 exception, the corner rule, and the permitted opening coverings are short prescriptive provisions reproduced in state adoptions and building-department handouts; the 1/1500 exception language and the covering list were read from Washington's adopted text. No table is reproduced.

Estimate. AHJ and licensed professional govern.

Field names used by the API: floor_area_sf, base_ratio_denominator, vapor_retarder, vent_net_free_sqin, corner_count, ratio_used, required_sf, required_sqin, vents_by_area, vents_required, provided_sqin, surplus_sqin, alt_required_sqin, alt_vents

Related tools