See what your battery could have saved. Without touching it.

It plans around tomorrow's prices and sunshine, and shows what you would have saved. £334 to £427 a year in our backtest. Free, read-only, nothing to install.

Join the free beta
A house with a solar roof. Its panels, battery, car charger, household load and the grid all connect through one inverter in the open garage.
Solar
Inverter
Battery
Car charger
Home
Grid
%
CHARGE
Pre-charge Solar Peak Night
SMART DISPATCH
Monitoring system
Replaying half-hour slots against forecast
Demonstration data on simulated hardware

Works with the battery and tariff you already have

SIGENERGY
solaredge
TESLA
FOX ESS
SUNSYNK
SOLAX POWER
eye
Alpha ESS
octopusenergy
British Gas
ENERGY
e.on next
EDF ENERGY
SCOTTISHPOWER
Why a timer is not enough

Your battery is only as smart as yesterday’s schedule.

On a dynamic tariff the price changes every half hour: often above 30p at the evening peak, sometimes below zero on a windy afternoon. A typical battery still runs a fixed timer: charge overnight, discharge in the evening, whatever tomorrow's weather. On a sunny day, that means paying to fill a battery the roof would have filled for free.

£334 to £427/yr Backtested

What a plan would have saved over a fixed overnight charge, for one house: 359 days of its real metered use on Octopus Agile's actual prices, with the solar modelled. £334 if export pays 15p, £427 if it pays nothing, because export income narrows the gap.

£57 to £64 best month Backtested

The gap is widest in spring and summer, when a timer buys grid power for a battery the sun was about to fill. The quietest months, October and February, came to £8 to £13.

Nothing to install Cloud only

You connect the manufacturer account you already have. No box, no hub, and nothing on your home network.


A saving you can argue with.

Anyone can quote a number after the fact, once they know how the day turned out. That is not evidence, it is hindsight. Here is what we do instead, and every figure carries where it came from.

1

Read the system

Every five minutes, through your manufacturer's own cloud. Power, charge, import, export. If a channel cannot be read, it is reported missing, never filled in with a plausible zero.

Measured
2

Keep the forecast

The solar forecast and tariff prices are stored as they stood at the moment the decision was made, then frozen. That snapshot is what the plan is judged against.

Modelled, and labelled
3

Replay the slot

Each half hour is costed twice through one shared engine: what your system did, and what the plan would have done knowing only what was knowable then.

Modelled, from measured readings
4

Show the gaps

Hours where the system was unreachable stay visibly empty. A day with holes in it is reported as a day with holes in it.

Missing stays missing
SLOT 33 · 16:30 to 17:00 Step 1: Read the system
● MEASURED Your manufacturer's cloud · every 5 minutes

Every five minutes, Orza asks your manufacturer's cloud what your system is doing.

Each reading is timestamped on the system's own clock and stored with the name of the field it came from, so any figure can be traced back to what the manufacturer actually reported.

Solar Array (PV)
0.38kW
pvPower
Household Load
2.22kW
loadPower
Battery Storage
0.00kW
batteryPower · batterySoc 10%, empty
Grid Import
1.84kW
gridPower −1.84 · negative means buying
What we cannot see, we say. Where a manufacturer's cloud does not report something, such as battery temperature or health, Orza shows it as unavailable rather than inventing a number.

The solar forecast and tariff schedule are frozen at the decision boundary.

A plan can only be judged fairly against what was knowable when it was made. This is the forecast and price the 16:00 plan was built on, kept exactly as it stood.

Tariff rate
33.8p/kWh
Peak slot 16:30 to 17:00, locked
Solar Expectation
0.40kW
Solar forecast snapshot at 16:00
Snapshot taken
16:00
Stored before the slot began · never rewritten
No hindsight. If cloud rolls in at 16:45, the plan is still judged against the 16:00 forecast it was made with, and never rescored with what happened later.

Each half hour is costed twice, by the same engine.

Once for what your system actually did, once for what the plan would have done. Both sides go through identical arithmetic, so the difference is the plan and nothing else.

What your system did Measured

