What is peak shaving, and how is it different from TOU arbitrage?
Peak shaving is power-oriented. A hybrid inverter clips the highest net demand at the site during a utility’s demand interval, which lowers the billed kW rather than the kWh. Time-of-Use (TOU) arbitrage is related, but different. The battery charges during low-rate hours, then supplies loads during high-rate windows. Savings there come from the price spread between cheap and expensive kWh, not from a lower demand peak.
Residential TOU tariffs usually reward arbitrage. Commercial tariffs with demand charges reward shaving instead. Mixed tariffs need both running at once. Arbitrage handles the daily calendar, while a kW cap gets enforced only during the demand interval itself.
This guide assumes the basic case for peak shaving already makes sense. It focuses specifically on how a hybrid inverter executes the schedule and which settings control it. For the broader consumer-facing picture, see. For the broader consumer-facing picture, see Peak Shaving for Homes: How Battery Storage Cuts Electricity Bills.
How a hybrid inverter executes peak shaving
A hybrid inverter runs peak shaving and TOU arbitrage through the same controller. Calendars, setpoints, and priority rules automate off-peak charging and on-peak discharge without manual intervention.
Configuring this comes down to a handful of settings:
- Calendar-based dispatch. Weekday, weekend, and seasonal TOU calendars with start and end times for off-peak, shoulder, and on-peak blocks, including holiday exceptions.
- Priority rules. Serve loads first, then charge, then export. A reserve SOC is held for backup, with discharge suspended below that floor. PV can also top the battery during cheap or shoulder windows.
- Demand cap. A kW ceiling at the point of common coupling. The inverter discharges to keep the meter under this cap, evaluated continuously or on a short moving average aligned to the utility interval.
- Export modes. Zero export for interconnection compliance, or a fixed export cap where credits apply, always respecting feeder limits.
- Overrides. Manual force-charge or force-discharge to the next block, a tariff holiday mode, and an outage response that prioritizes backup over savings.
A daily dispatch typically runs through four stages:
| Stage | Control inputs | Inverter actions | Targets and limits |
|---|---|---|---|
| Off-peak charge | TOU block is off-peak, SOC target high, export limit set | Charges from grid and PV, serves loads, obeys export cap | Reaches high SOC target by block end, zero or capped export |
| Shoulder hold | Shoulder block, PV available, reserve SOC defined | Serves loads with PV first, trims import, holds battery SOC | Maintains reserve for peak, meets export rules |
| On-peak discharge | On-peak block active, demand cap set | Discharges to loads, shaves spikes, limited export if any | Keeps import under the kW cap, stops at low SOC reserve |
| Reserve and backup | Reserve rule or outage event | Locks out discharge below reserve, switches to EPS if grid fails | Preserves backup energy, sustains critical loads |
Internally, the inverter runs three checks on every interval. First, it reads the tariff calendar to decide whether the current block is charge, hold, or discharge. Second, it compares measured grid import at the point of common coupling against the configured kW cap. It releases battery power only for the surplus above that cap. Third, it checks the reserve state of charge, so a shaving event never drains the capacity set aside for the evening peak block or for backup.
On a real site, this plays out as overlapping jobs, not one at a time. During a mid-afternoon HVAC start, the inverter can discharge at partial power for demand control. It still holds enough energy for the evening rate window at the same time. Metering direction, calendar accuracy, and a sensible reserve floor are what keep those two jobs from competing with each other.
Plan settings with cycle life in mind from the start. Heavy daily arbitrage combined with frequent shaving events drives deeper depth of discharge. That means higher cycle counts, which affects both battery sizing and replacement timelines down the line.
Why generic schedulers fall short
Many inverters on the market can only run one daily schedule block. Some ignore seasonal and weekday/weekend differences entirely. That causes mistimed charging and residual demand peaks when compressors or EVs start unexpectedly. A capable scheduler works differently. It sequences PV to load, battery charging windows, grid import limits, export rules, and reserve SOC as one coordinated priority stack. It’s also fast enough to catch short transient spikes before they set a new billing peak.
| Market limitation | What a capable scheduler does instead | Operational impact |
|---|---|---|
| Inflexible daily blocks | Multi-season TOU calendars with weekday/weekend splits | Aligns off-peak charging and on-peak discharge with actual tariff boundaries |
| Slow response to short spikes | Fast transient handling with a settable demand cap | Reduces peak demand charges by shaving brief surges before they set a new peak |
| No hard demand limit | A hard cap enforced with battery and PV assist together | Keeps the feeder below target kW without nuisance trips or missed events |
| Weak or delayed zero-export | Accurate zero-export with PV curtailment and battery absorption | Prevents backfeed penalties while still serving local loads first |
| Flat priority, no SOC guardrails | A priority stack with reserve SOC and EPS reserve built in | Limits unnecessary cycling and preserves backup while meeting TOU goals |
Sizing power, energy, and peak-cap settings
Sizing for peak shaving means three things: setting a demand cap, matching inverter kW to that cap, and sizing battery kWh to sustain the peak window. A few terms anchor this:
- Demand interval. The utility window, usually 15, 30, or 60 minutes, that sets billed demand.
- Demand cap setpoint. The feeder kW limit the system enforces with battery and PV assist.
- TOU calendar. Season and weekday-or-weekend blocks that gate charge and discharge behavior.
- Reserve SOC. The minimum state-of-charge floor maintained for events and EPS.
- Zero export. The control that prevents backfeed by capping export and curtailing PV as needed.
| Worksheet item | Sizing or setting |
|---|---|
| Highest interval demand (kW) | Pull from AMI or meter data at the utility interval length |
| Target feeder cap (kW) | Set at or below the demand threshold you plan to hold |
| Target shaved kW | Highest interval demand minus the target feeder cap |
| Required inverter continuous kW | At least the target shaved kW, plus headroom for transients |
| Battery energy (kWh usable) | Average shaved kW during peak times peak duration, adjusted for round-trip losses and DOD |
| Import/export caps and zero export | Grid import max set to the cap, export max per interconnect, zero export enabled if required |
A worked example makes this concrete:
- Highest demand: 50 kW
- Target cap: 40 kW
- Target shaved = 50 − 40 = 10 kW
- Required inverter power = 10 kW × 1.2 headroom ≈ 12 kW
- Average shaved power over a 2-hour peak window: 8 kW × 2 h = 16 kWh raw energy
- Adjusted for ~90% usable DOD: 16 ÷ 0.9 ≈ 18 kWh nameplate battery
Setting the peak cap itself is the step most installations get wrong. Start from interval data, not nameplate load. Take the highest average kW in the utility interval over the last twelve billing cycles. Set the cap slightly below the level the battery can hold for a full interval. A cap that’s too aggressive drains the pack early, and the demand peak simply reappears at the end of the interval anyway. It’s worth reviewing the cap each season, since load profiles and tariff windows both shift over time.
Battery cycle life for daily cycling
Running the battery daily for peak shaving means cycle life depends on how hard each cycle runs, not just how many cycles simply accumulate over time.
| Factor | Mechanism | Practical control |
|---|---|---|
| Depth of discharge | Deeper DOD drives higher electrode strain and side reactions, cutting available cycles | Set a usable SOC window with a protective floor and modest top buffer |
| Temperature | Heat accelerates degradation; cold limits power and raises internal resistance | Time charging for coolest hours, ventilate enclosures, avoid fast charge on cold cells |
| C-rate | Higher discharge current raises internal heating and plating risk | Cap discharge power to the battery’s continuous rating, allow only short bursts above it |
| Throughput warranty | Total MWh or cycles at a stated DOD governs when the warranty ends | Calculate annual throughput and size to stay within the warranty budget with margin |
A mid-SOC rest band and modest currents often extend lifetime more than squeezing a few extra kWh out of the pack each day. It’s also worth having the scheduler skip low-spread days entirely. A cycle without a meaningful price gap costs battery life for no real return.
Conclusion
Verifying results comes down to a handful of measurable outcomes. These need to be tracked against a baseline, not assumed from the settings alone.
| KPI | How to verify |
|---|---|
| On-peak import reduction (kWh) | Sum imported kWh in utility on-peak blocks against a baseline period, cross-checked with inverter logs mapped to tariff windows |
| Peak demand reduction (kW) | Compare the monthly highest interval demand with the demand cap, confirming discharge held the meter at or below target |
| Observed round-trip efficiency | Energy out of the battery divided by energy in over 24 hours; tune charge current and SOC window if this lags expectations |
| Battery cycles per day | Throughput divided by usable capacity, validated against cycle life assumptions and thermal limits |
| Compliance flags (zero-export) | Reverse power at the point of common coupling should stay at zero within meter resolution; recheck CT polarity after any schedule change |
Review these weekly during commissioning, then monthly afterward. Adjust time blocks as seasonal tariffs and load patterns shift. Keeping demand caps aligned with the battery and inverter’s actual current limits matters more over time than getting the initial setpoint perfect on day one.
FAQ
Is TOU arbitrage the same as peak shaving?
No. TOU arbitrage buys energy at cheap hours and uses it at expensive hours to cut the energy charge. Peak shaving caps the highest kW draw in a billing window to cut the demand charge instead. One targets price per kWh, the other targets the measured peak.
What is a peak-shaving demand period?
It’s the utility-defined demand window, usually 15, 30, or 60 minutes, during which the site’s highest average kW sets the billed demand charge for that period.
What’s the difference between peak shaving and load shifting?
Peak shaving caps the highest demand within a billing interval using battery discharge. Load shifting is broader. It means moving any flexible load or charging activity to a different time of day, with or without a battery involved. It doesn’t necessarily target a specific kW cap either.
Does daily cycling shorten battery life too much?
Modern LFP packs are rated for several thousand full cycles, so one cycle per day still leaves a long service life. Keeping depth of discharge moderate, avoiding high-temperature installation, and letting the scheduler skip low-spread days all help preserve that lifespan.
Can one hybrid inverter handle both TOU arbitrage and peak shaving at the same time?
Yes, and on a mixed tariff this is common. The TOU calendar runs the day-to-day charge and discharge schedule. A kW cap gets enforced only during the utility’s demand interval. The two logics run on different timescales, so they don’t conflict with each other.
