Table of Contents
To compare a solar generation forecast with actual output, first align the period, measurement boundary and installed equipment. Check data completeness, account for the reporting period's weather and verified outages or curtailment, then examine the remaining difference. Producing less than the original estimate does not, on its own, identify why.
A useful business report answers three questions: how much energy was delivered, how much of the difference can be reasonably explained, and what needs investigating next. This guide provides a reconciliation process and a hypothetical example for an operating commercial plant. It does not size the plant or calculate its payback.
Identify the forecast you are testing
A long-term weather estimate, a simulation using a typical meteorological year and a forecast for tomorrow serve different purposes. The first group supports longer-term planning; an operational forecast uses expected weather for a specific period. Assess each against its intended purpose.
Find the original calculation, including its model version, preparation date and assumptions: module capacity, inverters, orientation, tilt, shading, losses and weather dataset. For monthly reporting, use that month's estimate. Dividing an annual total by twelve ignores seasonal distribution.
Keep the original plan separate from later revisions. If the installed configuration changes, issue a revised model with a reason. During solar plant design, agree the monthly forecast format and evidence needed for subsequent checks. This gives the owner, designer and maintenance team a common basis for discussion.
Match the energy boundary and period
Establish whether predicted energy is defined at the modules, inverter outputs or another point in the electrical arrangement. The measured figure must cover the same boundary. Solar generation, export to the public grid and reduced electricity purchases are different quantities, not interchangeable versions of “actual output”.
Record the period's start and end, time zone and recording interval. Check clock changes, partial commissioning days and equipment additions. If part of the plant started later, explain how this affects comparison with a full-month forecast for the complete installation.
Specific yield divides energy by the installed peak module capacity, giving kWh/kWp. It can help compare differently sized plants, but does not remove differences in weather, orientation or shading. A neighbouring plant's figure can prompt an investigation; it is not a universal benchmark for your roof.
Separate weather from equipment performance
Solar radiation varies between months and years, while module performance also depends on temperature. A deviation from a long-term average is therefore not automatically a fault loss. For a closer comparison, model the same configuration using weather data for the actual reporting period.
Identify the weather source: on-site sensors, satellite estimates or another dataset. Check its time resolution, period, missing records and relevance to the location. Horizontal irradiation cannot automatically substitute for irradiation in the tilted module plane; suitable conversion or measurement is needed.
Do not adjust monthly generation solely by counting sunny days in a weather forecast. This misses radiation intensity within each day, temperature and equipment behaviour. Without reliable weather inputs, leave that component unconfirmed rather than assigning an arbitrary percentage.
For on-site sensors, check condition, orientation, cleaning and maintenance history. A dirty or poorly positioned sensor can produce a misleading explanation. For external data, record spatial resolution or distance and how the site is represented. Matching trends in several readings do not prove that all are correct.
Check the measured data first
Count the expected intervals, identify missing periods and look for duplicate timestamps. Inspect unusually persistent values, jumps in cumulative readings and changes after meter replacement. Scaling errors or duplicated records can alter the monthly total without changing actual plant performance.
Do not treat an absent reading as zero generation. If a period is excluded because its data is unreliable, exclude the corresponding model intervals when comparing the valid sample. Report incomplete monthly coverage separately, so an improved percentage cannot conceal missing evidence.
Do not average daily percentage deviations to obtain a monthly result. Low-output and high-output days have different weights. Sum comparable kWh first, then calculate the relative difference. For retrieving measurements and recognising gaps in a particular platform, see reading iSolarCloud monitoring data.
Distinguish outages from curtailment
An event log establishes the timing, cause and extent of an interruption. Losing one inverter differs from losing the entire plant. An hour on a cloudy morning also differs from an hour of strong sunshine. The percentage of time unavailable cannot simply be applied to monthly energy.
Estimate unavailable energy for the affected intervals using an agreed model of potential output. Retain supporting evidence, such as a device log, service record or curtailment instruction. The event's timing may be measured while the energy that could have been produced remains estimated.
Check whether that effect already exists in the baseline. Normal inverter power clipping, for example, may already be modelled. Subtracting it again distorts the result. When causes overlap, agree an allocation method so the same interval is not counted as a full loss under several headings.
Work through a variance example
Consider a hypothetical month with unchanged equipment and complete actual records. All energy is defined in kWh at the same AC boundary. The original plan is 10,000 kWh. Assume a separate simulation using the month's actual weather gives 9,500 kWh. These are teaching inputs, not a forecast for a particular plant size or an ONG operating case.
Four intervals contain confirmed full outages of the affected plant section. Its modelled potential output was 50, 100, 150 and 100 kWh, totalling 400. In two other intervals, additional curtailment reduced potential production by an estimated 50 kWh each. Events do not overlap, and these additional losses are not already included in the weather-adjusted simulation.
| Step | Energy, kWh | Basis |
|---|---|---|
| Original plan | 10,000 | Assumed baseline-weather forecast |
| Expected output with actual weather | 9,500 | Assumed revised simulation result |
| Additional outage loss | -400 | 50 + 100 + 150 + 100 |
| Additional curtailment | -100 | 50 + 50 |
| Expectation after operating events | 9,000 | 9,500 - 400 - 100 |
| Measured generation | 8,700 | Hypothetical complete measurement record |
| Unexplained residual | -300 | 8,700 - 9,000 |
The difference from plan is 8,700 - 10,000 = -1,300 kWh, or -13%. Its components are -500 from the weather adjustment, -400 from outages, -100 from curtailment and a -300 residual. They reconcile to the original difference. Relative to the adjusted expectation, the residual is -300 / 9,000 × 100 ≈ -3.3%.
This does not establish that a particular component caused the last 300 kWh of loss. That difference remains unexplained. Weather and event estimates carry assumptions whose accuracy must be checked. The arithmetic is reproducible, but a correct formula does not turn estimated inputs into measurements.
Interpret the remaining difference carefully
The residual can combine unmodelled shading, soiling, weather-data error, model limitations and measurement uncertainty. Start with hypotheses supported by a pattern: one inverter, a particular time of day or a change after site work. The existence of a difference is not a diagnosis.
There is no single acceptable percentage for every plant. An action criterion should reflect data quality, model uncertainty, persistence and scale. One unusual month does not establish a module degradation rate; that requires a longer record, comparable conditions and a separate method.
Investigate positive residuals too. Better conditions, a conservative model or an accounting error may explain them. Do not rewrite the original plan retrospectively just to match actual output. Preserve the preceding model, the reason for revision and its effect.
Check a revised model against a period that was not used to tune it. Otherwise, agreement with historical data may simply reflect parameter fitting. Ask what changed, why it fits the physical installation and how subsequent data will test it. Do not hide a failed check within an annual average.
Make the report repeatable
Show the original plan, actual output, adjusted expectation and residual on the first page. Add data coverage, material events and a brief conclusion. Retain measurement files, weather inputs, formulas and exclusion rules in the supporting records. Another person should be able to reproduce the result.
For each unresolved issue, name the next action, responsible person and required evidence. After sensor checks, configuration changes or maintenance, evaluate the next period on the same basis. The report should establish whether the identified cause was addressed.
Keep both the complete calendar total and the analysis of shared valid intervals when they differ, explaining why beside the figures. Do not calculate a percentage by dividing by zero for intervals with no expected production. Examine absolute energy and timestamp alignment instead.
Choose the next step from the evidence
If baseline assumptions are missing, reconstruct the model. If records are incomplete, improve collection. If a deviation persists after these checks, prepare the forecast, data export for the same period, measurement diagram and event log for solar plant maintenance. This provides a concrete basis for diagnosis and an agreed work scope.
The management decision is which investigation or action the evidence supports. Recalculating expected generation does not change delivered energy, but helps distinguish the need for better data, a revised design model or technical intervention.