SolarEnergyPrices

Methodology

This site lives or dies on trust, so every number has a provenance. This page documents how each class of data is produced. Calculator engine version: 2026.08.1.

1 · The data-class taxonomy

Every figure on the site carries one of these labels, visually and in the data:

ClassMeaningExample
Verified currentConfirmed against an authoritative source at last checkEIA state electricity rates
Market estimateCompiled from multiple public sources; a range, not a guaranteeState median $/W
Your inputValues you enter into a calculatorYour annual kWh
Projection / scenarioModeled future values under visible assumptionsYear-10 savings at 2% escalation
Expired / endedNo longer available — rendered as expired, never as current§25D residential credit
Recheck neededWe could not verify current status at last sweepSome state program records
Data unavailableNo reliable public source foundZIP-level price precision (we refuse to invent it)

2 · Cost per watt ($/W) — state estimates

State median / low / high cash $/W figures are market estimates compiled 2026-Q1/Q2 from: EnergySage marketplace quote data (national median ≈ $2.95/W), NREL residential system cost benchmarks (≈ $2.62/W), installer price surveys, and state-level market reports. Ranges are set to span typical cash quotes for a straightforward rooftop install, before incentives. We do not publish ZIP-level or city-level exact prices — there is not enough public data to do that honestly. Outliers (very low “panel-only” deals, very high “whole-home+EV+battery” projects) are excluded from medians and documented where material.

3 · Electricity rates

State residential rates and monthly usage come from the U.S. Energy Information Administration (EIA), Electric Power Monthly, May 2026 reporting (published with ~3-month lag). Rates are statewide averages — a household’s actual utility, tariff, and usage tier can differ substantially; we say so on every page and provide utility records where we have them.

4 · Solar resource / production factors

Production factors (kWh per installed kW per year) are latitude-derived estimates based on NREL GHI/PVWatts-style annual insolation, then reduced ~14% for system losses (inverter, soiling, mismatch, wiring). They are planning values, not roof-level engineering. For site-specific numbers, use PVWatts or ask the installer to show their modeling.

5 · Incentives

Every incentive record carries: name, jurisdiction, type, amount (quoted from program materials), eligibility, status, source, and lastChecked. Status rules: shown as current only when verified at last sweep; expired when the program ended (e.g., §25D 2025-12-31, NJ SRECs 2022, CO income-tax credit 2021); recheck when unverifiable. We never present an expired incentive as available, and we never invent amounts. Primary references: IRS guidance, state energy offices, DSIRE, utility tariffs.

6 · Savings, payback & LCOE calculations

7 · Financing

Loan payments use standard amortization. Dealer-fee math: financed principal = cash price ÷ (1 − dealer fee); we display the principal, the fee in dollars, monthly payment, and total paid over the term. Lease/PPA totals accumulate payments with the stated escalator over the term, undiscounted, and are labeled as such. We do not assert that any path is universally better.

8 · Quote analysis

The quote analyzer normalizes a quote to $/W, compares it to the state’s low/high range, and classifies it (below / typical / above / well-above). Red flags are rule-based on what the user enters (missing models, no production estimate, an implied federal credit in a 2026 price, undisclosed dealer fee, escalators >4%). We do not accuse specific companies without evidence, and legitimate add-ons are explained, not penalized.

9 · Data freshness

Anchors: rates 2026-05 · cost data 2026-Q1 · incentives 2026-08-21. Records show their own dates. When data goes stale or policy changes, status flips to “recheck needed” or “expired” — it never silently stays “current.”

10 · What we will not do

Full source list: sources page · corrections: contact.