Methodology

Every number on this site comes out of the models described below. The constants shown here are imported from the calculation code rather than retyped, so this page cannot drift out of step with the calculators.

Three principles

Simulate years, don't divide. Dividing up-front cost by first-year savings is the standard shortcut and it is wrong in both directions: it ignores equipment degradation, which pushes payback later, and energy-price inflation, which pulls it earlier. Every payback figure here comes from a year-by-year cash-flow loop.

Charge for the losses. Energy is lost converting, storing and transmitting it. Models that quietly ignore round-trip and charging losses overstate savings by 10–15% before any other assumption is made.

Publish the unfavourable answer. Where the maths says a purchase does not pay back, the page says so. See our editorial policy.

Solar payback

System size is set to cover a year of electricity use, then costed and run forward for 25 years. The default baseline is EIA's state-level average monthly consumption per residential customer — the metric EIA actually publishes. It is not a per-household figure, and no state average describes any particular home: a large all-electric house can use several times what a small flat does in the same state. Where you know your own usage or bill, enter it — the calculator recomputes from your value and labels it as yours.

system_kW = annual_kWh / yield_per_kW_year gross_cost = system_kW × effective_$/W × 1000 production(y) = system_kW × yield_per_kW_year × (1 − 0.005)^(y−1) rate(y) = rate × (1 + 0.025)^(y−1) direct_use = min(production × 0.4, consumption) exported = production − direct_use savings(y) = min(direct_use×rate + exported×rate×export_credit, consumption × rate) payback = first year where Σ savings ≥ net_cost

Annual yield per kW is modelled by PVGIS for each state's largest metro, so it already accounts for temperature, angle-of-incidence and system losses separately.

Exported power is the second-biggest lever after the electricity rate. About 60% of what a rooftop system generates goes to the grid rather than into the house, so what an exported kilowatt-hour earns is close to half the answer. Two different questions decide it, and this site keeps them apart because conflating them is how solar economics get overstated:

  • The policy structure. Retail-rate net metering credits exports at the same price you pay. Net billing credits them at roughly what the utility avoids spending to generate the power. Some states set rates utility by utility, and some have no statewide rule at all. A programme called “net metering” does not necessarily pay the retail rate.
  • The money. Where compensation is not at the retail rate we model it in cents per kilowatt-hour, not as a percentage of retail. Avoided cost tracks wholesale generation value; it does not rise because a state's retail rate is high. Treating it as a fixed share of retail overstated export value most in exactly the states where retail power is most expensive.

The modelled baseline of 6¢/kWh is anchored on the published residential export tariffs we verified with a regulator — Arizona's Resource Comparison Proxy rates. It is a baseline, not a measurement of your utility. Export compensation can vary by utility, tariff, installation date and customer class; where a state runs time-varying export rates, no single number reproduces them, and the figure is labelled modelled for that reason. Every state page shows which structure applies and what we assumed, and the slider lets you substitute your own rate.

Two details matter. Installed cost per watt falls as the system grows, because permitting, design and labour are near-fixed: a 3 kW roof genuinely costs more per watt than a 12 kW one. We scale from a 8 kW benchmark. And the annual benefit is capped at the customer's whole bill, because utilities do not write cheques for net-positive generation.

