BESS · 27 Jul 2026

Commercial Battery ROI: The 3.4x Winter Swing

The same battery earns 3.4x more in July than in January. Size it on your annual-average bill and you under-build it in the three months that actually pay. Here is the arithmetic.

Commercial Battery ROI: The 3.4x Winter Swing

Your July electricity bill has arrived. Same building. Same machines. Same staff, same shifts.

It is far bigger than January’s. Nothing in your business changed.

The reason sits in one line on page two. Almost nobody reads page two.

One thing first. This is a model of commercial battery ROI, built on published tariffs, not a client testimonial. There is no anonymous office park here. Every rand below comes from Eskom’s price schedule, or from sums I show in full. Check it against your own bill by Friday.

It is not what most people assume

It is not load shedding. It is not your consumption either.

And it is not the annual increase. That landed on 1 April, nearly four months ago. Eskom-direct customers took 8.76%. That does not explain a jump this size.

Something else on your bill moves with the season. Before I name it, check one thing.

First, check which tariff you are actually on

Most battery proposals go wrong here, before the first sum.

Megaflex, Nightsave Urban, Ruraflex and Businessrate are Eskom-direct tariffs. Eskom sends you the bill itself.

If your park sits inside eThekwini, Johannesburg or Cape Town, you are on that municipality’s tariff. Different structure, different increase. eThekwini’s was 9% from 1 July 2026, cut back from a proposed 10.5%. Nothing below transfers to a municipal account unrebuilt.

Two more filters. Businessrate is capped at 100 kVA of notified maximum demand — the ceiling Eskom agrees to supply. It has no R/kVA/month demand charge. Nothing to shave.

Megaflex is a different game. Its winter peak-to-off-peak energy spread is 720.19 − 120.03 = 600.16 c/kWh excl VAT. There you make money moving energy through time. On Nightsave you make money flattening a curve. Our guide to peak shaving covers both.

You pay for the width of the pipe, not just the water

Your bill has two halves.

Energy is how many litres you drew all month. Demand is how wide the pipe had to be at your thirstiest moment. You pay for both, on separate lines.

That second line is the demand charge. It is a fee for the biggest gulp of power you took all month. Not for how much you used in total.

On Nightsave Urban that fee is R332.91 per kVA per month in winter, and R77.88 in summer.

A 4.3× swing, on one line, for a building that has not changed. That is your winter bill shock. And it answers to a different fix than consumption does.

Commercial battery ROI: what one shaved kVA is worth

Four charges on a Nightsave account are quoted in R/kVA/month. Only two fall when a battery clips your peak. Getting that wrong is the most common way a proposal overstates its own case.

Charge Rate (excl VAT) Falls when you shave?
Energy demand charge — high season (Jun–Aug) R332.91/kVA/m Yes
Energy demand charge — low season (Sep–May) R77.88/kVA/m Yes
Distribution network demand charge R26.29/kVA/m Yes
Distribution network capacity charge R39.13/kVA/m No — billed on annual utilised capacity

The capacity charge is the trap. Same units, same block on the bill.

But it is billed on annual utilised capacity: the size of supply you booked for the year. Clipping one month’s peak does not move it. Fold it in and you overstate the saving by about 11% in winter and 38% in summer.

The honest arithmetic:

  • Winter: R332.91 + R26.29 = R359.20 per kVA per month (R413.08 incl VAT)
  • Summer: R77.88 + R26.29 = R104.17 per kVA per month (R119.79 incl VAT)
  • Per 100 kVA shaved: R35,920/month in winter, R10,417/month in summer
  • Annualised (3 winter months + 9 summer): (3 × R35,920) + (9 × R10,417) = R201,513/year excl VAT

R201,513 a year, per 100 kVA you can reliably shave. Hold that number in your head. Everything else in a battery business case is a deal struck against it.

