Home › Home Energy & Electrical › Solar Payback Calculator
Solar Payback Calculator
Estimates the annual generation of a photovoltaic system from its size and specific yield, the first-year savings from self-consumed electricity and exported energy, the simple payback period, and a year-by-year table with panel degradation and electricity price escalation over the analysis period, including the levelised cost of the solar electricity.
When to use
You want to judge a solar quote: how many years until the system has paid for itself, what it saves over its life, and what its electricity costs per kWh.
Do not use when: You need the daily output of a panel array from irradiance (use solar-panel-output), a financed system with loan interest, or discounted cash-flow measures; results are estimates, not financial advice.
Formula
annual_generation_kwh = system_size_kw × annual_yield_kwh_per_kw; generation_y = annual_generation_kwh × (1 − annual_degradation_percent/100)^(y−1); savings_y = generation_y × (self_consumption_percent/100 × electricity_price_per_kwh × (1 + price_escalation_percent/100)^(y−1) + (1 − self_consumption_percent/100) × feed_in_tariff_per_kwh); simple_payback_years = system_cost / savings_1; lifetime_savings = Σ savings_y; net_benefit = lifetime_savings − system_cost; lcoe_per_kwh = system_cost / Σ generation_y
Undiscounted cash-flow model with linear-geometric degradation (NREL median 0.5 %/year) and no inverter replacement, maintenance or financing costs; the specific yield should come from a site tool such as NREL PVWatts. Informational estimate, not financial advice.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
system_size_kw | number | kWp | yes | Rated DC capacity of the array in kilowatts-peak. Range: > 0, ≤ 100000 |
system_cost | number | yes | Installed cost after rebates and tax credits, in your currency. Range: > 0, ≤ 1000000000 | |
annual_yield_kwh_per_kw | number | kWh/kWp/year | default 1400 | Annual generation per kWp: about 900–1,100 in northern Europe, 1,300–1,600 in the southern US and southern Europe, up to 1,900 in deserts (PVWatts gives a site value). Range: ≥ 300, ≤ 2500 |
electricity_price_per_kwh | number | per kWh | yes | Retail price per kWh that self-consumed solar electricity displaces. Range: ≥ 0, ≤ 100 |
self_consumption_percent | number | % | default 100 | Share of generation used on site (100 with net metering; 30–50 without a battery; higher with one). The rest is exported at the feed-in tariff. Range: ≥ 0, ≤ 100 |
feed_in_tariff_per_kwh | number | per kWh | default 0 | Payment per exported kWh. Range: ≥ 0, ≤ 100 |
annual_degradation_percent | number | %/year | default 0.5 | Yearly loss of output; 0.5 % per year is the NREL median for crystalline silicon. Range: ≥ 0, ≤ 5 |
price_escalation_percent | number | %/year | default 0 | Yearly increase of the retail electricity price (the feed-in tariff is held constant). Range: ≥ -10, ≤ 20 |
analysis_years | integer | years | default 25 | Years in the savings table (25 matches typical panel performance warranties). Range: ≥ 1, ≤ 25 |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
annual_generation_kwh | number | kWh | system_size_kw × annual_yield_kwh_per_kw. |
first_year_savings | number | Generation × (self-consumed share × price + exported share × feed-in tariff). | |
simple_payback_years | number | years | system_cost / first_year_savings. |
cumulative_payback_years | number | years | Year (interpolated) in which cumulative savings reach the system cost; absent when not reached within analysis_years. |
lifetime_generation_kwh | number | kWh | Sum of yearly generation over analysis_years with degradation. |
lifetime_savings | number | Sum of yearly savings over analysis_years. | |
net_benefit | number | lifetime_savings − system_cost. | |
lcoe_per_kwh | number | per kWh | system_cost / lifetime_generation_kwh (undiscounted, no maintenance costs). |
yearly | list | Per year: year, generation_kwh, savings, cumulative savings. |
Example
6 kW for 12,000 at 1,400 kWh/kWp, 0.30 per kWh, 100 % self-use: {"system_size_kw":6,"system_cost":12000,"annual_yield_kwh_per_kw":1400,"electricity_price_per_kwh":0.3,"self_consumption_percent":100} → {"annual_generation_kwh":8400,"first_year_savings":2520,"simple_payback_years":4.76,"lifetime_savings":59361,"net_benefit":47361,"lcoe_per_kwh":0.0606}
10 kW, 40 % self-use, 0.08 feed-in, 3 % escalation, 20 years: {"system_size_kw":10,"system_cost":18000,"annual_yield_kwh_per_kw":1100,"electricity_price_per_kwh":0.25,"self_consumption_percent":40,"feed_in_tariff_per_kwh":0.08,"price_escalation_percent":3,"analysis_years":20} → {"annual_generation_kwh":11000,"first_year_savings":1628,"simple_payback_years":11.06,"lifetime_savings":38129.87,"net_benefit":20129.87,"lcoe_per_kwh":0.0858}
GET https://tttkmbb.com/api/v1/calculate/solar-payback?system_size_kw=6&system_cost=12000&annual_yield_kwh_per_kw=1400&electricity_price_per_kwh=0.3&self_consumption_percent=100
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/solar-payback(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/solar-payback · Markdown: https://tttkmbb.com/energy/solar-payback.md · JSON definition: https://tttkmbb.com/energy/solar-payback.json
- MCP: server
https://tttkmbb.com/mcp, toolrun_calculator with calculator_id="solar-payback" - OpenAPI operationId:
estimate_solar_payback - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
- NREL PVWatts Calculator (government)
- Wikipedia – Levelized cost of electricity (reference)
- Wikipedia – Solar panel (reference)
FAQ
Where do I get the specific yield?
Run NREL PVWatts (or PVGIS in Europe) for your address, tilt and orientation; it returns annual kWh per kW of installed capacity.
What is self-consumption and why does it matter?
It is the share of solar output used in the house instead of exported. Self-consumed energy is worth the retail price; exported energy only earns the feed-in tariff, often a third of it.
Why does the payback with degradation differ from the simple payback?
Simple payback assumes first-year savings repeat forever; the cumulative version applies yearly panel degradation and price escalation, so it is longer without escalation and can be shorter with it.
Related calculators
- Solar Panel Output Calculator — Daily energy of the array from irradiance and panel rating.
- Electricity Cost Calculator — What the displaced consumption costs at your tariff.
- Electricity Carbon Footprint Calculator — CO₂ avoided by the generated kWh.