Self-Sufficiency

How the engine calculates self-sufficiency and self-consumption ratios, and how batteries and load profiles influence the results.


Definitions

The engine reports two complementary ratios. They measure different things:

MetricFormulaMeaning
Self-sufficiencyself_consumed_solar / total_consumption% of your demand covered by your own solar
Self-consumptionself_consumed_solar / total_production% of your solar production used on-site

A system can have high self-consumption but low self-sufficiency (small system, almost nothing exported, but still buys most energy from the grid), or vice versa.


Hourly simulation

Both metrics rely on the 8,760-hour simulation that the engine runs for each year. For every hour h:

production[h]  = solar output based on irradiance, panel specs, orientation
consumption[h] = load profile value for that hour
surplus[h]     = max(0, production[h] - consumption[h])
deficit[h]     = max(0, consumption[h] - production[h])

Without a battery, all surplus is exported and all deficit is imported from the grid. Self-consumed solar equals production[h] - surplus[h] summed over the year.

The accuracy of consumption[h] is critical — see Accuracy for how different input methods affect the load profile.


Battery impact

Adding an electricBattery to the scan significantly increases self-sufficiency by shifting surplus solar to evening/night hours:

ConfigurationTypical self-sufficiencyTypical self-consumption
4.4 kWp PV, no battery30–35%30–40%
4.4 kWp PV + 5 kWh battery50–55%55–65%
4.4 kWp PV + 10 kWh battery55–65%65–80%

The battery is simulated hour by hour: surplus charges the battery (up to its power and capacity limits), and deficit discharges it. The engine respects maxChargeRateKw, maxDischargeRateKw, and round-trip efficiency (~90%).


Load profile accuracy

The quality of the load profile directly impacts the reliability of self-sufficiency predictions:

Input methodProfile sourceSelf-sufficiency accuracy
"studio"Real 15-min / hourly measurements★★★★★ — actual consumption shape
"known"Synthetic profile scaled to yearlyKwh★★★★ — good annual total, generic shape
"estimate"Synthetic profile scaled to estimated kWh from householdSize★★★ — approximate

With "studio" profiles, the engine uses the exact hourly pattern of the household, capturing evening peaks, weekend patterns, and seasonal variation. Synthetic profiles use a standardized Dutch residential load curve.


Interaction with goal

The goal parameter changes how the engine sizes the system, which in turn affects self-sufficiency:

"cost-savings" (default)

The optimizer finds the system size that maximizes financial return. This typically results in a system sized to match daytime consumption, yielding moderate self-sufficiency (30–50% without battery).

"self-sufficiency"

The optimizer maximizes on-site energy coverage. It will install the maximum allowed PV and battery capacity, often reaching 60–80% self-sufficiency. The trade-off is a longer payback period.

Was this page helpful?