Solar Matching

See how solar, a battery, your heat pump, EV and time-of-use pricing reshape a year of home energy.
Show results on
Demo data · the live dataset wasn’t found, so a realistic synthetic year is in use. Drop in solarmatching_data.json to model your own.
Building your energy year…
Net annual cost · {{ activeTariff==='agile' ? 'Agile tariff' : 'Flat-rate tariff' }}
{{ money(headline.cost) }}
a net credit across the year to import power for the year · {{ headline.otherLabel }} {{ money(headline.other) }}
{{ pct(Math.abs(headline.saving),1) }} {{ headline.saving>=0 ? 'cheaper than no solar or battery' : 'more than no solar or battery' }}
Self-sufficiency
demand met on-site
Self-consumption
solar used, not exported
Where your {{ fmt0(a.demand_kwh) }} kWh of demand comes from {{ fmt0(balance.fromLocal) }} on-site · {{ fmt0(balance.imp) }} grid
Solar & batteryGrid import
Where your {{ fmt0(a.solar_kwh) }} kWh of solar goes {{ fmt0(balance.selfUsed) }} used · {{ fmt0(balance.ex) }} exported
Used at homeExported to grid
Solar generated
{{ fmt0(a.solar_kwh) }}kWh
{{ fmt2(p.solar_kWp) }} kWp array
Total demand
{{ fmt0(a.demand_kwh) }}kWh
home · heat · transport
Grid import
{{ fmt0(a.import_kwh) }}kWh
avg {{ fmt1(a.avg_agile_import_rate) }} p/kWh on Agile (inc. VAT)
Grid export
{{ fmt0(a.export_kwh) }}kWh
avg {{ fmt1(a.avg_agile_export_rate) }} p/kWh on Agile
Heat pump electricity
{{ fmt0(a.heatpump_elec_kwh) }}kWh
at SCOP {{ fmt1(p.heatpump_scop) }}
EV electricity
{{ fmt0(a.ev_elec_kwh) }}kWh
{{ p.ev_mode==='real' ? 'measured' : fmt0(p.ev_miles)+' mi/yr' }}
Average day · half-hourly

A typical day in {{ monthName }}

Solar Demand Battery charge (to {{ fmt1(daySeries.maxSoc) }} kWh)
Month by month

{{ monthlyMetric==='cost' ? 'Cost across the year' : 'Energy flows across the year' }}

Flat rate Agile
Import Export Solar
The numbers

Monthly breakdown

MonthSolarDemandImportExportAgile £Flat £Batt SOC
{{ row.month }}{{ fmt0(row.solar_kwh) }}{{ fmt0(row.demand_kwh) }} {{ fmt0(row.import_kwh) }}{{ fmt0(row.export_kwh) }} {{ money(row.agile_cost) }}{{ money(row.flat_cost) }}{{ fmt1(row.soc) }}
Total{{ fmt0(totals.solar_kwh) }}{{ fmt0(totals.demand_kwh) }} {{ fmt0(totals.import_kwh) }}{{ fmt0(totals.export_kwh) }} {{ money(totals.agile_cost) }}{{ money(totals.flat_cost) }}