# Roofing Material > Estimate the required amount of roofing 'squares' and shingle bundles based on footprint area and roof pitch. Add editable USD material and labor prices and compare low, middle and high budget scenarios. Page: https://askcalculators.com/us/roofing/ Definition: https://askcalculators.com/us/roofing/definition.json JSON Schema: https://askcalculators.com/us/roofing/schema.json Version: 20.13.0 Maintained by: AskCalculators (software project; not a credentialed reviewer) Qualified review: pending. Automated checks do not establish professional approval. Page status: Live Review status: Pending ## Use Open the calculator page and enter values. Query-string parameters can restore and bookmark a calculation. Example: https://askcalculators.com/us/roofing/?area=1000&pitch=0&wastePercent=10&bundlesPerSquare=3&unitCost=120&laborCost=900&deliveryCost=80&costSpreadPercent=15 ## Inputs - unitSystem: Dimension units; type=select; optional; default=imperial; values=imperial|metric - area: Footprint area (ft² / m²); type=number; optional; default=2000 - pitch: Roof Pitch (rise per 12ft); type=number; optional; default=4 - wastePercent: Purchasing allowance (%); type=number; optional; default=10; min=0; max=100 - bundlesPerSquare: Supplier bundles per roofing square; type=number; optional; default=3; min=0 - unitCost: Material price (USD / roofing square (100 ft²)); type=money; optional; default=0; min=0 - laborCost: Total labor allowance (USD); type=money; optional; default=0; min=0 - deliveryCost: Delivery allowance (USD); type=money; optional; default=0; min=0 - costSpreadPercent: Low/high variation around entered subtotal (%); type=percent; optional; default=15; min=0; max=100 ## Outputs - squares: Roofing squares; format=number; primary - bundles: Whole bundles; format=number - totalArea: Roof area with allowance (ft²); format=number - squareMetres: Roof area with allowance (m²); format=number - materialCost: Material cost; format=currency - laborCost: Labor allowance; format=currency - deliveryCost: Delivery allowance; format=currency - unitRate: Entered USD rate / roofing square (100 ft²); format=currency - estimatedTotal: Entered subtotal; format=currency - costLow: Low budget scenario; format=currency - costMid: Middle budget scenario; format=currency - costHigh: High budget scenario; format=currency - pricingStatus: Pricing status; format=text ## Formula Roof area = footprint area × pitch factor; required squares = roof area × waste factor ÷ 100 square feet.; material = unrounded purchase quantity × entered unit price; middle = material + labor + delivery; low/high = middle × (1 ∓ variation/100) ## Rules - Empty optional inputs are undefined, not zero. - Hidden conditional inputs are ignored. - Do not invent missing required inputs. Notice: Planning quantities and user-entered USD costs, not a contractor quote, structural design or code approval. Default prices are zero (unpriced); enter your supplier and labor quotes. New changes await independent review.