What Is Load Factor? The KPI Behind High TNB Bills
Load factor tells you whether you are paying TNB for capacity you actually use or capacity you touch once a month. Here is the formula, a worked RP4 example where two identical-kWh sites sit RM26,781 apart, and how to raise it.

A 1,000 kW peak on the Medium Voltage General tariff costs roughly RM89,270 a month in capacity and network charges, whether that peak held all month or lasted one 30-minute interval on a Tuesday morning. Load factor is the single number that tells you which of those two you are paying for. It is also the quickest way to decide whether a maximum demand reduction project deserves funding at your site, or whether your money is better spent chasing kWh instead.
What is load factor and how do you calculate it?
Load factor is your actual energy consumption divided by what you would have consumed if you had run at your peak demand for the whole billing period:
Load factor = kWh consumed ÷ (maximum demand in kW × hours in the period)
For a 30-day month, hours in the period is 720. A site that consumed 300,000 kWh with a recorded maximum demand of 600 kW has a load factor of 300,000 ÷ (600 × 720) = 69%. Same site, same energy, but a 900 kW peak, and the load factor drops to 46%.
It is a shape metric, not a size metric. A 5 MW smelter and a 200 kW retail shop can have the same load factor. What it describes is how evenly your consumption is spread: 100% would be a perfectly flat line, and a low percentage means most of your installed capacity sits idle most of the time while you keep paying for it.
One clarification worth making early, because the two get mixed up in meetings: load factor is not power factor. Power factor is about reactive power and attracts a TNB surcharge below 0.85 for supply below 132 kV, or below 0.90 at 132 kV and above. Load factor attracts no surcharge at all. It just quietly decides how expensive each of your kWh turns out to be.
Why a low load factor costs real money under RP4
Because the per-kW charges do not care how long your peak lasted. Since 1 July 2025, TNB has billed non-domestic customers under RP4, in force until 31 December 2027. The old letter categories (B, C1, C2, E1, E2, E3) are retired, replaced by voltage-based categories: Low Voltage, Medium Voltage and High Voltage, each with a General or Time-of-Use option. A bill now carries five components: energy, capacity, network, retail and AFA (the Automatic Fuel Adjustment that replaced ICPT).
Capacity and network are the two that punish a spiky profile. On Medium Voltage they are billed per kW of the month's single highest 30-minute demand interval:
- MV General: RM29.43 capacity + RM59.84 network = RM89.27/kW/month
- MV ToU: RM30.19 capacity + RM66.87 network = RM97.06/kW/month
Meanwhile MV energy rates dropped to roughly 29 to 31 sen/kWh under RP4. Less of your bill now moves with kWh and more of it moves with one half-hour of the month, which is exactly why load factor has become the KPI to watch. Full rate schedules are on the TNB pricing and tariffs page and the myTNB tariff schedule.
Low Voltage non-domestic works differently: capacity and network are charged per kWh, with no separate maximum demand charge. If you are on LV, a poor load factor does not hit your bill the same way, and demand-shaving projects have a much weaker business case.
Worked example: two sites, same kWh, RM26,781 apart
Consider two Selangor factories, both on Medium Voltage General, both consuming 300,000 kWh in a 30-day month. The kWh figures here are illustrative; the tariff rates are TNB's published RP4 rates.
Site A runs three compressors, two chillers and a heat treatment line that all start within the same 20 minutes at 8:00am. Recorded maximum demand: 900 kW. Load factor: 46%.
Site B runs the same load list but staggers startup across 45 minutes and interlocks the heat treatment line against chiller ramp-up. Recorded maximum demand: 600 kW. Load factor: 69%.
Demand charges: Site A pays 900 × RM89.27 = RM80,343. Site B pays 600 × RM89.27 = RM53,562. The gap is RM26,781 a month, or a little over RM321,000 a year, for identical energy consumption and identical production.
Expressed per unit, the demand charge alone adds 26.8 sen to every kWh Site A buys, against 17.9 sen at Site B. Add roughly 30 sen/kWh of energy charge and Site A is paying around 57 sen per delivered kWh while Site B pays about 48 sen, before retail charge and AFA, neither of which changes with load shape. Site A's procurement team can negotiate nothing that closes that gap. Only the load profile can.
If you want to test your own numbers, run your peak through the maximum demand calculator before committing to any capital.
What counts as a good load factor?
There is no TNB threshold, so treat these as engineering rules of thumb rather than published limits. Below 40% is a spiky profile with real money on the table. Roughly 40 to 60% is typical for single-shift light industry and commercial buildings. Between 60 and 75% suggests a well managed multi-shift operation. Above 80% usually means a continuous process, and there is little demand headroom left to recover.
Building type sets a ceiling you cannot argue with. An office tower operating 8:00am to 6:00pm, five days a week, is occupied for about 30% of the hours in a month. Its structural maximum load factor is somewhere in the 30 to 40% range no matter how well it is run, so judge it against similar buildings and against its own history, never against a 24/7 plant.
One adjustment for Time-of-Use customers: under RP4 the peak window is 2:00pm to 10:00pm on weekdays, and maximum demand recorded outside that window is not billed. If you are on ToU, calculate load factor against your billed (peak-window) demand, otherwise you will chase a morning peak that costs you nothing.
How do you raise your load factor?
Flatten the top, not the average. In practical order of cost:
Stagger startups. The cheapest fix in most Malaysian plants and buildings. Chillers, AHUs, compressors and large motors that all energise at shift start create a demand spike that no process actually requires. Sequencing them over 30 to 60 minutes, with interlocks so two large starts never coincide, often removes 10 to 20% of recorded MD with no capital spend at all. The tactics are covered in more depth in our guide to cutting TNB maximum demand charges.
Move discretionary load off the peak interval. Water pumping, ice or thermal storage charging, battery charging for forklifts, non-urgent heat treatment batches and test rigs rarely need to run when the plant is already at full tilt. On ToU, moving them out of 2:00pm to 10:00pm on weekdays helps twice: cheaper energy and no contribution to billed demand.
Automate a demand ceiling. A rule that sheds or delays a defined non-critical load when rolling half-hour demand is trending above target is more reliable than an operator watching a screen. This is what a demand-limiting workflow does: forecast the interval, act before it closes, log what was shed.
Add storage, once the free measures are exhausted. A battery discharging through your peak raises load factor by cutting the numerator's peak rather than its energy. The economics depend almost entirely on how sharp and how predictable your peaks are, which is why load factor should be calculated first. See battery energy storage for peak shaving for how that case is built.
When is chasing maximum demand not worth it?
When your load factor is already high. A site sitting at 80% has a peak that closely tracks how it genuinely operates. Shaving it means shutting down production, and the RM89.27 or RM97.06 per kW you might save comes at the cost of output. That site's savings live in efficiency: chiller plant performance, compressed air leaks, motor sizing, controls tuning, all of which reduce kWh and, incidentally, MD.
A site at 40% is a different conversation entirely. It is renting capacity it uses for half an hour a month. That is where sequencing, load shifting and storage pay back fastest, and it is why load factor belongs on the first page of any energy review, alongside kWh and cost per kWh. It is also a natural KPI to track continuously under an ISO 50001 or EECA-aligned programme, since it moves whenever operating practice drifts.
Getting the number right needs interval data, not monthly bills. CobiNeural computes load factor and a real-time maximum demand KPI from live metering, flags the interval where a peak formed and which feeders built it, and can trigger an action or a WhatsApp alert before the half hour closes.
If you would like a second opinion on your own profile, send us a recent TNB bill and a month of interval data and we will calculate your load factor, show where your billed peak is being set, and tell you honestly whether demand reduction is worth pursuing at your site. Start at request a demo.


