GridPassport case study: observed-home PV forecasting

Daily PV energy error hides the gap a HEMS has to close.

Public DayAhead looked acceptable by daily energy in the strict window: 17.2% error. But automation does not act once per day. In 15-minute operating slots, the public forecast had a typical miss of 1.57 kW. GridPassport nowcast cut that to 0.44 kW and nearly removed the energy bias.

1.57 kW typical public DayAhead miss in an operating slot
0.44 kW typical GridPassport nowcast miss in the same slot comparison
34.8% -> 22.3% interval weighted error, public DayAhead to GridPassport nowcast
-0.17% nowcast energy bias, versus -13.83% for public day-ahead in the strict window
What the data says: public PV forecasts are useful, but a daily kWh score can make them look more automation-ready than they are. The broad public DayAhead baseline sits around 21.9-22.1% daily PV energy error. In the strict common window, public DayAhead still had a 1.57 kW typical operating-slot miss and -13.83% energy bias. GridPassport nowcast brought those down to 0.44 kW and -0.17%.

Why a HEMS needs more than a public solar curve

A public solar forecast usually starts with weather. It estimates irradiance, cloud cover, temperature and sometimes wind, then applies a simplified PV model. That gives a homeowner a useful first read: tomorrow looks sunny, cloudy or mixed. It gives a dashboard a reasonable expected-production curve.

A home energy management system has to go further. It is not just describing tomorrow. It is deciding when to charge a battery, when to protect backup reserve, when an EV charger can use surplus solar, when a heat pump or air conditioner can shift load, and when export or import timing is worth acting on. Those calls are not made in daily totals. They happen in operating intervals.

The question changes from "what will the sky do?" to "what will this home do?" Two houses under the same weather can behave differently because of roof angle, orientation, inverter limits, shading, dirt, snow, temperature, cable losses or simply the way the plant has behaved in the last few hours.

The comparison window

The analysis covers one GridPassport V1 home in Central Poland, with telemetry from January 1 through May 30, 2026. The broad public DayAhead baseline starts on January 16 and runs through May 30, 2026. In that 124-day public-only window, daily PV energy error is 21.92% for the known-geometry public model and 22.10% for the default-geometry public model.

The strict nowcast comparison uses May 15 through May 30, 2026, because that is where the public day-ahead forecast, GridPassport same-day forecast and GridPassport nowcast can be compared on the same active PV slots. In that narrower window, the public layer measures 17.2%, GridPassport same-day measures 12.8% and GridPassport nowcast measures 5.6%.

That daily energy score is useful, but it is not the whole HEMS problem. An active slot is a time interval where there is meaningful PV production to compare. This avoids letting night-time zeros make the forecast look better than it is, and it exposes timing and shape errors that matter for battery, EV and flexible-load decisions.

Operating-slot result

Public DayAhead looked usable by daily energy. It was not close enough for control.

In the strict common window, the public forecast missed the typical operating slot by 1.57 kW. GridPassport nowcast cut the typical slot miss to 0.44 kW, reduced interval weighted error from 34.8% to 22.33% and nearly removed systematic underprediction.

Forecast Typical slot miss Interval weighted error Large slot misses Energy bias
Public DayAhead 1.57 kW 34.80% 42.4% -13.83%
GridPassport same-day 1.20 kW 36.73% 37.6% -4.21%
GridPassport nowcast 0.44 kW 22.33% 19.5% -0.17%

Typical slot miss is the median absolute miss in active 15-minute PV operating slots. Large slot misses are misses above 2 kW; this is a secondary operational threshold, not the headline score.

Daily energy context

The public baseline is about 22%. The strict daily ladder is 17.2% to 5.6%.

Daily energy error is still useful as a sanity check. It shows whether the forecast gets total daily energy broadly right, but it does not show whether the forecast is timed well enough for a HEMS.

Jan 16-May 30, 2026

21.92%

Public DayAhead, known geometry

Comparable days
124
Energy bias
-10.20%

Jan 16-May 30, 2026

22.10%

Public DayAhead, default geometry

Comparable days
124
Energy bias
-9.56%
Forecast Daily absolute miss Daily energy error Reduction vs public
Public day-ahead 152.1 kWh 17.2% baseline
GridPassport same-day 113.5 kWh 12.8% 25.4% lower
GridPassport nowcast 49.6 kWh 5.6% 67.4% lower

