Battery Revenue Platform
What does a battery earn — in any European market, on any day since 2015?
Daily revenues with the stack broken out, an explorer for your exact asset, and the only forward-looking battery revenue forecast in Europe — scored in public. The incumbents sell this behind inquiry forms; here it's free, methodology-versioned and never restated.
Annualized
—
€/MW/year
Average day
—
€/MW/day
Best day
—
€/MW/day
Worst day
—
€/MW/day — weak months shown as prominently as records
Monthly revenue · €/MW
perfect-foresight ceiling · BESS-v2Next 7 days — expected revenue forecast
BESS-F1 · scored weekly vs the frozen indexRevenue stack — last 30 days alternative uses of the same MW, not additive
Methodology — BESS-v2, in full
The index is a ceiling, and says so. For each zone-local day we build the hourly day-ahead curve (ENTSO-E preferred on collision, SMARD fallback; 15/30-minute markets averaged to hourly). A d-hour, 1-cycle battery charges the d cheapest hours and discharges the d most expensive at 90% round-trip efficiency, per MW of power. No intra-day ordering constraint — this is deliberate: the ceiling is stable, reproducible and comparable across zones and years, where an "operational realism" model would bury a dozen contestable assumptions. Real revenues are lower; the explorer's Volt foresight toggle shows how much lower with a real forecast, and the availability/degradation sliders let you haircut it your way.
Stack context, honestly framed. IDA revenue runs the same engine on the IDA1 intraday auction curve where we ingest it. FCR and aFRR figures are the day's capacity settlement prices (regelleistung.net for DE-LU, Fingrid for FI) — the alternative income for the same MW standing ready instead of arbitraging. They are shown side by side, never summed: a battery can't do full arbitrage and full FCR with the same megawatt at the same time. Energy-market reserve revenues and co-optimization are out of scope for v2 — stated, not hidden.
Frozen, versioned, never restated. A daily row, once written, never changes. Method changes get a new version string (this page is BESS-v2; the monthly series continues as BESS-v1), and both series stay downloadable forever. If we find a bug we publish the correction as a new version — the old numbers stay on the record. The full CSV is free with attribution ("Voltcast Battery Revenue Index" + link).
The forecast is scored in public. BESS-F1 expected revenue comes from our quantile price forecasts: the schedule is chosen on the P50 curve, the band prices that same schedule on the P10/P90 curves. Every issued forecast is frozen and compared against the realized index when the day settles — hit rate and misses stay on the record, exactly like every other model we run.
Corrections invited. If you think an assumption is wrong, tell us publicly — methodology critiques get answered in the open. The incumbents' indices live behind inquiry forms; this one's moat is that you can audit it.