Monthly value of 100 kVA of shaved peak demand on Eskom Nightsave Urban, 2026/27 rates, excluding VAT Bar chart of twelve months. June, July and August each stand at R35,920 per month. The other nine months each stand at R10,417 per month. Value of 100 kVA shaved — Nightsave Urban 2026/27 Rand per month, excl VAT R40,000 R30,000 R20,000 R10,000 R0 R35,920 R10,417 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec High-demand season (Jun–Aug) Low-demand season (Sep–May)
Energy demand charge plus network demand charge, per 100 kVA of shaved chargeable demand. Eskom Schedule of Standard Prices, 1 April 2026, excl VAT.

Same battery, same building. It earns 3.4× more in July than in January. Nothing about the hardware changed. Only the tariff did.

A worked example: a KZN commercial park in July

Now the whole bill, so you can see what the saving is a percentage of. These are Terawatt modelling assumptions for a typical Eskom-supplied park in KwaZulu-Natal. Not site measurements.

  • Eskom-direct, Nightsave Urban (Large), non-local-authority, 500 V–66 kV, transmission zone ≤300 km
  • July chargeable demand 800 kVA; July consumption 150,000 kWh — a spiky, office-park-style load factor of roughly 25%
  • 31-day billing month, single point of delivery, excl VAT
  • A battery that reliably holds a 150 kVA reduction across the whole demand-measurement window, not just the worst half-hour
July line item Amount
Active energy — 150,000 kWh at 177.20 c/kWh R265,800
Energy demand charge — 800 kVA at R332.91 R266,328
Network demand charge — 800 kVA at R26.29 R21,032
Network capacity charge — 800 kVA at R39.13 R31,304
Service (R215.91/day), administration (R21.07/day), ancillary (0.42 c/kWh) R6,693 + R653 + R630
Modelled July total R592,440

The demand charge is the biggest line on that bill. Bigger than the electricity itself.

Shave 150 kVA and the saving is 150 × R359.20 = R53,880. The bill drops to R538,560, a 9.1% cut.

Now run the same building through January. Energy drops to 170.21 c/kWh (R255,315). The energy demand charge falls to 800 × R77.88 = R62,304. The modelled bill is R377,931. The same 150 kVA now saves 150 × R104.17 = R15,626. That is 4.1%.

What this excludes. A real Nightsave bill carries more lines: legacy charge, subsidies, winter reactive energy. I left them out rather than quote a rate I cannot cite here. They add to the bill, which makes the percentage smaller. So treat 9.1% as an upper bound and R53,880 as the solid figure. The rand saving does not move. Only the percentage does.

One more thing. Same building, same consumption, and July costs R214,509 more than January. The energy demand charge alone accounts for R204,024 of that.

Why sizing on your annual-average bill gets the battery wrong

Here is where that 3.4× swing stops being trivia and starts costing money.

The standard method is to average twelve months of bills, size against that average, then quote a payback. On Megaflex it is roughly fair. The value is spread across the year.

On Nightsave Urban it is not. Of the R201,513 a year per 100 kVA, R107,760 falls in June, July and August. Three months carry more than half of it.

So size the power rating on your winter peak, not your average peak. A battery that clips 150 kVA in November but only 90 kVA in July has given away the expensive part of its own case. Buy for July.

Then size the energy capacity on the demand-measurement window. Nightsave measures demand over its own charging periods. Confirm that window on your tariff schedule first.

Its width sets the kWh you need, not the depth of your spike. Get it wrong and the system runs flat at 15:00. We cover the trade-off in 1MWh vs 500kWh for industrial peak shaving.

One last check. Find out how chargeable demand is worked out on your account. If it carries a floor, the first slice of shaving earns nothing.

Monthly totals will not tell you. You need half-hourly meter data, which is what EnergyCloud exists to read.

What this model cannot tell you

I am not publishing a capex number. Battery prices move with the rand and with cell prices. A figure I write in July is stale by October.

Turn it around. Take the kVA you can reliably shave, divide by 100, multiply by R201,513. That is your annual saving.

Divide a costed quote by it and you have a payback in years. If that does not clear your hurdle rate today, be wary of the growth rates used to rescue it. Try our savings calculator.