Daily absolute miss means the sum of day-level forecast misses across the comparison window. Lower is better, but this is a daily energy sanity check. It does not prove the forecast is timed well enough for control.

Public DayAhead

17.2%

Weather plus PV assumptions.

Window
May 15-May 30, strict common window
Energy bias
-13.83%

GridPassport same-day

12.8%

Forecast corrected by learned home response.

Window
May 15-May 30, strict common window
Energy bias
-4.21%

GridPassport nowcast

5.6%

Short-horizon forecast corrected with live inverter feedback.

Window
May 15-May 30, strict common window
Energy bias
-0.17%
Forecast Actual energy Predicted energy Weighted error Bias Total miss
Public day-ahead 883.784 kWh 761.548 kWh 34.80% -13.83% -122.236 kWh
GridPassport same-day 883.784 kWh 846.534 kWh 36.73% -4.21% -37.250 kWh
GridPassport nowcast 883.784 kWh 882.280 kWh 22.33% -0.17% -1.504 kWh

Weighted error is our plain-language label for WAPE: the sum of interval-level forecast misses divided by actual PV energy. Bias can be positive or negative; near zero means the forecast was not systematically over or under real energy.

What that means without the acronym

The median slot miss is easier to read than a statistical acronym. Half the active slots were better than this number and half were worse. Here the typical public day-ahead miss was 1.57 kW. GridPassport nowcast brought the typical miss down to 0.44 kW, a 72% reduction.

The fixed thresholds below are secondary checks, not the main score. They show the same pattern in plainer terms: the nowcast was within 1 kW almost two thirds of the time, compared with a little over one third for the public day-ahead forecast.

Day examples

Daily errors make the improvement visible.

These days are here for shape, not drama. Together they show three ways a public forecast can miss the actual home: cloudy correction, under-forecasting and a possible roof-shape mismatch.

2026-05-17

Lower-production, cloudy day where in-home correction mattered.

Actual PV: 33.716 kWh

Public 17.737 kWh / 52.61%
Same-day 0.803 kWh / 2.38%
Nowcast 0.796 kWh / 2.36%

Nowcast reduced daily absolute error by 95.51% versus public day-ahead.

2026-05-18

Large public under-forecast corrected by GridPassport.

Actual PV: 41.899 kWh

Public 18.289 kWh / 43.65%
Same-day 1.388 kWh / 3.31%
Nowcast 1.199 kWh / 2.86%

Nowcast reduced daily absolute error by 93.44% versus public day-ahead.

2026-05-28

Candidate site-specific afternoon mismatch.

Actual PV: 46.088 kWh

Public 14.847 kWh / 32.21%
Same-day 11.073 kWh / 24.03%
Nowcast 0.167 kWh / 0.36%

Nowcast reduced daily absolute error by 98.88% versus public day-ahead.

Example day

May 28 shows why the roof matters.

The public forecast had the broad idea right: it was a solar day. The shape was still wrong enough to matter for automation. The pattern is consistent with a site-specific effect such as roof geometry mismatch, clipping, local shading or weather-model bias. We would still confirm the cause with site inspection or independent irradiance data.

Hourly PV on 2026-05-28. Actual production versus public day-ahead and GridPassport nowcast.
05:00 13:00 21:00 15 5
Actual PV Public day-ahead GridPassport nowcast

The forecast error had a time-of-day shape

Over the same comparison window, the public forecast tended to underpredict morning and midday energy, then overpredict later in the day. That kind of shape error can confuse battery and export timing even when the forecast looks reasonable at a daily level.

GridPassport nowcast still had misses, especially around fast-changing solar conditions. The difference was that the error shape was flatter and the total energy bias was almost neutral.

Hourly aggregate forecast error. Negative means underprediction. Positive means overprediction.
03:00 12:00 21:00 +25 -25
Public day-ahead GridPassport nowcast

PV is half the signal. Load is the other half.

A solar forecast tells the home how much energy may arrive from the roof. An energy manager still has to ask what the home is likely to consume. The operating signal is:

expected surplus = forecast PV - forecast home load

That surplus signal answers the questions that actually move devices. When will solar first cover the home load? When will it stop? Should the battery accept solar now, hold reserve, discharge, or wait? Should an EV charger pause, continue or slow down? Should the home import before a cloudy window?