InputValueWhere it comes from
Measured inputs Observed by a named external dataset.
Residential electricity priceSourced11.92¢/kWh – 44.61¢/kWhyou can change thisU.S. Energy Information Administration — Year to date through May 2026The single most load-bearing input on the site — it prices solar savings, EV charging, heat-pump running cost and battery arbitrage simultaneously.
Peak sun hoursSourced3.37 – 6.85 hours/dayEuropean Commission Joint Research Centre — 2005–2023 climatologyShown to readers for context. Production is driven by annual yield below, not by this figure.
Annual solar yield per kW installedSourced1,005 – 1,923 kWh/kW/yrEuropean Commission Joint Research Centre — 2005–2023 climatologyModelled AC output at optimal tilt. Drives all solar production. Optimal tilt flatters a real roof — east/west facing or shaded arrays yield less.
Average residential electricity useSourced495 – 1,202 kWh/monthyou can change thisU.S. Energy Information Administration — 2024 (latest completed annual release)Average monthly consumption per residential customer account — the metric EIA publishes, and deliberately not described as 'household' usage, which the dataset does not measure. Sets the modelled system size, so it drives up-front cost and first-year savings together. Your own bill is the better input if you have it.
Federal residential clean-energy creditSourced0%Internal Revenue Service — Law in force for the 2026 model yearZero because current federal law provides no credit for this purchase — not because we assumed none. IRC §25D was terminated by P.L. 119-21 for expenditures made after 31 December 2025, and §25D(e)(8)(A) treats an expenditure as made when the original installation is completed, so a system paid for in 2025 but commissioned in 2026 receives nothing. The full treatment, scope and last verification date are recorded in src/data/policy.js.
Unresolved inputs Presented as fact, provenance not established.
Solar export compensation policySource unresolvednone / partial / fullyou can change thisThe regulatory structure — whether a state credits exports at the retail rate, runs net billing, or leaves it to each utility. Seven jurisdictions are now verified against a primary regulator or DSIRE's published policy notes (California, Arizona, Texas, Idaho, Vermont, New York, Oregon); the other 44 carry the site's earlier three-bucket assumption and are openly flagged as unverified rather than promoted. DSIRE's per-state records sit behind a licensed API and its summary maps encode states as unnamed polygons, so reading 51 classifications out of map colours would be inferring data from a picture. Full per-jurisdiction records in src/data/exportPolicy.js.
Assumptions Chosen by Payback Math.
Installed solar costAssumption$2.65/W – $3.60/Wyou can change thisDeliberately NOT presented as a state fact. Installed price varies more by installer, system size, financing, roof and hardware than by state, and the authoritative dataset (LBNL Tracking the Sun) lags roughly two years and is not reachable from our build environment. Publishing a precise 'average Texas price' would be false precision. Scaled by system size — small roofs cost more per watt because permitting and labour are near-fixed.
Solar analysis periodAssumption25 yearsTypical panel performance-warranty horizon.
Panel degradationAssumption0.5%/yrStandard modern warranty assumption. Pushes payback later.
Electricity price growthAssumption2.5%/yrLong-run US residential average. Pulls payback earlier, partly offsetting degradation.
Solar self-consumptionAssumption40%Share used as generated without a battery. Peak output is midday; peak use is evening.
Modelled export compensationAssumption—you can change thisWhat an exported kWh earns where the state does NOT credit at the retail rate. Modelled in cents rather than as a share of retail, because avoided cost tracks wholesale generation value and does not rise with a state's retail rate — the old percentage model overstated Arizona by about a third and California by roughly 170%, worst exactly where retail rates are highest. Anchored on the only residential export tariffs we verified against a regulator: Arizona's Resource Comparison Proxy (APS 6.171¢, TEP 5.70¢). A baseline, not a measurement of any utility. Solar and battery both read this same figure: they price the same transaction, a residential rooftop kWh exported under the state's DG tariff. For the battery it is an opportunity cost — the income you give up by storing a kilowatt-hour instead of selling it — so a lower export rate makes a battery MORE valuable, not less.
Fallback system-loss factorAssumption86%Only used where a location has no PVGIS yield figure. Superseded for all 51 states.
Cost-per-watt benchmark sizeAssumption8 kWSystem size the quoted $/W describes; cost scales from here.
Outputs Computed from the rows above by the formula in this section.
Solar system sizeCalculatedCalculated from monthlyKwh, kwhPerKwYear.
First-year solar generationCalculatedCalculated from systemKw, kwhPerKwYear.
Payback periodCalculatedCalculated from netCost, annual savings, degradation, price escalation.
Lifetime net gainCalculatedCalculated from annual savings, analysis period.

EV vs gas

Fuel cost only — this compares what it costs to move the car, nothing else.

gallons = annual_miles / mpg gas_cost = gallons × gas_price kWh_from_wall = annual_miles / mi_per_kWh / 0.9 home_kWh = kWh_from_wall × home_share public_kWh = kWh_from_wall − home_kWh ev_cost = home_kWh × home_rate + public_kWh × 0.48 break_even_gas = ev_cost / gallons

The division by 0.9 is the part most comparisons omit: you pay for the electricity that leaves the wall, not the amount that reaches the battery. Blending in public charging matters just as much — DC fast charging runs several times the residential rate, which is where the “my EV isn't actually cheaper” complaints come from.

