HC
HomeCostCalc.com
Updated on Market data: April 2026

How HomeCostCalc Estimates Are Built

Every estimate on the site comes from a transparent stack: a published national base cost, a regional adjustment from federal inflation series, and a state-level housing or labor signal. This page documents every input so you can decide how much to trust the number — and reproduce it if you want.

Calculator library: 153 calculators · 202 U.S. cities · Direct metro CPI coverage: 19 metros.

1. Estimate Pipeline

  1. National base cost. Each calculator config (in src/data/calculators/<id>.ts) ships with a documented per-unit material rate, labor rate, and supplies rate sourced from contractor surveys, industry cost reports, and home-services pricing platforms.
  2. National inflation adjustment. Every dollar-bearing input is multiplied by the trailing residential-construction PPI factor versus a fixed baseline month. Current factor: 0.995 (2026-012026-02).
  3. Regional CPI multiplier. The four BLS census regions (Northeast, Midwest, South, West) each carry a multiplier derived from the regional CPI relative to national CPI: Northeast 1.043, Midwest 0.929, South 0.966, West 1.062.
  4. Direct metro CPI override. For the 19 U.S. metros where the BLS publishes a direct metro CPI series, that value replaces the regional model. You can see which metros qualify on each calculator's “Local Market Context” block.
  5. State income & home-value damping. A blended Census ACS signal (median household income + median home value) is dampened to ±15% of its raw deviation and applied as a final state-level multiplier. This avoids overshoot in outlier-income states while still capturing local cost-of-living pressure.
  6. Formula engine. Calculators evaluate ordered formulas in src/core/formula-engine.ts, which composes the adjusted inputs into the displayed totals. Outputs are then formatted by src/core/formatters.ts.

2. Construction Inflation (PPI)

The Producer Price Index for single-family construction (BLS series PCU236211236211) measures the wholesale price of materials and labor before contractor margin. We use the trailing twelve months to project where homeowner-facing quotes are heading.

Residential Construction PPI — Trailing 12 Months

BLS series PCU236211236211, single-family construction producer prices.

200.1

+0.9% vs Mar 25

198199200201202198.4200.1Mar 25May 25Jul 25Sep 25Nov 25Jan 26

The PPI is the wholesale price of materials and labor that contractors pay, before margin. A rising index usually flows into homeowner quotes within 2–4 months. Use this trend to decide whether to pull a project forward or wait.

Trend window: Mar 25 Feb 26. Refreshed automatically by scripts/update-market-data.mjs.

3. Labor Wages (BLS OEWS)

Labor portions of every quote sanity-check against state-level mean hourly wages from the BLS Occupational Employment and Wage Statistics (OEWS) state cross-industry tables (May 2023). The national means below are the foundation; state values are applied per city page.

TradeSOC codeNational mean hourly wage
Electricians47-2111$32.21
Plumbers & Pipefitters47-2152$32.83
HVAC Mechanics49-9021$28.66
Carpenters47-2031$28.96
Painters47-2141$24.78
Roofers47-2181$25.88
Construction Laborers47-2061$22.79

Loaded billing rates (what a homeowner is quoted) are typically 2.2–2.6× the OEWS mean, covering insurance, vehicle, overhead, taxes, and contractor margin.

4. Climate, Housing & Seasonality

  • Climate normals. Heating degree days, cooling degree days, freeze months and annual precipitation per state come from the NOAA NCEI 1991–2020 climate normals, aggregated to state level for stability.
  • Housing stock. Year-built distribution per state is taken from U.S. Census ACS table B25034. Pre-1970 stock disproportionately drives prep work (knob-and-tube, plaster, lead/asbestos abatement).
  • Seasonality recommendations. Best-month recommendations per trade are derived deterministically from the climate fields above (e.g. concrete pours need ambient ≥40°F; latex paint cures best 50–85°F). The mapping lives in src/data/seasonality.ts and is fully reproducible.

5. Refresh Cadence & Reproducibility

  • Monthly: the scripts/update-market-data.mjs job refreshes the BLS CPI series (national, 4 regions, 19 metros), the residential-construction PPI series (latest reading + 12-month history), and the U.S. Census ACS state signal in one pass. FRED CSV is wired up as a fallback when BLS rate-limits.
  • Annually: the BLS OEWS state-wage tables and the NOAA climate normals are reviewed when their respective publishers release a new vintage.
  • Per build: formulas, tier prices, and copy are version-controlled in TypeScript, so every rendered estimate is reproducible from the commit hash that built the page.

6. Limits of the Estimates

Calculators are tuned for typical residential scopes. They are useful for budgeting and comparing options, not for replacing a written contractor quote. Expect ±15–30% spread vs an actual quote for these reasons:

  • Hidden conditions (subfloor rot, knob-and-tube wiring, undersized service panels) are by definition invisible to a calculator.
  • Permit fees and HOA / historic-district approvals vary city to city and are not modeled directly.
  • Specialty materials (large-format slab tile, custom metalwork, imported stone) sit outside the standard tier menus.
  • Project size discounts apply to large jobs; conversely, very small jobs typically include a minimum-trip charge that the per-unit rate doesn't reflect.