HVAC Industry Tracker

Cycle - replacement wave - new-construction attach - A2L migration - key markets | LII / WSO / CARR / TT context | Unison Asset Management - updated 2026-07-29 17:46

1,427k
Housing starts (SAAR)
Jun 26
4.09M
Existing home sales (SAAR)
Jun 26
6.58%
30-yr mortgage
Jul 26
+3.2%
HVAC equip PPI y/y
Jun 26
n/a
Repair:replace search ratio (13w avg)
higher = more deferral
13,552
Copper $/mt
Jun 26

1. Cycle monitor

Housing turnover is the classic replacement trigger; lock-in + affordability are the current brake. LII/CARR/WSO cycle context: shipments ~25% below the 2022 peak, destock complete, sell-through still negative (2Q26).

2. Replacement-cycle model

Homes completed in year t need their first full HVAC changeout ~N(16yr, 3.5yr) later. The 2006-10 construction collapse thins the 2022-2027 first-replacement cohort — the structural headwind beneath the cyclical destock. Shape model (first-cycle only), not absolute industry units. Overlay: JEF sees replacement pool ~5.5M (2027) -> ~5.9M (2028) -> 6.5-7M (2029/30) incl. later cycles; COVID pulled forward ~4-5M units 2021-25.

3. New construction & attach rates

New-construction attach of central AC is ~saturated (~95% of new SF completions); the live variables are heat-pump mix and LII's deliberate RNC share walk-away (RNC revenue -30% in 2Q26).

Central AC in new SF homes — ~95% of new single-family completions include central AC (2022) — new-construction attach is effectively saturated; the variable is heat pump vs AC+furnace mix. [JEF via WSO primer]
Heat pump share — Heat pump share of industry shipments at record TTM levels (~30% of market). LII underindexed at 15-18% of sales — its stated catch-up driver. IRA 25C credits up to $2,000 support adoption. [JEF 03.13.26 / LII analyst day]
Parts/services attach — LII parts attach ~18% of revenue vs peers 30-35%; target ~40% by 2030 (NSI/Supco/Duro Dyne deals). WSO non-equipment ~29% of sales, its highest-margin mix lever. [LII analyst day / WSO MIQs]

4. Pricing & input costs

The 2020-26 supercycle: PPI +~50% since Jan 2020; installed cost ~2x. Watch capture-below-list (Wolfe 2Q26) and the fade of the A2L premium into 2027; copper/steel/aluminum tariffs are the cost-push.

5. Forced migration to A2L (R-410A → R-454B / R-32)

The defining regulatory event of the cycle: it drove the 2024 pre-build, the 2025 air pocket, and a permanently higher price floor. Rising legacy R-410A refrigerant cost is the slow-fuse that flips repair-vs-replace back to replace.

AIM Act (2020) — 85% HFC phase-down by 2036; GWP-weighted production/import quotas. [LII/WSO primers]
Jan 1, 2025 — EPA ban on manufacture/import of R-410A residential units (GWP 2,088). Sell-through of pre-built units allowed through 2025 — drove the late-2024 pre-build of ~1-1.5M units. [JEF]
R-454B vs R-32 — R-454B (GWP 466): Lennox, Carrier, JCI/Bosch ducted. R-32 (GWP 675): Daikin/Goodman, most ductless. 2025 R-454B canister shortage shifted share to Daikin. [LII industry primer]
Price effect — A2L equipment realized ~15% premium at WSO (min +10% OEM cost uplift). A2L systems cannot be partially replaced — full condenser+coil+lineset changeout, raising ticket and ending partial repairs. [WSO primer / JEF]
What to track — R-410A cylinder price (repair economics — rising legacy refrigerant cost makes repair uneconomic over time), R-454B search interest, canister availability news, EPA allowance rulemaking. [—]

6. Repair vs. replace

Consumers deferring $15K+ changeouts with $3-5K repairs is the demand-destruction mechanism; a falling repair:replace ratio is an early recovery signal. (JEF Mar-26 survey: 'Repair Driving the Conversation'; quotes per job up to 2-3 from 1-2.)

7. Key markets (Sunbelt concentration)

FL/TX/AZ/CA/GA carry the cooling-replacement pool; hot-climate run-hours cut unit life to 10-12 yrs vs up to 20 in the north. WSO: 30-40% share in Sunbelt strongholds. Metro mechanical permits are the most direct public read on realized replacement volumes.