InputValueWhere it comes from
Measured inputs Observed by a named external dataset.
Residential electricity priceSourced11.92¢/kWh – 44.61¢/kWhyou can change thisU.S. Energy Information Administration — Year to date through May 2026The single most load-bearing input on the site — it prices solar savings, EV charging, heat-pump running cost and battery arbitrage simultaneously.
Gasoline priceSourced$3.60/gal – $5.66/galyou can change thisAAA — Spot price on the retrieval date
Annual miles drivenSourced6,700 – 21,600 miles/yryou can change thisFederal Highway Administration — 2023 (latest complete release)Miles per licensed driver. Our EV comparison models one driver's annual mileage, which this matches; it is not miles per household or per vehicle.
Assumptions Chosen by Payback Math.
EV efficiencyAssumption3.5 mi/kWhyou can change thisTypical mainstream EV before charging losses.
Petrol car efficiencyAssumption26 MPGyou can change thisTypical mainstream combined figure. The comparison car is a modelling choice, not an observation.
Charging efficiencyAssumption90%AC losses between wall and battery. You pay for what leaves the wall, not what reaches the battery.
Public fast-charging priceAssumption$0.48/kWhRepresentative DC fast-charging rate. Varies widely by network, session and membership.
Share charged at homeAssumption80%you can change thisTypical owner with a driveway. The single biggest swing factor in EV running cost.
EV comparison periodAssumption5 yearsTypical ownership span.
Outputs Computed from the rows above by the formula in this section.
Cost per mileCalculatedCalculated from rateCentsPerKwh, EV_MILES_PER_KWH, CHARGING_EFFICIENCY.
Break-even gasoline priceCalculatedCalculated from EV running cost, gallons.

Excluded: purchase price, depreciation, insurance, maintenance, tax credits, and the EV registration surcharges several states levy in place of fuel tax. Those often matter more than fuel — this sizes the fuel gap so you can weigh it against the price difference yourself.

Heat pump vs gas furnace

Annual heat demand is derived from heating degree days and a modelled building heat-loss rate, then met two ways.

UA = floor_area × 0.25 (BTU/hr per °F) heat_BTU = HDD × 24 × UA therms = heat_BTU / AFUE / 100,000 gas_cost = therms × gas_price_per_therm seasonal_COP = clamp(3.8 − HDD/5000, 1.8, 3.6) kWh = heat_BTU / COP / 3412 heat_pump_cost = kWh × electricity_rate

COP falls with climate severity. Applying one flat efficiency nationwide — the usual approach — assumes a mild winter in a cold state.

The full state-by-state consequence of this choice, including a test of the switching condition in every jurisdiction, is set out in heat pump vs gas furnace economics by state.

That climate-varying COP is the single biggest reason published heat-pump savings fail to show up on real bills. A unit works harder per unit of heat as it gets colder, and leans on resistance backup during cold snaps.

InputValueWhere it comes from
Measured inputs Observed by a named external dataset.
Residential electricity priceSourced11.92¢/kWh – 44.61¢/kWhyou can change thisU.S. Energy Information Administration — Year to date through May 2026The single most load-bearing input on the site — it prices solar savings, EV charging, heat-pump running cost and battery arbitrage simultaneously.
Residential natural gas priceSourced$0.74/therm – $5.05/thermyou can change thisU.S. Energy Information Administration — 2025 for 44 states; 2024 for the 7 EIA withheld (CT, ME, MD, NC, OK, RI, SC)
Heating degree daysSourced0 – 11,003 HDD, base 65°FNOAA Climate Prediction Center — Published climatological normals (1971–2000 base period)Sets annual heating demand and the climate-adjusted seasonal COP.
Assumptions Chosen by Payback Math.
Modelled home sizeAssumption2,000 sq ftyou can change thisA single reference house is used so the state-to-state comparison isolates climate and fuel price rather than housing stock. Census median new-home size is published, but the median *existing* heated floor area by state is not, and heating demand scales almost linearly with it — so this is the input to change first if your home differs.
Building heat-loss rateAssumption0.25 BTU/hr·°F per sq ftyou can change thisModerately insulated. Draughty ≈ 0.40, well-sealed ≈ 0.15 — selectable in the calculator.
Gas furnace efficiencyAssumption92%you can change thisModern condensing unit. Older furnaces run nearer 80%, which favours the heat pump.
Heat pump install premiumAssumption$4,000you can change thisExtra up-front cost over a like-for-like furnace replacement, before rebates. Highly local.
Heat pump analysis periodAssumption15 yearsTypical equipment life.
Negligible-heating thresholdAssumption500 HDDBelow this the page reports no meaningful heating season rather than printing noise.
Outputs Computed from the rows above by the formula in this section.
Seasonal COPCalculatedCalculated from hdd.
Annual heating demandCalculatedCalculated from hdd, DEFAULT_HOME_SQFT, HEAT_LOSS_PER_SQFT.

