Peak Shaving Software: What It Is and How It Works

Peak shaving software is a control layer that watches your site's live power draw, predicts when it will exceed a target threshold, and dispatches a battery, thermal store, or flexible load to keep you under it. Its job is to protect the single highest demand interval of the billing period, because that one interval sets your demand charge.
Four functions, in order. (1) Meter ingest: it reads live power from your meter or gateway, typically on a fast interval, and tracks the running average of the current billing interval. (2) Forecast: it projects where that interval will land before the interval closes — too late is useless, because the peak is recorded once the interval ends. (3) Dispatch: if the projection crosses your target, it discharges the battery or activates thermal storage to cover the difference. (4) Recharge: it refills the asset during low-price, low-load hours so capacity is ready for the next peak. Everything else — reporting, tariff modelling, arbitrage — sits on top of these four.

Demand charges are billed on the highest measured interval in the period, not on your average. In Germany the network charge (Leistungspreis) is set by the highest quarter-hour peak of the billing period; other markets use 15- or 30-minute intervals with the same logic. This is why peak shaving is a forecasting problem rather than a reaction problem: by the time the meter shows a high reading, part of the interval is already averaged in. Software that only reacts to a threshold crossing arrives late. Software that projects the interval's closing average and acts early is the thing that works.

Three asset classes, and good software handles more than one. A BESS (battery energy storage system) charges at night and discharges into the peak — the most flexible option, and the one that also earns from price arbitrage. Thermal energy storage (TES) makes ice overnight and cools with it during the day, which suits sites where the peak is driven by cooling. Load shifting moves deferrable loads — laundry, kitchen prep, pumping — out of the peak window entirely, and costs nothing but scheduling. A hotel we model in our BESS Academy uses TES and BESS together to hold a site under a 22 MW ceiling; the same logic scales down to a 2-5 MWh battery on a single commercial site.

The saving is the reduced demand charge, calculated as the kW you removed from the peak multiplied by your tariff's demand rate, plus any arbitrage margin from charging cheap and discharging expensive. In our own modelling, a well-sized BESS reduces network charges by roughly 35%, with a usable price spread of about 50-80 € per MWh on the arbitrage side. These are model figures from our Academy scenarios, not a promise for your site — your number depends entirely on your load profile's peak shape and your tariff structure. A site with one sharp daily peak shaves cheaply; a site with a broad flat plateau needs far more storage for the same kW reduction.

It cannot shave a peak it has no capacity to cover: if your battery is empty because the previous peak drained it, the software watches the peak happen. It cannot fix a badly sized asset — sizing comes from analysing the load profile first, and no control logic compensates for a battery that's too small for your peak's duration. It cannot help much where demand charges are small or absent, since the saving is proportional to the demand rate you're avoiding. And it cannot forecast an unforecastable load: a genuinely random, unscheduled spike is the hardest case, and the honest answer there is oversized capacity, not smarter software.
Ask how fast it ingests meter data and whether it forecasts the interval or merely reacts to a threshold — this separates working tools from dashboards. Ask whether it models your specific tariff, including the billing interval length and the demand rate, rather than a generic one. Ask whether it sizes the asset from your real load profile before you buy hardware. Ask what happens on a communications failure — a control layer that loses its meter feed should fail into a safe local rule, not go blind. And ask whether it stacks arbitrage and backup power on the same asset, since a battery bought for peak shaving alone is usually underused.