Sunbelt = the volume pool — Cooling-driven replacement concentrates in FL/TX/AZ (run-hours: heat pump life 10-12 yrs in hot climates vs up to 20 in north). WSO holds 30-40% share in Sunbelt strongholds; LII admits underexposure to FL. [LII primer / WSO MIQs]
GFC echo — Homes completed 2006-2010 collapsed from ~2M to ~600k/yr; on a ~16yr HVAC life that thins the 2022-2027 first-replacement cohort — the structural volume headwind under the cyclical one. [JEF 12.21.25]
Housing lock-in — Existing home sales near 30-yr lows (3% mortgage lock-in); turnover is the classic replacement trigger — watch existing home sales + mortgage rate as the cycle unlock. [WSO MIQs]

8. Company KPI ledger (documented markers)

Update quarterly from earnings; these anchor the public data to reported reality.

TickerMetricPeriodValueNoteSource
CARRResi destock2Q26Endedresi sales +HSD, orders +40% — LII now the resi laggardAlphaSense LII primer 07.29.26
IndustryShipments vs peak1H26~-25%back to 2018/19 levels; GFC-trough-like replacementWolfe survey 07.01.26
IndustryOEM share shift2Q26LII losingDaikin/Goodman + Rheem gaining on trade-down (distributor survey)Wolfe survey 07.01.26
IndustrySell-in vs sell-throughOct 25-50% vs -1%AHRI sell-in vs HARDI sell-through — the destock signatureJEF 12.21.25
LIIResi (HCS) volumes1Q26-21%one-step -10%, two-step -15%LII 1Q26 call
LIICommercial (BCS)2Q26+24%organic +15% (vol +12%); margin 25.5%; light cml turning after 17-18 months downLII 2Q26 call
LIIFY26 EPS guide2Q26$23.00-24.00cut from $23.50-25.00; HCS growth 4%->1% (core ~-3% ex-M&A); recovery pushed to 2027LII 2Q26 call / JEF
LIIResi (HCS) volumes2Q26-12%price/mix +3% vs +12% LY; RNC revenue -30%LII 2Q26 call
LIIResi (HCS) volumes4Q25-32%peak destock quarterLII 1Q26 call
WSODomestic ASP4Q25+11%A2L ~15% realized premiumJEF 02.17.26
WSOGross marginFY2528.0%Record; +120bps despite volume collapse; ~200bps from Pricefx (structural)WSO MIQs
WSOInventoryFY25-30%$2.1B peak -> $1.4B; $500M reduction target met; record Q4 OCF $400MWSO MIQs
WSORevenue growthFY25-5%$7.24B; units -17%, price/mix offsetWSO 8-K / MIQs
WSOUnit volumesFY25-17%A2L transition + destock yearWSO MIQs / JEF
WSOSalesJan/Feb 26-5%incl. price; mgmt: don't extrapolate off-peak4Q25 call

9. Recommendations — how to use this tracker

1. Watch the sell-in/sell-through gap close. AHRI shipments (sell-in) vs field sell-through (Wolfe/JEF surveys, HARDI headlines) — the Oct-25 gap was -50% vs -1%. Convergence + positive sell-through = the real trough signal. Paste AHRI monthly numbers into data/manual/ahri_monthly.csv (10 min/month).
2. The repair:replace search ratio is the best free weekly demand read. It inflected up with the 2025 affordability shock; a sustained downtrend (with existing home sales recovering) is the leading buy signal for resi HVAC volumes.
3. Track R-410A cylinder price as the repair-economics fuse. HFC phase-down quotas push legacy refrigerant cost up every year; when a compressor+recharge quote crosses ~40-50% of a new-system quote, deferral flips to replacement. This is the mechanism that releases the deferred-demand backlog.
4. Metro mechanical permits are the underexploited dataset. Socrata portals (Austin, LA seeded here; add Phoenix/Maricopa, Miami-Dade, Dallas, Tampa) give monthly realized replacement volumes by metro — effectively free HARDI. Worth building out to a 10-metro Sunbelt panel.
5. Relative positioning: the WSO-ahead-of-LII read has played out; the next leg is the reverse trade. Distribution comps ease first (WSO laps -17% volumes from 3Q26), but LII carries more torque to the 2027 volume inflection at ~12 P/E turns cheaper. Watch Carrier resi orders vs LII one-step volumes for the share-loss-vs-cycle verdict, and Wolfe's next distributor survey for whether Lennox share loss persists.
6. Heat-pump mix is the structural attach story. Record TTM heat-pump share (~30%) with LII at 15-18% of sales: track the gap (LII catch-up = share gain without market growth), plus 25C credit policy risk.
7. Data gaps to close when worth it: HARDI distributor sell-through is member-only (proxy: WSO quarterly); Reddit r/HVAC consumer-quote scraping needs API creds (same praw setup as the VEEV/LOW trackers); Similarweb for LennoxPros/carrierenterprise traffic; state contractor-license counts as capacity signal.

