Octopus only publishes Agile prices about a day ahead. Beyond that, my charge planner runs on guesses — forecasts from agile_predict, fboundy's open-source model of future Agile prices — and it books real charging against them. So: do they deserve that trust? I checked 26,552 of them against the rates Octopus later published — counting only guesses made 31+ hours ahead, beyond anything Octopus had published at the time, so the forecast can't be marked against its own answer sheet. It turns out "can I trust it" is two different questions, with two very different answers.
Question one: will the price be what it said? Honestly — not reliably. Only 24% of predictions landed within 1p of the published rate, 41% within 2p, 73% within 5p. One in 4 missed by more than 5p. As a price oracle it's about 41% trustworthy: if it quoted you tomorrow's 2pm rate, you'd want a margin.
Question two: if I pick my charging slots with it, do I pick right? This is the only question the planner actually asks — and here the forecast is superb. For each of 366 forecast-days I took its 6 predicted-cheapest half-hours and scored that pick against perfect hindsight. 54% of the picks were genuinely among the day's cheapest 6. On 16% of days the pick was flawless. And the median cost of trusting it over knowing the future was 2.6% — it captures 97.4% of the value a crystal ball would deliver.
The gap between those two answers — 41% and 97% — is the whole insight. The forecast's errors are mostly whole-day shifts: it calls Tuesday 3p too dear or too cheap across the board, but draws the day's shape — the overnight trough, the evening peak, the afternoon dip — almost exactly right. Slot-picking doesn't care about the level; it cares about the ranking, and rankings survive level errors. The forecast is a bad oracle and an excellent map.
The missing 2.6% is almost all surprise plunges: a wind front over-delivers, and a day the forecast drew as flat cracks open into a cheap trough, sometimes below zero. I never miss the plunge itself — a published negative price is an unconditional GO, whatever the plan said. What it costs me is headroom: the flat forecast had the planner pre-buy at 18p, so the −3p trough arrives to a half-full battery. Paid less to soak up less — and the plan self-corrects at the next 16:00 publish.
So the operating rule the planner embodies, now with receipts: never believe the forecast's prices, always believe its shape. Trust as an oracle: ~41%. Trust as a map: 97%. It only ever gets used as the map — which is a large part of why the capture number looks the way it does.
And as of today, the measurement feeds back. The planner demands a bigger saving before acting on a forecast price than on a published one — a caution margin I once hand-tuned to 5p. That margin is now computed daily from the forecast's own measured errors (currently it comes out at 5–6p, so the hand-tune was nearly right). If the forecast sharpens, the planner relaxes; if it degrades, the planner gets suspicious on its own. The trust score isn't a blog post any more — it's a feedback loop with a blog post attached.
I'm hoping for rain
Everyone else in Britain checks the forecast hoping for barbecue weather. I check mine and do a quiet rain dance in the kitchen. Different forecast, mind — in this house's economy, rain is money. Rain is my word for the hours when Britain has more wind and sunshine than it can drink and Agile prices dive below zero — when the grid, slightly embarrassed, pays me to please take some electricity away.
And oh, it has rained. 417 paid half-hours in the last twelve months. 256 kWh guzzled straight from the downpours, £8.76 in tips from the National Grid for my trouble. April was a proper monsoon — the battery gorged, the fridge ran on money, and the month's entire electricity bill landed at £8.73. When it rains here, the bill runs backwards and I stand in the garden grinning at the meter.
Which brings me to the week ahead, and the reason for the rain dance: the map currently shows a drought. Seven flat days — averages around 26p, daily floors never dipping under 13p, not one half-hour below 10p anywhere. For a planner whose favourite sport is diving into dips, that's a week at a swimming pool with no water in it.
But this is where the measurement above pays for itself — and it's a compliment to the forecast, not a complaint. All those checked predictions revealed one adorable personality trait: it's a pessimist about rain. It almost never promises cheap hours that fail to arrive, but it regularly draws a flat, sensible plateau over a day that later cracks wide open when a wind front lands early. That's the best possible direction for a forecaster to be wrong: it under-promises, and the sky over-delivers. So when this forecaster calls a drought, I nod respectfully, plan for the drought — and leave the water butt out anyway.
Because that's what this kit is: a 6.7 kWh water butt with opinions. The moment a published price goes negative it's an unconditional GO — battery gorging, e-bike drinking, the fridge chilling milk on electricity I'm paid to accept. Most people shelter from weather. I harvest it. If the drought breaks the way this forecaster's droughts have broken before, I'll know without opening a single app — the bill will simply run backwards.
A closing word for the tools themselves, because this post might otherwise read like a prosecution. I love agile_predict. It's fboundy's open-source forecasting model — an ensemble of three machine-learning models retrained on a rolling window of weather and demand data — written, shared, and kept running at agilepredict.com so that setups like mine can lean on it for every decision beyond the published rates. As measured above, it hands over 98% of the value of a crystal ball while asking nothing in return. "Bad oracle, excellent map" is high praise for one person's project guessing tomorrow's electricity market for everyone. In the same week I write this, I'm also genuinely gutted to have retired my other forecasting companion: Octopus switched off Greener Nights on 31 July, which quietly ends my little greenness-forecast dashboard card and the planner's habit of saving room for the greenest overnight windows. It was never worth much money — it was worth something better, a reason beyond pence to charge at one hour instead of another. The forecasts we get to keep deserve measuring precisely because the good ones don't last forever.
Computed from 26,552 prediction/actual pairs across 366 forecast-days since 2026-06-01. The raw material exists because the planner has been quietly archiving agile_predict's forecasts with every half-hourly decision since the spring — each snapshot frozen at the moment it was believed, then joined against the rates Octopus later published. You can't measure trust retrospectively unless you kept the receipts. These numbers are a snapshot, taken 1 August 2026 — a measurement of the forecast as it was, kept as it was.