Methodology: How We Calculate

Our Promise

Every number on this site is derived from public data, physics, and honest math. We show our assumptions. We show our sources. We update when data changes.

We do not take money from installers, manufacturers, or energy companies.

Contents

  1. Solar Yield Calculation
  2. Electricity Price Data
  3. Country Coverage
  4. Heat Pump Modeling
  5. Payback Calculation
  6. Battery Economics
  7. Equipment Lifespans
  8. Self-Consumption Model
  9. Subsidy Tracking
  10. Comparison to Installer Quotes
  11. Known Limitations
  12. Updates & Corrections
  13. Sources
  14. License

Solar Yield Calculation

Source: PVGIS (European Commission JRC)

We use the Photovoltaic Geographical Information System (PVGIS) developed by the EU Joint Research Centre. It is the scientific standard for solar yield estimation in Europe.

Quick vocab: A kilowatt-peak (kWp) is how much power a solar panel can produce in perfect midday sun. An 8 kWp system is about 20 panels on a typical roof. A kilowatt-hour (kWh) is the energy you actually use — like running a 1,000-watt heater for one hour. Your electricity bill is in kWh.

Why PVGIS:

What we input:

What PVGIS outputs:

What we add:


Electricity Price Data

Source: Eurostat, National Regulators

Feed-in tariff: The price the grid pays you for excess solar you export. Think of it as the wholesale price the power company buys your electricity for — usually much lower than what they sell it to you for.

Country Source Update Frequency
All EU Eurostat nrg_pc_204 Semi-annual
Hungary MEKH (Hungarian Energy Authority) Monthly
Poland URE (Energy Regulatory Office) Monthly
Germany Bundesnetzagentur Annual
etc. ... ...

What we show:

What we don't do:


Country Coverage

Our calculator covers 42 European countries plus an EU Average profile. Data is sourced from Eurostat and national regulators for each market.

Countries

Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Luxembourg, Netherlands, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden.

EU Average

The EU Average is a composite profile using median electricity prices, equipment costs, and solar yields across the EU-27. It is useful for rough estimates when you don't know your exact country, but country-specific data is always more accurate.

What varies by country

Factor How it differs
Electricity price €0.08–0.37/kWh (Finland to Ireland)
Feed-in tariff €0.03–0.12/kWh (some countries have none)
Solar yield 750–1,700 kWh/kWp/year (north to south)
Equipment cost €600–1,200/kWp installed
VAT / taxes 0–27%
Subsidies Country-specific grants and tax deductions
Net metering rules Net total, net billing, or per-phase

Heat Pump Modeling

SCOP = 4.6 (Constant)

We model heat pumps with a constant Seasonal Coefficient of Performance (SCOP) of 4.6. This means 1 kWh of electricity produces 4.6 kWh of heat over the heating season.

SCOP vs COP: COP is an instantaneous measure that changes with outdoor temperature. SCOP is the regulated seasonal average — like EPA miles-per-gallon for a car, it averages across all conditions. A SCOP of 4.6 means you get 4.6 units of heat for every 1 unit of electricity, averaged across the year. A modern condensing gas boiler is ~0.9–0.95; older non-condensing boilers are ~0.8. Electric resistance is 1.0.

Why constant? Real-world performance varies with outdoor temperature (lower in cold weather, higher in mild weather). We use 4.6 as a realistic annual average for modern air-to-air heat pumps in Central European climates. Caveat: Air-to-water heat pumps in Northern Europe (Finland, Sweden) typically achieve SCOP 2.5–3.5. Our model overestimates their performance. A future version will add climate-dependent SCOP curves.

How heating demand is distributed

  1. You input your total annual heating demand (thermal kWh needed to heat your home)
  2. We distribute this across the year using a seasonal factor based on day length and a heating-season curve
  3. Demand is concentrated in October–April, with peaks in January
  4. The heat pump's electrical demand = thermal demand ÷ 4.6

Why this changes everything

Without heat pump With heat pump
Annual electricity: ~3,000 kWh Annual electricity: ~8,000–12,000 kWh
Battery charges most days year-round Battery often charges zero in December–January
Self-consumption: 40–60% Self-consumption: 20–35%
Solar covers most of your demand Solar covers heating first, little left for other uses

This is why adding a heat pump to an existing solar system often makes the economics look worse — your demand doubled but your solar stayed the same.


Payback Calculation

The Honest Formula

Simple Payback (years) = Total Cost / Annual Savings

What this means: If you spend €7,000 and save €700 per year, you get your money back in 10 years. Simple.

Total Cost includes:

  1. System cost (panels + inverter + installation)
  2. Battery cost (if applicable)
  3. Inverter replacement (at year 12, 50% of original)
  4. Annual maintenance (€100–200/year)
  5. Insurance premium increase

