Roof Damage Repair Cost Calculator
ANA›Life Services Authority›National Calculator Authority›Roof Damage Repair Cost Calculator
.calc-container { max-width: 640px; margin: 2rem 0; padding: 1.5rem; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); font-family: system-ui, -apple-system, sans-serif; } .calc-container h3 { font-family: Georgia, serif; font-size: 1.15rem; color: #1a1a1a; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; flex-wrap: wrap; } .calc-row label { min-width: 160px; font-size: 0.9rem; color: #333; font-weight: 500; } .calc-row input[type="number"], .calc-row select { flex: 1; min-width: 120px; max-width: 200px; padding: 0.5rem 0.6rem; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; font-family: system-ui, sans-serif; color: #1a1a1a; background: #fafaf8; } .calc-row input:focus, .calc-row select:focus { outline: none; border-color: var(--ac, #3d5a80); box-shadow: 0 0 0 2px rgba(26,74,138,0.12); } .calc-row .unit { font-size: 0.82rem; color: #888; min-width: 30px; } .calc-btn { display: inline-block; margin-top: 0.5rem; padding: 0.55rem 1.5rem; background: var(--ac, #3d5a80); color: #fff; border: none; border-radius: 4px; font-size: 0.9rem; font-weight: 600; cursor: pointer; font-family: system-ui, sans-serif; } .calc-btn:hover { opacity: 0.9; } .calc-result { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f0f6fc; border-left: 3px solid var(--ac, #3d5a80); border-radius: 0 6px 6px 0; display: none; } .calc-result.visible { display: block; } .calc-result-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #666; margin-bottom: 0.25rem; } .calc-result-value { font-size: 1.6rem; font-weight: 700; color: var(--ac, #3d5a80); } .calc-result-detail { font-size: 0.85rem; color: #555; margin-top: 0.5rem; line-height: 1.5; } .calc-note { margin-top: 1rem; font-size: 0.8rem; color: #888; font-style: italic; } .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 0.75rem; } .calc-grid-item { padding: 0.6rem 0.8rem; background: #f8f9fa; border-radius: 4px; border: 1px solid #eee; } .calc-grid-item .label { font-size: 0.75rem; color: #888; text-transform: uppercase; letter-spacing: 0.04em; } .calc-grid-item .value { font-size: 1.1rem; font-weight: 600; color: #1a1a1a; } @media (max-width: 720px) { .calc-row { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .calc-row label { min-width: auto; } .calc-row input[type="number"], .calc-row select { max-width: 100%; width: 100%; } .calc-grid { grid-template-columns: 1fr; } } .calc-chart { margin: 1rem 0; text-align: center; } .calc-chart svg { max-width: 100%; height: auto; } .calc-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem 1.2rem; margin-top: 0.6rem; font-size: 0.8rem; color: #555; } .calc-chart-legend span { display: inline-flex; align-items: center; gap: 0.3rem; } .calc-chart-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; font-style: normal; } .calc-related { max-width: 640px; margin: 2rem 0 1rem; padding: 1.25rem 1.5rem; background: #f8f9fa; border: 1px solid #e8e8e8; border-radius: 8px; } .calc-related h3 { font-family: Georgia, serif; font-size: 1rem; color: #1a1a1a; margin: 0 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-related-list { list-style: none; padding: 0; margin: 0 0 0.75rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem 1.5rem; } .calc-related-list li a { font-size: 0.88rem; color: var(--ac, #3d5a80); text-decoration: none; } .calc-related-list li a:hover { text-decoration: underline; } .calc-browse-all { margin: 0.5rem 0 0; font-size: 0.9rem; font-weight: 600; } .calc-browse-all a { color: var(--ac, #3d5a80); text-decoration: none; } .calc-browse-all a:hover { text-decoration: underline; } @media (max-width: 720px) { .calc-related-list { grid-template-columns: 1fr; } }
Roof Damage Repair Cost Calculator
Estimate your roof damage repair cost based on damage type, affected area, roofing material, and local labor rates.
Damage Type
Minor (cracked/missing shingles, small leaks) Moderate (multiple leaks, flashing damage) Major (structural damage, large sections) Full Replacement
Affected Roof Area (sq ft)
Roofing Material
Asphalt Shingles Wood Shingles/Shake Metal Roofing Clay/Concrete Tile Slate Flat/TPO/EPDM
Roof Pitch
Low (0/12 – 3/12) — flat to low slope Standard (4/12 – 6/12) — typical residential Steep (7/12 – 9/12) Very Steep (10/12+)
Number of Stories
1 Story 2 Stories 3+ Stories
Local Labor Rate ($/hr per worker)
Replace Underlayment / Decking?
No Yes
Include Permit Cost?
No Yes
Calculate Repair Cost
function rooUpdateFields() { // Could show/hide fields based on damage type in future }
function rooCalc() { var damageType = document.getElementById('roo-damage-type').value; var area = parseFloat(document.getElementById('roo-roof-area').value); var material = document.getElementById('roo-material').value; var pitchFactor = parseFloat(document.getElementById('roo-pitch').value); var storyFactor = parseFloat(document.getElementById('roo-stories').value); var laborRate = parseFloat(document.getElementById('roo-labor-rate').value); var underlayment = parseInt(document.getElementById('roo-underlayment').value); var permit = parseInt(document.getElementById('roo-permit').value);
// --- Input Validation --- if (isNaN(area) || area Please enter a valid affected roof area (sq ft).'; return; } if (area > 10000) { document.getElementById('roo-result').innerHTML = 'Roof area seems too large. Please enter a value up to 10,000 sq ft.'; return; } if (isNaN(laborRate) || laborRate 300) { document.getElementById('roo-result').innerHTML = 'Please enter a valid labor rate between $20 and $300/hr.'; return; }
// --- Material Cost per sq ft (installed, mid-range) --- // Source: HomeAdvisor, Angi, RSMeans 2023 averages var materialCostPerSqFt = { asphalt: 3.50, // $3–$5/sq ft wood: 5.50, // $4–$7/sq ft metal: 8.00, // $6–$12/sq ft tile: 10.00, // $8–$14/sq ft slate: 16.00, // $12–$22/sq ft flat: 5.00 // $4–$7/sq ft (TPO/EPDM) };
// --- Damage Type Multiplier (fraction of full replacement cost) --- // Minor: patch/spot repair; Moderate: section repair; Major: large section; Full: 100% var damageMultiplier = { minor: 0.15, moderate: 0.40, major: 0.70, full: 1.00 };
// --- Labor hours per 100 sq ft by material --- var laborHoursPer100SqFt = { asphalt: 3.0, wood: 4.5, metal: 5.0, tile: 6.0, slate: 8.0, flat: 3.5 };
var matCostPerSqFt = materialCostPerSqFt[material]; var dmgMult = damageMultiplier[damageType]; var laborHrs = (area / 100) * laborHoursPer100SqFt[material];
// --- Base Material Cost --- // Material cost = area × cost/sqft × damage multiplier var baseMaterialCost = area * matCostPerSqFt * dmgMult;
// --- Base Labor Cost --- // Labor cost = labor hours × labor rate × pitch factor × story factor × damage multiplier var baseLaborCost = laborHrs * laborRate * pitchFactor * storyFactor * dmgMult;
// --- Underlayment / Decking Cost --- // Underlayment: ~$0.50/sqft; Decking (OSB): ~$1.50/sqft average combined var underlaymentCost = 0; if (underlayment === 1) { underlaymentCost = area * 2.00 * dmgMult; // $2/sqft for underlayment + partial decking }
// --- Permit Cost --- // Typical permit: $150–$500 flat fee; use $300 average var permitCost = (permit === 1) ? 300 : 0;
// --- Waste & Overhead Factor (10%) --- var subtotal = baseMaterialCost + baseLaborCost + underlaymentCost; var wasteOverhead = subtotal * 0.10;
// --- Total Cost --- var totalCost = subtotal + wasteOverhead + permitCost;
// --- Low / High Range (±20%) --- var lowCost = totalCost * 0.80; var highCost = totalCost * 1.20;
// --- Cost per sq ft --- var costPerSqFt = totalCost / area;
// --- Format --- function fmt(n) { return '$' + n.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ','); }
var materialLabels = { asphalt: 'Asphalt Shingles', wood: 'Wood Shingles/Shake', metal: 'Metal Roofing', tile: 'Clay/Concrete Tile', slate: 'Slate', flat: 'Flat/TPO/EPDM' }; var damageLabels = { minor: 'Minor', moderate: 'Moderate', major: 'Major', full: 'Full Replacement' };
document.getElementById('roo-result').innerHTML = '### Estimated Roof Repair Cost ' + '' + 'Damage Type' + damageLabels[damageType] + '' + 'Material' + materialLabels[material] + '' + 'Affected Area' + area.toLocaleString() + ' sq ft' + 'Material Cost' + fmt(baseMaterialCost) + '' + 'Labor Cost' + fmt(baseLaborCost) + '' + (underlayment ? 'Underlayment/Decking' + fmt(underlaymentCost) + '' : '') + 'Waste & Overhead (10%)' + fmt(wasteOverhead) + '' + (permit ? 'Permit Cost' + fmt(permitCost) + '' : '') + 'Estimated Total' + fmt(totalCost) + '' + 'Cost per Sq Ft' + fmt(costPerSqFt) + '/sq ft' + 'Typical Range' + fmt(lowCost) + ' – ' + fmt(highCost) + '' + ''; }
#### Formula
Material Cost = Affected Area (sq ft) × Material Cost/sq ft × Damage Multiplier
Labor Cost = (Area / 100) × Labor Hours per 100 sq ft × Labor Rate ($/hr) × Pitch Factor × Story Factor × Damage Multiplier
Underlayment/Decking = Area × $2.00/sq ft × Damage Multiplier (if selected)
Waste & Overhead = (Material + Labor + Underlayment) × 10%
Total Cost = Material + Labor + Underlayment + Waste & Overhead + Permit Fee
Typical Range = Total Cost ± 20%
Damage Multipliers: Minor = 15% | Moderate = 40% | Major = 70% | Full Replacement = 100%
Material Costs ($/sq ft installed): Asphalt $3.50 | Wood $5.50 | Metal $8.00 | Tile $10.00 | Slate $16.00 | Flat $5.00
Pitch Factors: Low (flat–3/12) = 1.00 | Standard (4–6/12) = 1.10 | Steep (7–9/12) = 1.25 | Very Steep (10/12+) = 1.45
Story Factors: 1 Story = 1.00 | 2 Stories = 1.15 | 3+ Stories = 1.30
#### Assumptions & References
More Calculators
- Orbital Period Calculator
- Certification Renewal Deadline Calculator
- CEU Credits Required Calculator
- Certification Exam Pass Rate Calculator
- Attic Ventilation Calculator
- Contractor Bond Amount Calculator
- Materiality Threshold Calculator
- California Data Breach Notification Deadline Calculator
- Employee Security Training ROI Calculator
- California CCPA Compliance Readiness Calculator
- Security Incident Response Cost Estimator
- Encryption Key Strength Estimator