Excluded: the cooling benefit (a heat pump replaces your air conditioner too, which can flip the case), rebates, maintenance differences and any electrical panel upgrade.

Home battery

A battery holds one charge and returns it about once a day. It can arbitrage a time-of-use spread or store solar you would otherwise export cheaply — not both with the same stored kilowatt-hour.

usable = capacity × 0.9 peak = rate + spread/2 off_peak = rate − spread/2 arbitrage/cyc = usable × peak − (usable / 0.9) × off_peak solar/cyc = usable × retail − (usable / 0.9) × retail × export_ratio annual_value = max(arbitrage/cyc, solar/cyc) × 300 payback = net_cost / annual_value

Quotes that list arbitrage savings and solar savings and then total them are counting one battery twice.

Dividing by 0.9 is deliberate: to deliver one usable kilowatt-hour you must buy about 1.11. Omitting that overstates arbitrage by roughly 11.1%.

Three value streams, never added together. A battery can arbitrage a time-of-use spread, or store solar it would otherwise export, but not both with the same stored kilowatt-hour — so the model takes the larger of the two, not the sum. Backup power is a third stream and is priced separately, never inside payback.

Storing solar is worth what you did NOT sell it for. This is the part most battery maths gets wrong. If power costs 30¢ and exports earn 6¢, moving one exported kilowatt-hour into later household use does not create 30¢ of value — you were already earning 6¢ for it. The gain is the retail purchase you avoid minus the export income you give up, and because delivering one kilowatt-hour means diverting 1.11 into the battery, that is how many exports you forgo.

One consequence is counter-intuitive and worth stating plainly: the less your utility pays for exports, the more a battery is worth. Full retail net metering is the arrangement that makes a battery hardest to justify, because the grid is already storing your power for free. Solar and battery read the same export compensation for a given state — they are pricing the same exported kilowatt-hour, once as income and once as an opportunity cost — so the two calculators cannot disagree about what it is worth.

Backup power is valued separately and never folded into payback. Keeping the lights on during an outage is real value, but it is insurance, not a return. Each state page lets you price an hour of kept power yourself and shows the result beside — not inside — the payback figure.

InputValueWhere it comes from
Measured inputs Observed by a named external dataset.
Residential electricity priceSourced11.92¢/kWh – 44.61¢/kWhyou can change thisU.S. Energy Information Administration — Year to date through May 2026The single most load-bearing input on the site — it prices solar savings, EV charging, heat-pump running cost and battery arbitrage simultaneously.
Unresolved inputs Presented as fact, provenance not established.
Annual outage durationSource unresolved2 – 13 hours/yrShould come from EIA-861 reliability (SAIDI, with major event days stated explicitly). The EIA-861 archive we tried returns a stub. Note SAIDI is average interruption duration per customer — not the same as 'hours without power' for any individual home. Used only to frame backup value, which is deliberately excluded from payback.
Solar export compensation policySource unresolvednone / partial / fullyou can change thisThe regulatory structure — whether a state credits exports at the retail rate, runs net billing, or leaves it to each utility. Seven jurisdictions are now verified against a primary regulator or DSIRE's published policy notes (California, Arizona, Texas, Idaho, Vermont, New York, Oregon); the other 44 carry the site's earlier three-bucket assumption and are openly flagged as unverified rather than promoted. DSIRE's per-state records sit behind a licensed API and its summary maps encode states as unnamed polygons, so reading 51 classifications out of map colours would be inferring data from a picture. Full per-jurisdiction records in src/data/exportPolicy.js.
Assumptions Chosen by Payback Math.
Time-of-use peak/off-peak spreadAssumption0¢/kWh – 28¢/kWhyou can change thisA statewide TOU spread is fake precision: tariffs vary by utility, season, weekday, hour and programme eligibility, and many households are not on a TOU tariff at all. Treated as a baseline to make battery arbitrage tractable, and adjustable on every battery page.
Modelled export compensationAssumption—you can change thisWhat an exported kWh earns where the state does NOT credit at the retail rate. Modelled in cents rather than as a share of retail, because avoided cost tracks wholesale generation value and does not rise with a state's retail rate — the old percentage model overstated Arizona by about a third and California by roughly 170%, worst exactly where retail rates are highest. Anchored on the only residential export tariffs we verified against a regulator: Arizona's Resource Comparison Proxy (APS 6.171¢, TEP 5.70¢). A baseline, not a measurement of any utility. Solar and battery both read this same figure: they price the same transaction, a residential rooftop kWh exported under the state's DG tariff. For the battery it is an opportunity cost — the income you give up by storing a kilowatt-hour instead of selling it — so a lower export rate makes a battery MORE valuable, not less.
Battery capacity modelledAssumption13.5 kWhyou can change thisTypical single home battery.
Battery installed costAssumption$1,100/kWhyou can change thisBefore incentives. Like solar $/W, this varies more by installer and project than by state.
Usable capacityAssumption90%Manufacturers publish usable capacity per product, not as an industry statistic, and the figure differs by chemistry and by how the installer configures a reserve for backup. A representative value is used rather than one vendor's spec sheet.
Round-trip efficiencyAssumption90%Delivering one usable kWh means buying about 1.11. Omitting this overstates arbitrage by ~11%.
Cycles per yearAssumption300 cyclesyou can change thisNear-daily cycling — the optimistic case.
Battery warrantyAssumption10 yearsReference period for the battery verdict. A payback arriving after the warranty is not one you can rely on.
Outputs Computed from the rows above by the formula in this section.
Battery annual bill savingCalculatedCalculated from touSpreadCents, the jurisdiction's export compensation, ROUND_TRIP_EFFICIENCY.