Annual Savings includes:

  1. Self-consumption: kWh × electricity price
  2. Export: kWh × feed-in tariff

What we DON'T include (because it's dishonest or not yet modeled):

NPV Calculation

NPV = -Upfront + Σ (Annual Net Benefit / (1 + discount_rate)^year)

Where Annual Net Benefit is:

(Baseline electricity cost − Actual grid import cost + Export revenue − O&M costs)

Baseline electricity cost = (base load + heating capped at heat-pump efficiency) × electricity price

Why we cap heating in the baseline: Without this cap, resistive electric heating (COP 1.0) would inflate NPV by creating 4.6× more electricity demand for solar to offset. This made resistive heating look like a better investment than a heat pump, which is absurd. The baseline uses the minimum of your actual heating electricity and the heat-pump-efficient equivalent (heatingDemand / 4.6). This means:

NPV honestly reflects whether solar is a good investment — independent of heating efficiency choices.

NPV in plain English: Would you rather have €7,000 in your bank account earning interest, or spend it on solar panels? NPV adds up all your solar savings over 25 years, then subtracts what you could have earned by investing the same money at 6% instead. If the result is positive, solar beats the bank. If negative, keep your money in the bank.

If NPV > 0, the investment is financially justified. If NPV < 0, it loses money.


Battery Economics

How We Model Batteries

Our calculator simulates the battery hour-by-hour within the full year, not as a separate spreadsheet calculation:

  1. Midday: Solar exceeds demand → excess charges battery (up to max charge rate)
  2. Evening: Solar drops, demand peaks → battery discharges to cover deficit
  3. Night: Battery depleted → grid imports resume
  4. Round-trip efficiency: 85% (2,569 kWh in → 2,181 kWh out = 15% loss, matching real Li-ion batteries)

Battery Utilization Reality

A 10 kWh battery does not cycle 10 kWh every day. We model an effective capacity factor that scales with your solar-to-demand ratio. This is not a cycling metric — it is a capacity adjustment that reflects the reality that an oversized battery relative to available solar excess cannot be filled every day:

This is a simplified proxy for weather variability. A more sophisticated model would simulate individual cloudy days explicitly.

When We Say "Battery Doesn't Pay Back"

In flat-rate countries (Hungary, most of Eastern Europe):

Flat-rate tariff: You pay the same price for electricity whether it's 3 AM or 6 PM.

In time-of-use countries (Netherlands, some UK):

Time-of-use (TOU): Electricity costs different amounts at different times.


Equipment Lifespans

Component Lifespan Source
Solar panels 25–30 yr NREL degradation studies
Inverter 10–15 yr NREL/PVEL reliability data
Battery (LiFePO₄) 10–15 yr Calendar aging, not cycles
Mounting 25 yr Galvanized steel specs
Cabling 25 yr Insulation degradation

Replacement cost assumption:


Self-Consumption Model

We use a 365-day hourly simulation (8,760 timesteps = 365 days × 24 hours) for the calculator's primary results. Every single day of the year is modeled hour-by-hour.

Engine disclosure: The site actually runs three engines. The inline calculator uses the full 365-day hourly model described here. Some auxiliary comparisons (heating system costs, profile selection) use a simplified monthly 4-band model (48 timesteps/year) for speed. Our detailed guides (solar winter heating, price crisis) use a third object-oriented engine with proper band-by-band (morning/midday/evening/night) matching that accounts for the day-night cycle — the most accurate of the three. The hourly engine is the authoritative one for payback and self-consumption results in the calculator.

Self-consumption: The percentage of your solar energy you use directly in your home instead of exporting to the grid. Higher is better — every kWh you self-consume saves you the full retail price. Every kWh you export only earns the low feed-in tariff.

How it works

  1. Solar profile: Half-sine curve during daylight hours, scaled to daily PVGIS production. Each of the 365 days has its own daylight duration (January ≈ 8.5h, July ≈ 15.5h) and production level based on the seasonal cycle.
  2. Base load profile: Hourly shape based on occupancy (see below). Peaks in morning and evening, low during work hours. Scaled to the user's annual base electricity input.
  3. Heating profile: Distributed across heating-season days using a temperature-driven seasonal factor. Heat pump electricity demand is computed from thermal demand divided by SCOP 4.6. Runs whenever outdoor temperature is below the heating threshold.
  4. Battery simulation: Hour-by-hour state of charge for all 365 days. Charges from midday excess, discharges in evening/night. Round-trip efficiency: 85%. Battery utilization scales with solar-to-demand ratio (see Battery Economics above).
  5. Net metering: The engine computes hourly self-consumption, export, and import, then values them at retail price and feed-in tariff. It does not currently model annual netting, virtual offset, or per-phase balancing. Country-specific net metering rules are documented in our data files but not applied in the simulation.

