How HailIndex calculates repair and replacement costs
All cost data derived from public U.S. government sources · Updated monthly
The formula
Formula components
The national cost range for asphalt shingle roofing per square foot, establishing a baseline before geographic adjustments. Derived from industry cost surveys and BLS construction wage data. Low end reflects minor repairs; high end reflects full replacement with premium materials.
Adjusts the national baseline for local roofing labor costs. Calculated from BLS OEWS data for SOC 47-2181 (Roofers) at the Metropolitan Statistical Area level. Each city's index is the ratio of its MSA mean hourly wage to the national mean wage.
Current national mean wage (SOC 47-2181): $27.45/hr· 2024 release
Adjusts for current asphalt roofing material prices relative to a fixed 2017 baseline. Sourced from the BLS Producer Price Index series PCU324122324122 (Asphalt shingles and coating materials).
PPI value: 347.6 · observation date: 2026-03-01
Adjusts for typical home size in each city. Larger homes benefit from reduced per-sqft mobilization costs; smaller homes or complex roofs carry a slight premium. Calibrated from U.S. Census Bureau ACS 5-year estimates (table B25077) median home values as a proxy for home size distribution.
Data sources
Limitations and caveats
HailIndex costs are statistical estimates derived from public data. Actual contractor quotes depend on site conditions, roof complexity, access, and contractor availability after storm events. Treat these figures as a reference range, not a binding estimate.
BLS OEWS data is published at the Metropolitan Statistical Area level, not by individual city. Cities within the same MSA share the same labor index. Rural areas outside any MSA use a state-level fallback.
In the 30–90 days immediately following a major hail event, contractor demand surges. Actual market prices may temporarily exceed our estimates by 20–40% before normalizing.
NOAA Storm Events records carry an approximate 75-day publication lag. Recent storm events may not appear in the database. Event counts also depend on local spotter density and may undercount rural storm activity.
Version history
| Version | Published | PPI |
|---|---|---|
| v1.1 | May 7, 2026 | 347.6 |
| v1.0 | May 7, 2026 | 330.7 |