Home › Construction & Home › Roof Shingle Calculator
Roof Shingle Calculator
Estimates asphalt shingles from the roof's horizontal footprint area and pitch: the pitch factor √(1 + (rise/12)²) converts the footprint to sloped surface area, which is expressed in roofing squares (100 ft²), increased by a waste allowance and converted to bundles and underlayment rolls. Planning estimate only.
When to use
You need the number of shingle bundles, squares or underlayment rolls to order for a pitched roof whose plan area and pitch (x:12 or degrees) are known.
Do not use when: You only need to convert the pitch or find a rafter length (use roof-pitch), or the roof is metal, tile or membrane sold by the sheet (divide roof_surface_area_ft2 by the panel coverage instead).
Formula
pitch_factor = √(1 + (pitch_rise_per_12 / 12)²) (or 1 / cos(pitch_degrees)); roof_surface_area = roof_footprint_area × pitch_factor; squares = area_ft² / 100; squares_with_waste = squares × (1 + waste_percent/100); bundles = ceil(squares_with_waste × bundles_per_square); underlayment_rolls = ceil(squares_with_waste × 100 / underlayment_coverage_ft2_per_roll).
The footprint is measured in plan, so the pitch factor (the rafter multiplier of roof-pitch) recovers the true sloped area of every plane at that pitch; starter strips, hip and ridge caps, drip edge, flashing and nails are not included. Planning estimate only; check quantities against the supplier's coverage figures and local code before ordering.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
roof_footprint_area | number | ft² or m² | yes | Horizontal (plan) area covered by the roof including eave overhangs, in ft² or m² (see area_unit); for a simple gable roof this is the building length × width plus overhangs. Range: > 0, ≤ 1000000 |
area_unit | enum: m2 | ft2 | default ft2 | Unit of the area input; areas are reported in both m² and ft². | |
pitch_rise_per_12 | number | default 6 | Roof pitch as rise per 12 units of run (6 means 6:12); ignored when pitch_degrees is given. Range: ≥ 0, ≤ 24 | |
pitch_degrees | number | ° | no | Roof angle from horizontal in degrees; overrides pitch_rise_per_12 when given. Range: ≥ 0, ≤ 85 |
waste_percent | number | % | default 10 | Extra material for cuts, breakage and offcuts, applied as a multiplier (1 + waste_percent/100). 10 % for simple gable roofs; 15 % for hip roofs, dormers and valleys. Range: ≥ 0, ≤ 50 |
bundles_per_square | number | default 3 | Bundles that cover one square (100 ft²): 3 for three-tab and most laminated (architectural) shingles, 4–5 for heavy designer shingles; printed on the bundle. Range: > 0, ≤ 10 | |
underlayment_coverage_ft2_per_roll | number | ft² | default 400 | Net coverage of one roll of underlayment in ft²: about 400 ft² (4 squares) for a #15 felt roll and for 4-square synthetic rolls, 200 ft² (2 squares) for #30 felt, 1,000 ft² (10 squares) for many synthetic rolls. Range: > 0, ≤ 5000 |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
pitch_factor | number | √(1 + (rise/12)²) = 1 / cos(roof angle): sloped area per unit of plan area. | |
roof_angle_degrees | number | ° | atan(rise / 12). |
roof_surface_area_ft2 | number | ft² | Footprint area × pitch_factor. |
roof_surface_area_m2 | number | m² | Same sloped area in square metres. |
squares | number | roof_surface_area_ft2 / 100 (1 square = 100 ft² = 9.29 m²). | |
squares_with_waste | number | squares × (1 + waste_percent/100). | |
bundles | integer | ceil(squares_with_waste × bundles_per_square). | |
underlayment_rolls | integer | ceil(squares_with_waste × 100 / underlayment_coverage_ft2_per_roll). | |
ridge_cap_note | string | Reminder that hip and ridge cap shingles are estimated separately by linear length. |
Example
1,500 ft² footprint, 6:12 pitch, 10 % waste, 3 bundles per square, 400 ft² rolls: {"roof_footprint_area":1500,"area_unit":"ft2","pitch_rise_per_12":6,"waste_percent":10,"bundles_per_square":3,"underlayment_coverage_ft2_per_roll":400} → {"pitch_factor":1.118,"roof_angle_degrees":26.57,"roof_surface_area_ft2":1677.1,"roof_surface_area_m2":155.8,"squares":16.77,"squares_with_waste":18.45,"bundles":56,"underlayment_rolls":5}
140 m² footprint, 30° pitch, 15 % waste, 1,000 ft² synthetic rolls: {"roof_footprint_area":140,"area_unit":"m2","pitch_degrees":30,"waste_percent":15,"underlayment_coverage_ft2_per_roll":1000} → {"pitch_factor":1.1547,"roof_surface_area_m2":161.66,"roof_surface_area_ft2":1740.1,"squares":17.4,"squares_with_waste":20.01,"bundles":61,"underlayment_rolls":3}
GET https://tttkmbb.com/api/v1/calculate/roof-shingles?roof_footprint_area=1500&area_unit=ft2&pitch_rise_per_12=6&waste_percent=10&bundles_per_square=3&underlayment_coverage_ft2_per_roll=400
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/roof-shingles(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/roof-shingles · Markdown: https://tttkmbb.com/construction/roof-shingles.md · JSON definition: https://tttkmbb.com/construction/roof-shingles.json
- MCP: server
https://tttkmbb.com/mcp, toolrun_calculator with calculator_id="roof-shingles" - OpenAPI operationId:
estimate_roof_shingles - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
- Wikipedia – Roof pitch (reference)
- Wikipedia – Asphalt shingle (reference)
- Wikipedia – Roof shingle (reference)
FAQ
Do I measure the footprint or the sloped roof?
Enter the horizontal footprint (building plan plus overhangs); the pitch factor converts it to sloped area. If you already measured the sloped area, enter it with pitch_rise_per_12 = 0.
How many bundles are in a square?
Three bundles per square is standard for three-tab and most laminated shingles (about 33 ft² per bundle); heavier designer shingles need 4–5, so check the bundle label.
Why does the roll count use the waste figure?
Underlayment is lapped 2–4 in horizontally and 6 in at end joints and is cut at hips and valleys, so the waste-inclusive area keeps the roll count conservative.
Related calculators
- Roof Pitch Calculator — Convert the pitch and get the rafter multiplier.
- Right Triangle Calculator — Sloped length of a roof plane from rise and run.