How verdicts are assigned

Where a page shows a plain-language verdict, the thresholds are tied to the product's own lifetime rather than invented bands. A payback is only meaningful relative to how long the equipment lasts.

AssumptionValueWhy
StrongPayback ≤ 40% of analysis periodCost recovered with most of the equipment's life still ahead.
Reasonable40–70% of analysis periodRecovered, with useful life remaining.
Marginal70–100% of analysis periodOnly breaks even near end of modelled life.
Does not pay backBeyond analysis periodNever recovered within the horizon we model.

For batteries the reference is the 10-year warranty, not the analysis horizon — a payback that arrives after the warranty expires is not a payback you can rely on.

Incentives and tax credits

Incentives move these numbers more than almost any modelling choice, and they change frequently. Our position is to model only what we can state precisely, and to say plainly what is excluded.

Federal residential clean-energy credit: 0% for new 2026 installations. Public Law 119-21, enacted 4 July 2025, terminated §25D for expenditures made after 31 December 2025. Under §25D(e)(8)(A) an expenditure is treated as made when the original installation is completed — so paying in 2025 for a system commissioned in 2026 does not preserve the credit. A system finished in 2025 is unaffected and is claimed on the 2025 return, and unused credit from an earlier qualifying year may still be carried forward; neither is a credit for a new 2026 installation, which is what this site models.

What the baseline represents: A homeowner who buys and owns a residential solar system whose installation is completed in 2026. Business clean-electricity credits such as §48E continue on their own timetable, but they are claimed by the owner of the system. In a lease or PPA the installer owns the equipment and may or may not pass the value through in the rate — that is not modelled here, and it is not a credit the homeowner receives.

State and utility incentives are not modelled by default — they are too local and change too often for a national dataset — but the battery and heat-pump calculators let you enter a rebate amount and see its effect immediately.

Proposed legislation is not modelled. H.R. 5862 (119th Congress), introduced 28 October 2025, would reverse the termination. It has not been reported out of committee or passed either chamber, so it is not reflected in these figures. Payback Math publishes the current-law baseline, never a forecast of what Congress might do.

Verified against Internal Revenue Service guidance on (Public Law 119-21, enacted ). Tax eligibility depends on individual circumstances: this is the baseline federal treatment for a typical homeowner-owned installation, not tax advice.

Nothing here should be read as a guarantee that any rebate is available to you. Confirm current programmes before spending money.

Uncertainty

These are estimates from state averages, not quotes for your property. Results move with future energy prices, your actual usage, equipment and installation cost, financing, maintenance, local climate and incentives. The calculators expose the inputs that matter most precisely so you can test how sensitive the answer is to each one.

Where a figure is an informed estimate rather than a sourced measurement, our data sources page says so explicitly, field by field.

Data updated · Calculation model 2026.08.6 · change history