Two things to state honestly. Round-trip efficiency — how much of what you put in you get back — and cycle life are assumptions, not facts. Say which you used.

On tax, there is a fast write-off allowance for storage assets. What you get depends on the asset and how you use it. Do not model a percentage into a payback until your tax advisor confirms it. Our section 12B overview is a start, not an answer.

Next April is the part to worry about

It is late July. Roughly five weeks of the R332.91 rate remain. A study started now captures next winter, not this one.

It is already partly visible. NERSA got Eskom’s asset base wrong by R54.7 billion. The regulator is clawing that error back through tariffs over three years: R12 billion in 2026/27, R23 billion in 2027/28, then R19.7 billion.

Without it, this year’s rise would have been 5.36% for Eskom-direct customers and 6.19% for municipalities.

The instalment in the bill on your desk is the small one. It roughly doubles next year.

So a payback modelled on today’s R359.20/kVA is cautious, not optimistic. That is the direction you want a business case to err. Our tariff forecast tracks it.

When peak shaving on Nightsave is not worth doing

I would rather tell you this now than after a site visit.

  • High load factor. A process running flat out all day has no peak to clip. That is an efficiency problem, not a storage one.
  • Small supply. Below about 100 kVA you are likely on Businessrate. No R/kVA/month demand charge. Nothing here for you.
  • Unpredictable demand. Batteries do well against a repeatable daily shape. Against a random spike you must oversize heavily. One bad half-hour resets the month.
  • Nobody owns the dispatch. This is not fit-and-forget plant. If no one watches the controller, the saving fades quietly.
  • You are on a municipal tariff. Not a no — a different model. Rebuild it on your municipality’s schedule first.

Frequently asked questions

Will a battery actually pay for itself on Nightsave Urban?

That depends on your capex and on how many kVA you can really shave. The tariff side is fixed and checkable. Every 100 kVA removed is worth R201,513 a year excl VAT: R35,920 a month in winter, R10,417 in summer.

Can I make money charging at night on Nightsave?

Effectively no. Active energy is 177.20 c/kWh in winter and 170.21 c/kWh in summer. It is not time-of-use, so charging at night earns almost nothing on the energy line. Megaflex is the opposite, with a winter peak-to-off-peak spread of 600.16 c/kWh excl VAT.

Why does the same battery save so much less in summer?

Because the energy demand charge drops from R332.91 per kVA in winter to R77.88 in summer. A 4.3× swing on one line. Add the R26.29 network demand charge to both and a shaved kVA is worth R359.20 against R104.17. The hardware has not changed.

I am supplied by eThekwini — does this apply to me?

No. Nightsave Urban is an Eskom-direct tariff. eThekwini customers sit on the city’s own structure. Their increase was 9% from 1 July 2026, not Eskom’s 8.76% from 1 April. The method here transfers. The rates do not. Rebuild it on eThekwini’s schedule.

Test this model against your own bill

Send us twelve months of bills and your half-hourly meter data. We will show you what your chargeable demand does in winter. Then how many kVA you can really shave, and what that is worth at published rates. Arithmetic shown, as above. If a battery is not worth it here, we will say so.

Request a costed feasibility →

Tariff rates: Eskom Schedule of Standard Prices effective 1 April 2026 — non-local-authority, transmission zone ≤300 km, supply ≥500 V and <66 kV, excl VAT unless stated. Load, demand and shaving figures are Terawatt modelling assumptions for a representative site, not measurements from a client installation. Confirm your own tariff, voltage category and demand-measurement window before relying on this.

Allen Meyer

Director of Engineering · Terawatt Energy

Writes the Insights blog when not on a site.

Free bill check

Send us your bill.

We read it and show you what you are overpaying, in about 30 seconds. Free, and nobody phones you unless you ask.

Send us your bill →

See all posts

Instant AI analysis · free · POPIA-compliantUpload one bill — see your saving in plain Rands.
Upload a bill