Methodology and data sources
Every number this site publishes should be reproducible by a reader who disagrees with us. This page lists the inputs, the formulas, the sources and the things we deliberately do not model.
Federal policy applied
The 30% federal residential credit (IRC §25D) expired for systems placed in service after December 31, 2025. A 2026 cash or loan purchase receives no federal credit. Leases and PPAs remain eligible indirectly: the third-party owner claims the commercial credit (IRC §48E) and reflects part of it in the price offered, provided the system is placed in service by December 31, 2027.
Assumptions
Changing any of these changes the answer. The three marked high sensitivity do most of the work — and are exactly the inputs a sales quote tends to set in its own favour.
| Input | Value | Sensitivity | Why |
|---|---|---|---|
| Panel degradation | 0.005 | low | Standard linear performance warranty for mainstream modules is ~0.5%/yr after year one. Premium modules warrant less; we use the conservative figure. |
| Electricity price growth | 0.03 | high | Long-run US residential retail electricity price growth. This is the single most abusable input in solar sales — quotes assuming 5–6% escalation make almost anything look like a win. 3% is deliberately sober. |
| Discount rate | 0.05 | high | The household opportunity cost of capital. A homeowner who would otherwise pay down a mortgage or hold index funds is giving up roughly this much. Setting it to zero is what makes 25-year "total savings" headlines meaningless. |
| Power used as generated | 0.35 | high | Share of generation used on-site without storage. Daytime generation rarely lines up with household load. Rises materially with a battery, an EV or a heat pump. |
| Installed cost | 3 | high | All-in installed residential cost, $/W DC. Varies widely by market and by installer; the calculator lets the reader override it with their own quote. |
| Annual maintenance | 150 | low | Monitoring, insurance rider, occasional cleaning and repair, $/yr. Excluded entirely by most calculators. |
| Inverter replacement | year: 13, cost: 2200 | medium | String inverters typically carry a 10–12 year warranty and are replaced once inside a 25-year horizon. Microinverter systems may avoid this; the calculator allows setting the year to 0. |
| Loan dealer fee | 0.2 | high | Fee embedded in the financed price of a low-APR solar loan, as a share of system cost. Rarely disclosed on the quote; it is the reason a "1.99% APR" loan can cost more than a cash purchase. |
| §48E pass-through | 0.5 | medium | Share of the 30% §48E credit a third-party owner is assumed to reflect in the customer price, rather than retain for cost of capital and margin. This is an estimate, not a published figure, and is labelled as such wherever shown. |
Data sources
- Sunlight and production — NREL PVWatts v8, via
developer.nlr.gov. Weather input is NSRDB typical meteorological year data, so estimates describe a normal year, not any particular year. - Electricity rates — EIA Electric Power Monthly, table 5.6.A: the average price actually paid by residential customers in each state, compiled monthly from utility filings.
- Utility tariff detail — the OpenEI Utility Rate Database, maintained by NREL, used for per-utility work rather than headline state rates. Flat and tiered structures are modelled exactly.
- Incentives — compiled by hand from each programme administrator, with a source link and review date per state. DSIRE offers no free public API, so this cannot be automated.
Why state rates do not come from the tariff database
We started with NREL's utility rate data and moved off it for headline state figures after measuring how it behaves. Three problems, all real:
- Its coarse average understated what households pay — $0.149/kWh for NSTAR in Massachusetts, against a $0.247 median of that same utility's own current tariffs, and $0.288 in EIA's filings-based figure.
- In deregulated states the database holds supply-only and delivery-only tariffs side by side. PSE&G's residential records span $0.022 to $0.269/kWh, and no automatic average across them means anything.
- Coverage is uneven. A San Francisco lookup returned three residential records, all last edited more than eight years ago.
Tariff records older than three years are now rejected outright rather than used quietly.
What we do not model
- Demand charges. Residential tariffs carrying them are excluded rather than approximated.
- Time-of-use load shape. On a TOU tariff we weight rate periods by hours covered, which assumes flat consumption. Real households skew toward the evening peak, so a TOU estimate here is optimistic. The calculator says so where it applies.
- Roof geometry. Defaults assume a 20° south-facing roof with no shading. A shaded or north-facing array will underperform this.
- Home resale value. Claimed effects vary too widely by market to model honestly.
- Battery backup value. The battery calculator models bill savings but puts no number on resilience during an outage — that depends on how often your power fails and what it costs you.
- Comfort, air quality and carbon. The heat pump calculator answers running cost only. Several excluded factors favour a heat pump.
Known weaknesses
State rates are a statewide average. Your own utility may sit well above or below it, and within a state the spread is wide. A state page is a starting point, not a substitute for your own bill — if a figure here does not match what you pay, trust your bill and tell us.
Production estimates use typical-meteorological-year weather, so they describe a normal year rather than any particular one, and assume an unshaded roof at the stated tilt.
Data status: 50 of 50 state records have been refreshed from live sources. Dataset last refreshed 2026-08-16T12:52:22.163Z. Per-state detail is on the data sources page.
Independence
We do not sell solar installations, and we do not collect or sell your contact details. Where we link to a provider we may earn a referral fee; that never changes a calculation, and the model has no input for it.