A solar dashboard should answer two different questions: how much the installation generated, and how that energy moved through the site. A generation total cannot tell you the second. Start by marking the measurement points on the site's single-line diagram, then name each series after the flow it measures.
Measure the right boundaries
| Measurement | Where it belongs | What it tells you |
|---|---|---|
| PV generation | AC output of the solar inverter, or a dedicated generation meter | Energy delivered by PV to the site's AC system |
| Grid import | Site connection point, import direction | Energy bought from the grid |
| Grid export | The same connection point, export direction | Energy sent to the grid |
| Battery charge and discharge | Battery inverter AC connection, as separate directional totals | Energy absorbed from and delivered to the AC system |
| Site demand | Load feeders, or a reconciled balance | Energy used by the site's loads |
Document whether each value is measured or calculated. A hybrid inverter may combine PV and battery output at one AC terminal. That total is not a separate PV generation measurement. Use its documented internal channels if you need the split, and record whether those channels are DC or AC.
Calculate the balance without a battery
For a site with PV, grid connection and loads only, use energy totals over exactly the same period:
Site demand = PV generation + grid import − grid export
Solar used on site = PV generation − grid export
These equations assume a common AC boundary, no other generator and no storage. Distribution losses inside that boundary become part of the inferred site demand. Meter tolerances and clock differences can leave a small residual when you compare this balance with separately measured loads.
Worked example
During one hour, the solar system produces 4 kWh. The site imports 1 kWh and exports 2 kWh. Its demand is 4 + 1 − 2 = 3 kWh, of which 2 kWh came directly from solar. Import and export can both occur during the hour as clouds and loads change.
| Metric | Calculation | Result |
|---|---|---|
| Solar self-consumption | 2 kWh used on site ÷ 4 kWh generated | 50% |
| Solar self-sufficiency | 2 kWh used on site ÷ 3 kWh demand | 66.7% |
If generation is zero, self-consumption is undefined for that period. If demand is zero, self-sufficiency is undefined. Display an explanation rather than dividing by zero or reporting an invented percentage.
Preserve import and export separately
A signed net-energy total discards useful information. Importing 2 kWh and exporting 2 kWh produces a net of zero, but both flows still matter for billing and solar use.
Prefer the meter's separate cumulative import and export registers. Calculate interval energy from counter differences, handling resets and rollovers explicitly. If you integrate power instead, establish its sign convention, sampling interval and treatment of gaps. Short periods of export between samples can otherwise disappear.
Keep timestamps in one time base, retain the local billing time zone and check daylight-saving transitions. Do not subtract a daily inverter counter that resets at midnight from a lifetime meter counter. Commission the signs with a known importing load and, when conditions permit, a known exporting state.
Add battery flows explicitly
With a separately metered AC-coupled battery, the corresponding balance is:
Site demand = PV generation + grid import + battery discharge − grid export − battery charge
All five terms must refer to the same interval and AC boundary. Do not mix battery DC charge energy with inverter AC discharge energy in that equation.
Solar sent into a battery can later serve loads, be exported, or be lost during storage and conversion. If the battery can charge from the grid, discharge alone cannot identify the original source. State the attribution method before publishing a solar self-consumption percentage. Comparing stored energy at the beginning and end also matters when assessing a short reporting period.
For control and commissioning, read the roles of BMS, EMS and PCS and BESS command verification. A successful command response does not prove the requested power was delivered.
Keep energy estimates separate from measured performance
A PV model such as PVGIS estimates generation using location and system assumptions. Keep the model version, weather dataset, array capacity, orientation and loss assumptions with the result. Compare like periods and boundaries when checking the installation against that estimate.
Annual modelled generation does not establish self-consumption or battery size. Those depend on when generation and demand coincide. Use aligned interval data for that comparison. Export limits and curtailment also mean the energy actually generated can differ from the available solar resource.
Value imported and exported energy separately
For a simple flat-rate estimate without storage, value solar used directly on site at the avoided import unit price. Value exported energy at the export unit price. Keep both prices editable.
For example, 2 kWh used directly at an illustrative €0.30/kWh avoids €0.60 of energy charges. Exporting another 2 kWh at an illustrative €0.10/kWh earns €0.20. The combined value is €0.80, not 4 × €0.30. These are arithmetic examples, not offered tariffs.
Time-of-use prices require matching each flow to its price period. Standing charges, demand charges and battery costs need their own treatment. Start with measured energy and the actual tariff rather than promising savings from the array's nameplate power.
Common questions
Can I calculate solar self-consumption from annual generation and annual demand?
Not from those two totals alone. You also need export measured over the same period, or time-aligned generation and demand data. A site can generate as much as it uses over a year and still import at night and export during the day.
Is a battery's discharge all solar energy?
No. A battery may also charge from the grid. Attribute stored energy using charge-source data and a stated accounting method; do not label all discharge as solar.
Why does my inverter total differ from my electricity bill?
The inverter reports generation, while the bill normally records grid import and export. Solar used directly on site does not pass through the grid connection meter as imported energy.