In the full January 1 through May 30 telemetry period, the actual home had a PV-greater-than-load window on 127 days. The average window was 6.58 hours. In the strict May 15 through May 30 window, every comparable day had such a window, averaging 8.19 hours.

EMS caution

Good PV accuracy does not settle the battery decision.

GridPassport nowcast was the best PV forecast in the common-window PV-only metrics. The surplus signal also depends on load prediction and threshold timing. A real HEMS has to solve both.

Signal Samples Surplus direction accuracy False surplus slots Missed surplus slots Net signal error
Public PV + GP day-ahead load 569 89.63% 35 24 45.66%
GP same-day PV + load 569 93.50% 31 6 48.85%
GP nowcast PV + load 569 84.53% 57 31 54.58%

False surplus means the system expected spare PV after load, but the home did not have it. Missed surplus means the home had spare PV that the signal did not predict. Both matter for automation.

The missing loop

Most public PV tools are built to be helpful before they know the home. They ask for location, PV system size, orientation and sometimes tilt or losses. Good first pass. A modern home with solar, battery, EV charging and climate loads needs a second step: correction from the real installation.

The loop is straightforward. The system compares expected production with actual inverter telemetry, learns recent plant response and adjusts short-horizon decisions. A model that sees only weather can be directionally right and still make the wrong battery decision. A model that sees the home can learn when the actual roof behaves differently from the assumed roof.

Where GridPassport fits

The goal is not another solar screen. The public Solar Forecast tool turns location, PV setup and weather into a roof signal. A connected GridPassport goes further: it can learn from the inverter, forecast load, coordinate the battery and turn the signal into Home Power Automation.

Public PV forecasts predict the sky and a simplified solar system. A connected GridPassport works from the actual home. For an EMS, that distinction matters because battery and load decisions depend on timing, not only daily kWh.

Where the claim stops

The numbers come from one V1 home, one location and one telemetry period. They are strong evidence for the mechanism, not a blanket accuracy promise. A different roof, inverter, weather pattern, data quality level or load profile can produce a different result.

That boundary is not fine print. GridPassport should win trust by showing the data, naming the limits and improving the operating loop home by home.

FAQ

Likely reader questions.

What is PV forecast accuracy?

PV forecast accuracy measures how closely predicted solar production matched what the panels actually delivered. For home automation, daily energy is only part of the story. Batteries, EV chargers, heating and export decisions all depend on timing.

What does nowcast mean here?

Nowcast means a short-horizon forecast corrected with live home data. In this case, GridPassport used recent inverter and production feedback to adjust the PV forecast after the public day-ahead forecast was already known.

What is daily energy error?

Daily energy error adds the absolute PV miss for each comparable day and divides that by actual PV energy. It is useful because over-forecasts and under-forecasts cannot cancel each other out.

What does WAPE mean in plain English?

WAPE stands for weighted absolute percentage error. You do not need the acronym to read the result: it adds up the forecast misses and compares them with real solar energy. A midday miss carries more weight than a tiny dawn or dusk miss.

What does P90 error mean?

P90 error means the error level that nine out of ten comparable time slots stayed below. In the article, we call it the "nine-out-of-ten error" because that is easier to read than the statistical label.

Does this prove GridPassport will always beat a public PV forecast?

No. The dataset is one connected V1 home over specific telemetry windows. The useful lesson is the mechanism: once the system sees the home, it can correct short-horizon bias that a public forecast cannot see.

Why does a HEMS need a load forecast too?

Because batteries and flexible loads care about spare energy, not roof energy alone. The practical control signal is surplus: forecast PV minus forecast home load.

Is GridPassport only a solar forecasting product?

No. Solar forecasting is one signal. GridPassport is being built as Home Power Automation for the heavy side of smart home: solar, batteries, EV charging, heating, cooling, tariffs, reserve and comfort.

Sources

Forecasting references and public context.

The case-study figures are based on GridPassport V1 home telemetry and forecast comparison data for January 1-May 30, 2026, with strict nowcast comparison on May 15-May 30, 2026.

Home Power Automation

Your home already has the pieces. It needs a shared power plan.

GridPassport is being built for homes where solar, batteries, EV charging, heating, cooling and tariffs need to act as one system.