Occupancy profiles

Profile Solar-hour demand Typical user
Regular (default) ~36% Family, some home during day
Away all day ~24% Commuters, empty house 9–5
Work from home ~43% Remote worker, high daytime use
Full time occupancy ~43% Always someone home
Retired ~43% Home all day, moderate use
Weekend only ~28% Holiday home, rarely there

Winter reality check

With a heat pump in January, a 5 kWp system produces ~3 kWh/day while heating alone demands ~30 kWh/day of thermal output (≈ 6.5 kWh of electricity at SCOP 4.6). The battery often has nothing to charge from — every watt of solar goes straight to heating. Our simulation shows ~47 zero-charge days per year for typical heat-pump households.

Even a 10 kWh battery is usually empty by 4 AM. From 4 AM to 9 AM, all heating comes from the grid — solar hasn't started yet and the battery is depleted. This is why "solar + heat pump + battery" is still heavily grid-dependent in winter.

Why this matters: Most online calculators use monthly averages that smooth over this gap. Our 365-day simulation captures the brutal reality of December week-by-week. See our Self-Consumption Reality guide for why other calculators show 60–90% and we don't.


Subsidy Tracking

We track subsidies by country from official sources:

Status codes:

We update when programs change. We do NOT estimate future subsidies.


Comparison to Installer Quotes

Why Installers Show Better Numbers

Tactic What They Do What We Do
Optimistic yield Assume 1,200 kWh/kWp in Hungary Use PVGIS: ~1,050
Ignore degradation Assume 100% output forever Apply 0.5%/year
Ignore inverter No replacement cost Include inverter replacement at year 12
Blended payback Solar+battery together Separate calculation
Price growth Assume 5–10%/year Show flat AND growth scenarios
Maintenance Not mentioned €100–200/year
Self-consumption Assume 70–80% Model hourly, profile-specific 20–70%
Heat pumps Ignored or "add 2,000 kWh" Full hourly heating demand simulation

How to Check an Installer's Quote

  1. Ask for their solar yield assumption → Check against PVGIS
  2. Ask if inverter replacement is included → Should be
  3. Ask if battery payback is separate → Should be
  4. Ask what electricity growth rate they use → Should show sensitivity
  5. Ask for reference customers → Call them

Known Limitations

No model is perfect. Here are the limitations we know about:

  1. Shading: We assume zero shading. Real roofs have chimneys, trees, and neighboring buildings.
  2. DC:AC ratio / inverter clipping: We assume no inverter clipping. Oversized arrays (common practice) may clip peak output.
  3. Inter-annual weather variability: PVGIS yields vary ±5–10% year-to-year. We present a single deterministic number.
  4. Temperature-dependent SCOP: We use a constant 4.6. Real heat pumps perform worse in cold weather (SCOP may drop to 2.5–3.5 at -10°C).
  5. Soiling: We assume clean panels. Dust, pollen, and bird droppings can reduce output 2–8%.
  6. Net metering rules: Country-specific rules (annual netting, per-phase balancing) are documented but not simulated.
  7. H-tarifa penalty (Hungary): Installing solar cancels the discounted heat-pump tariff. The engine models this as a one-time annual loss, which is a simplification.
  8. Gas boiler comparison: We use 0.8 efficiency (old non-condensing fleet average). Modern condensing boilers are 90–95% efficient, making heat pumps look slightly better than they are.
  9. Simple payback formula: We use upfront cost ÷ first-year net benefit. This is the standard engineering definition. Some methodologies include future replacement costs, which creates a hybrid metric.
  10. NPV heating baseline: We cap heating demand in the NPV baseline at heat-pump efficiency (SCOP 4.6). This prevents resistive heating from artificially inflating solar NPV, but it also means NPV does not reward switching from gas/wood to resistive electric heating.

Updates & Corrections

Last updated: 2026-05-28 Next review: 2026-11-23

2026-05-28 — NPV baseline cap for heating

If you find an error, contact us. We correct mistakes publicly.


Sources

Data Type Primary Source Backup
Solar yield PVGIS JRC DWD (Germany), MeteoSwiss
Electricity prices Eurostat National regulators
Equipment specs Manufacturer datasheets Independent tests
Reliability data NREL, Fraunhofer PVEL, TÜV
Subsidies National agencies EU Commission
Real-world performance Academic studies Open datasets

License

All calculations, data, and methodology are published under [CC-BY-SA]. You may use them for any purpose, commercial or non-commercial, with attribution.