Our data methodology
Every number on Heat Pump Pricing Index comes from a primary source — a state energy office, a utility program page, an IRS notice, a BLS or DOE dataset, or a contractor invoice that we've verified. This page documents exactly how we collect, verify, and refresh that data, what assumptions go into the calculator, and where the limits of the data are. If you find a number you don't trust, this page should tell you why we believe it — or where we got it wrong.
Installation cost data
The dollar ranges shown on each city and state page are composite estimates, not a single quote. We build them from three inputs and update them on a quarterly cadence:
- Contractor quote sample. An anonymized pool of homeowner-reported quotes collected from public forums (HVAC subreddits, Green Building Advisor, HomeOwnersHub), contractor case studies published on installer sites, and a small direct-survey panel of HVAC contractors who've agreed to share aggregate ranges. We discard quotes that don't include both equipment and labor, and cap any single source at 15% of the sample for that metro.
- RSMeans regional cost multipliers. The construction-cost index published by Gordian (RSMeans) is the industry standard for normalizing labor and materials cost across U.S. metros. We use the most recent published quarter to scale a national baseline cost to each metro.
- BLS metro wage data. Occupational Employment and Wage Statistics from the Bureau of Labor Statistics, specifically the median wage for "Heating, Air Conditioning, and Refrigeration Mechanics and Installers" (SOC 49-9021) in each metropolitan statistical area, calibrates the labor portion of the estimate.
The composite is computed as a weighted blend of the three (quote sample 50%, RSMeans 30%, BLS labor 20%) and then expressed as a low–high range that brackets the middle 60% of the resulting distribution. The low end represents a straightforward retrofit with usable existing ductwork; the high end reflects jobs that include ductwork modifications, electrical panel work, or premium cold-climate equipment.
What this means in practice: your actual quote can fall outside the published range. Quotes well below the range usually involve undersized equipment or omitted scope (no permit, no AHRI certificate, no warranty); quotes well above the range usually involve unusual site conditions (long refrigerant runs, attic installs, custom controls). When you see a published cost that doesn't match what your installer told you, we recommend asking the installer to itemize equipment vs. labor vs. ancillary work — that's typically where the divergence sits.
Rebate and incentive data
Rebate amounts, eligibility rules, and program status are gathered from the primary source for each program, not from aggregator sites that re-publish them. We treat the following as primary sources, in this order of preference:
- The state energy office program page (e.g., Mass Save, NYSERDA, Energy Trust of Oregon, the CA HEEHRA portal). For each state we maintain a short allow-list of domains the audit bot is allowed to treat as authoritative.
- The utility provider's own rebate page (e.g., ConEd, PG&E, Eversource). Each utility entry on the site links to the utility's own program page so you can verify the amount.
- DSIRE — the NC Clean Energy Technology Center database. We use DSIRE to discover programs and cross-check details, but we always cite a state or utility primary source when one is available.
- IRS guidance and statute for federal incentives: §25C (air-source heat pumps, expired 2025-12-31), §25D (geothermal, active through 2032), and HEEHRA program parameters from the Inflation Reduction Act and DOE's subsequent implementation notices.
Every state rebate page on this site carries a Last verified date so you can see how recently a human or our audit bot confirmed the amount against the primary source. State pages refresh on a rolling monthly cadence; programs flagged as "waitlisted" or near depletion get an additional weekly check until their status stabilizes.
The audit bot
Between our quarterly editorial passes, an automated audit bot re-fetches each state's primary-source pages every few hours and flags entries where the published amount, status, or eligibility rule appears to have changed. The bot is a validation layer, not a publication layer — it can flag a discrepancy and open a record for editorial review, but it cannot change a published amount on its own. Every change to a rebate row is reviewed by a human against the primary source before it ships.
The bot's allow-list of trusted domains lives in the same repository as the rebate database, so a programmatic source change cannot smuggle in a new "authoritative" site without an editorial commit. Source URLs that return a 404, redirect to an unrelated domain, or stop matching the program name trigger a re-research pass for that state.
Stacking math
Most homeowners qualify for more than one rebate, and the rules for combining them are program-specific. We model stacking explicitly rather than just summing the amounts:
- Exclusivity groups. When two programs cover the same equipment and you must pick one (the classic case is the federal HEEHRA point-of-sale rebate vs. the HOMES whole-home performance rebate on the same install), they share an exclusivity-group label and the calculator selects whichever pays more given your inputs.
- Pairwise incompatibility. Some utility programs explicitly forbid combining with a specific other program (often when service territories overlap). Each affected rebate carries the list of programs it's incompatible with, and the calculator drops the smaller of any conflicting pair.
- Project-cost cap. Federal HEEHRA caps total rebate at 100% of project cost. When the calculator has your system size and metro, it converts that to an estimated project cost and clamps the stacked total to the cap. State pages that show a headline "max stackable" total before you've entered a project cost show the uncapped number with a footnote.
- System-type filtering. A geothermal-only tax credit doesn't apply to an air-source install, and vice versa. Each rebate is tagged with the install types it qualifies, and the calculator filters before stacking so you're not shown money you can't collect.
- Income-qualified programs. HEEHRA and HOMES are gated on household income relative to area median income (AMI). The calculator asks for your household income, looks up the AMI for your metro from the latest HUD dataset, and only applies income-qualified rebates when you fall under the program's threshold.
The single function that resolves all of this is computeStack in our codebase — it's the only thing that reads stacking metadata, and it's called identically from the calculator, the state page, and the rebates index. That means the "max stackable" number you see in three different places can't drift from itself, and a change to the stacking model recomputes everywhere on the same deploy.
Calculator assumptions
The on-page rebate calculator estimates out-of-pocket cost as:
out-of-pocket = installed cost − sum of qualifying rebates (after stacking) − qualifying federal tax credits
Installed cost is read from the same metro composite described above, scaled by system size. Federal tax credits are applied after rebates because state and utility rebates typically reduce the basis the tax credit is computed against. The calculator does not factor in financing costs, operating-cost savings vs. the equipment you're replacing, or property-tax assessment effects — those vary too widely by household to be useful as a default. Several state pages include program-specific notes where one of those factors materially changes the picture.
Refresh cadence
- Cost ranges: full editorial refresh quarterly, anchored to the current quarter's RSMeans index release. Out-of-cycle updates when BLS publishes a major OEWS revision.
- Rebate amounts and eligibility: rolling monthly editorial refresh, one state per business day on average, plus continuous monitoring by the audit bot.
- Program status (open / waitlisted / closed / expired): checked weekly for any state where a program is near depletion; checked monthly for everything else. Status changes trigger an immediate state-page redeploy and the calculator stops crediting closed or expired programs on the next build.
- Federal incentives: on the day of any IRS notice, DOE implementation guidance, or congressional action that affects §25C, §25D, or HEEHRA, the federal-incentives data is reviewed and updated within one business day.
What we don't cover
A short, honest list of where our numbers are weaker:
- Multi-family and commercial. All cost ranges and rebate eligibility on this site are for owner-occupied single-family installations. Several utility programs offer multi-family or commercial heat-pump incentives that we don't track yet.
- Custom equipment. Variable-refrigerant-flow (VRF) systems, hydronic heat pumps, and combination space + water heating systems sit outside our composite range. Quotes for those installs will not match the published numbers and shouldn't be expected to.
- Local non-utility incentives. Some counties and municipalities run their own heat-pump programs that don't appear in DSIRE or the state energy office page. We add them as we discover them, but we don't claim comprehensive coverage at the sub-utility level.
- Quote variance. Even with all the calibration above, the cost composite is a population estimate. A given homeowner's actual installed cost can fall outside the range, and that's consistent with the data, not a sign that the data is wrong.
Corrections
If a rebate amount, eligibility rule, program status, or cost range looks wrong, tell us. We verify against the primary source within one business day, correct the data, and re-deploy the affected page within 24 hours of the fix landing. The fastest way to reach us is the contact page.
When reporting a correction, including the page URL, the specific claim that needs review, and a link to the primary source you believe is correct makes the fix significantly faster on our end.
Editorial independence
Heat Pump Pricing Index is supported by display advertising served by Google AdSense. Ad placement does not influence which programs we list, which brands or installers we mention, the order rebates appear in, or the ranges shown on cost pages. We do not generate installer leads, accept payment for inclusion, or run sponsored content. The about page covers our independence policy in more detail.