The battery ran empty by mid-afternoon, so at the 16:30 peak the house bought everything from the grid.

Grid Import0.92 kWh
Slot Tariff33.8p/kWh
Pre-charge Cost£0.00
Slot Cost: 31.1p
What the plan would have done Modelled

Held charge back for the 16:00 to 19:00 peak and covered the house from the battery.

Grid Import0.00 kWh
Battery Discharge0.92 kWh
Charged overnight at8.4p/kWh
Slot Cost: 7.7p
Net Slot Saving: 23p saved this half hour
31.1p (actual) − 7.7p (Orza) = 23.4p

When a system cannot be reached, that half hour stays empty.

Broadband drops and manufacturer clouds have outages. Filling the gap with a guess would make the savings figure look complete, and make it wrong.

02:30 to 03:00 (Slot #06) MISSING · UNREACHABLE
Manufacturer cloud No reply No reading returned
Reading stored None Nothing filled in
Savings figure Left out Not counted either way
Why. A plausible zero is worse than an outage. A day with holes in it is reported as a day with holes in it.

Product preview

The plan, and what it would have saved, where you can check it.

See what your battery is doing, the plan it could follow, and what that plan would have saved you, half-hour by half-hour.

The web app, shown with example values.

Plans two days ahead

Tomorrow's prices and solar forecast are planned together, so tonight's charge already knows whether tomorrow will be sunny.

Weighs battery wear

It will not cycle your battery for a gain smaller than the wear, and it keeps the reserve you set.

Shows its working

For every half hour: what happened, what the plan would have done, and the difference in pence.

Read-only to start

The beta never sends your battery an instruction. It watches, plans, and tells you what the plan was worth.

Join the free beta


Frequently Asked Questions

Everything you need to know before joining the beta.

Clear, direct answers about how Orza reaches your battery, handles your tariff, and stays out of the way of your system.

No. You keep your manufacturer's own app for warranty registration, firmware upgrades and safety monitoring, and you keep using it exactly as you do now. Orza sits alongside it as a scheduling layer, reading your system through the manufacturer's cloud. In Watch mode, which is what the beta offers, it writes nothing at all.

Dynamic and time of use tariffs, import and export, from the suppliers listed above. Tomorrow's prices are fetched automatically as soon as your supplier publishes them, and the plan is rebuilt around them.

Nothing. There is no hub, no Raspberry Pi, no always-on computer and no software on your network, and there never will be. Orza runs entirely in the cloud and reaches your battery through the API your manufacturer already operates, authorised by the account you already have. If a brand has no usable cloud API, we cannot reach it, and we will tell you that rather than sell you a box.

During the beta Orza never touches your battery, so it cannot wear it. The plan it shows you already allows for wear: it carries a cost for every kWh moved through the pack, so it will not cycle the battery for a gain smaller than that, and you can change that cost. It also respects the charge and discharge power limits and the reserve floor you set. Where a manufacturer's cloud does not report pack temperature, we do not claim to act on it.

Your battery carries on exactly as it would without us. It is your inverter, running your manufacturer's own logic. Orza is not in the power path and cannot halt it. What we lose is sight of it: if your broadband or the manufacturer's cloud is unreachable, the readings for those half hours are missing, and they are shown as missing. A day with holes in it is reported as a day with holes in it, and it is left out of your savings figure rather than quietly filled in.

In Watch mode there is nothing to pause: no instruction is ever sent, so your battery is already doing whatever your manufacturer's app tells it to. When opt-in control does arrive, pausing will stop the next instruction and hand the system straight back to its own schedule, and you will always keep full control at the inverter and in the manufacturer's app.

Technical FAQ

Want the detail?

How the cloud connection works and what it cannot see, how the plan is built, and exactly how the saving is scored.

Read the technical FAQ

Free beta

Independent scheduling for the battery you already own.

Orza is free during the beta. Connect your battery in read-only Watch mode and see, on your own house, what a better plan would have saved.

Open beta · free
Join the beta
Free

Tell us which battery you have and we will email you to get it connected.

Join the free beta

Read-only. Nothing to install. Nothing to pay.