10. Data health (last runs)

RunScraperStatusDetail
2026-07-29 15:01census_charsokmanual: []
2026-07-29 15:01census_charsokhp_share_new_sf: 27 yrs
2026-07-29 15:01census_charsokac_share_new_sf: 53 yrs
2026-07-29 15:00gtrendsFAILUS batch 1 retry exhausted
2026-07-29 14:57cohort_modelok36 yrs from completions 1968-2026
2026-07-29 14:57census_charsokmanual: []
2026-07-29 14:57census_charsokac_share_new_sf: 53 yrs
2026-07-29 14:57census_charsokdownloaded 12: ['mfu_aircond_cust.xls', 'soldaircond_cust.xls', 'soldheatsystem_cust.xls', 'soldheatingfuel_cust.xls', 'mfb_aircond_cust.xls
2026-07-29 14:57fred:PALUMUSDMok414 obs
2026-07-29 14:57fred:PCOPPUSDMok414 obs
2026-07-29 14:57fred:PCU333415333415ok583 obs
2026-07-29 14:57fred:UMCSENTok673 obs
2026-07-29 14:57fred:MORTGAGE30USok2887 obs
2026-07-29 14:57fred:EXHOSLUSM495Sok13 obs
2026-07-29 14:57fred:COMPUTSAok702 obs
2026-07-29 14:57fred:PERMITok798 obs
2026-07-29 14:57fred:HOUST1Fok810 obs
2026-07-29 14:57fred:HOUSTok810 obs
2026-07-29 14:55cohort_modelFAILCOMPUTSA not loaded — run fred_macro first
2026-07-29 14:55gtrendsokGA: 262 weeks x 2
2026-07-29 14:54gtrendsokCA: 262 weeks x 2
2026-07-29 14:54gtrendsokAZ: 262 weeks x 2
2026-07-29 14:54gtrendsokTX: 262 weeks x 2
2026-07-29 14:54gtrendsokFL: 262 weeks x 2
2026-07-29 14:53gtrendsokUS batch 2: 262 weeks x 2
2026-07-29 14:53gtrendsFAILUS batch 1: The request failed: Google returned a response with code 429
2026-07-29 14:52permitsFAILLos Angeles, CA: 403 Client Error: Forbidden for url: https://data.lacity.org/resource/yv23-pmwf.json?$select=date_trunc_ym(issue_date)%20AS
2026-07-29 14:52permitsokAustin, TX: 103 months
2026-07-29 14:52refrigerantokmanual: []
2026-07-29 14:52refrigerantokR-454B cylinder: $120.0 from https://www.budgetheating.com/search.php?search_query=r454b
2026-07-29 14:52refrigerantskiphttps://hvacdirect.com/catalogsearch/result/?q=r454b+refrigerant: could not convert string to float: ''
2026-07-29 14:52refrigerantokR-410A cylinder: $120.0 from https://www.budgetheating.com/search.php?search_query=r410a
2026-07-29 14:52refrigerantskiphttps://hvacdirect.com/catalogsearch/result/?q=r410a+refrigerant: could not convert string to float: ''
2026-07-29 14:52ahriokmanual: []
2026-07-29 14:52ahriemptyparsed 0 datapoints from 1 links
2026-07-29 14:52census_charsokmanual: []
2026-07-29 14:52census_charsokhp_share_new_sf: 27 yrs
2026-07-29 14:52census_charsokac_share_new_sf: 265 yrs
2026-07-29 14:52census_charsokdownloaded 12: ['heatfuelbysystem_cust.xls', 'aircond_cust.xls', 'mfb_aircond_cust.xls', 'mfb_heatingfuel_cust.xls', 'soldaircond_cust.xls',
2026-07-29 14:52noaa_cddok2226 obs from climdiv-cddcst-v1.0.0-20260707