SystemPower Generation & Desalination

Heat Rate Performance Monitoring

Heat rate monitoring that prices every controllable loss in fuel each day, so the costliest drift is fixed first

Every controllable loss priced in fuel each day, so the costliest drift is fixed first.

See one case, screen by screen ↓
demoAED 73,680a dayof fuel above the expected heat rate on one 620 MW steam unit, found with no alarm active on the unit
demo1.5daysto pay back an on-line condenser cleaning: AED 59,400 to recover AED 38,780 a day of fuel
estimatedAED 32M a yearof fuel for each 1% of fleet heat rate recovered, on the sample five-unit fleet
estimated103,000t CO2a year avoided by the same 1%, because emissions fall with the gas burned
The problem

Why heat rate drift burns fuel for weeks before anyone acts

A gas-fired steam or combined-cycle unit loses efficiency slowly. Condenser tubes foul, a feedwater heater level drifts, the boiler runs with more air than it needs, steam temperatures sag. Every value stays inside its alarm band, so nothing trips and nothing reaches the control room, yet together these losses add to the fuel burned for every megawatt-hour. The drift is usually found at the monthly performance test, or when output is limited in the summer, weeks after it began.

When it is found, it is reported in kJ/kWh or percent, so a small excess-air drift and a large condenser drift look like two equal amber lights, and nobody sees which one costs more. Then the cause is argued rather than tested: is the condenser fouled, short of cooling water or leaking air? Each answer means a different job, and the money, the cause and the work order are left to a spreadsheet and a meeting.

typical60–80%of the cost of producing electricity from a thermal plant is fuel
typical$580K a yearof fuel for a 1% heat rate improvement on a 500 MW combined-cycle plant
typical2–4%heat rate typically recovered by production-cost optimisation projects
Where a drift's days go, from the first day of drift to a proven saving, in daysestimated
By hand41 days
With the solution5.5 days
  • Drift running unseen between performance tests24 → 1 d
  • Pulling historian data and correcting to the day's conditions2 → 0.1 d
  • Agreeing the cause: fouling, air in-leakage or cooling water flow3 → 0.2 d
  • Pricing the ways to fix it and their payback2 → 0.2 d
  • Raising the work order and agreeing the load window3 → 1 d
  • Measuring what the fix recovered7 → 3 d

Estimated split for one controllable loss such as a fouling condenser, in calendar days, by hand and with the solution. The 24 days by hand are the sample case: the Unit 3 condenser drifted from 19 Sep to 13 Oct before it was priced.

How it works

How drift becomes a fix

Seven specialist agents correct, split, price and diagnose every unit's heat rate; the performance engineer raises the fix.

What comes in
Plant data in4 sources · historian, fuel and gas quality, conditions, curves
Agents at work
Data checkertags + balances
Then
Heat rate corrector
Loss attributor
Fuel pricer
Then
Loss diagnosticiantests the causes
Then
Action plannerfix + payback
Savings verifier
A person decides
Performance engineerraises the work order
What comes out
Loss tree in AED a day
Work order with payback
Saving verified
One case, step by step

One fouled condenser, from the morning report to an approved load window

Lumina Utilities runs five units at the Ras Sahel and Al Noor stations, 2,760 MW in all, with a sixth in planned outage, on gas at AED 17.60 per GJ. Ras Sahel Unit 3 is a 620 MW gas-fired reheat steam unit that also supplies extraction steam to the station's desalination plant. On Tuesday 13 October 2026, here is what happens, screen by screen, in the working solution.

  1. 0107:10

    The morning starts on a loss tree priced in fuel

    Noura Al Hashimi · Performance engineer

    Noura opens the loss tree for the overnight report. Unit 3's corrected net heat rate is 9,982 kJ/kWh against an expected 9,640: +342 kJ/kWh, 3.5%, AED 73,680 a day of fuel. The tree splits the gap into the turbine cycle and condenser (AED 56.7K a day) and the boiler (AED 16.4K), most expensive loss first. At the top: condenser vacuum, 128 against 89 mbar(a), AED 46,100 a day.

    “AED 73,680 a day of fuel above the expected heat rate · 4,186 GJ of gas · 235 t CO2 · fix order by money, most expensive first”

  2. 02One click

    In alarm view, every node is green

    Noura Al Hashimi · Performance engineer

    She switches the same tree to alarm view. Unit 3 shows 0 alarms, and every loss reads “In band”: condenser pressure at 128 mbar(a) has an alarm at 160, the HP heater 6 terminal temperature difference at 7.9 °C has one at 15. This is what the control room sees, and why nobody called her.

    “No alarm. 128 mbar(a) is inside its band; the alarm is at 160. What it burns is below.”

  3. 0305:00 – 05:06

    Every unit corrected to the day before anyone arrives

    Data checker and Heat rate corrector

    Overnight, the Data checker read 2,184 tags for five units and flagged feedwater flow FT-301 reading 0.8% high against the condensate flow balance, so it used condensate flow plus heater drains and labelled it. The Heat rate corrector applied model v4.1: load 510 MW against 620, cooling water inlet 31.4 °C against 27.0, desalination extraction 62 t/h, gas at 38.9 MJ/Sm³. Expected heat rate: design 9,367 kJ/kWh plus corrections, 9,640.

    The Data checker never fills a gap or replaces a value without labelling it.

  4. 04Replay September

    The day scrubber shows when the drift began

    Noura Al Hashimi · Performance engineer

    Noura drags the day scrubber back. On 25 September Unit 3 was costing AED 24,340 a day and the condenser only AED 10,990, at 98 mbar(a). The pins on the scrubber come from the shift and maintenance logs: an intake screen trip let shell debris into the cooling water on 17 Sep, and on 19 Sep the tube cleaning ball recovery fell to 38%. From there the condenser node grows every day.

    “log, 19 Sep: Tube cleaning ball recovery falls to 38%”

  5. 05Open the loss

    Fouled tubes, with the other causes ruled out

    Loss diagnostician

    The loss page puts condenser pressure PT-310A/B against the expected pressure from the heat balance, corrected to the day's load and cooling water: AED 561K of fuel since 19 Sep. The Loss diagnostician tested four causes. Tube fouling is confirmed. Air in-leakage, low cooling water flow and instrument error are each ruled out, with the reading that rules them out.

    “The intake screen tripped on 17 Sep and let shell debris into the cooling water. From 19 Sep the tube cleaning balls were no longer recovered (38%), so the tubes fouled with nothing to keep them clean.”

  6. 06The evidence

    Eight readings, each one linked to its source

    Loss diagnostician

    Cleanliness factor by the HEI method is 66%, against 84% after the 1 Sep clean. Terminal temperature difference is 9.8 °C against 4.1. Cooling water temperature rise is normal at 9.6 °C against 9.4, vacuum pump air flow is 14 kg/h, normal below 20, and condensate dissolved oxygen is 6 ppb. Tube cleaning ball recovery: 38%, normal above 90%.

    The Loss diagnostician never states a cause without the tests that rule out the others.

  7. 07Run it again

    Three ways to fix it, priced and compared

    Action planner

    Noura re-runs the diagnosis step by step and gets the same answer as 05:05. The Action planner compares three options at AED 215 a day per kJ/kWh on Unit 3. Restoring ball cleaning only recovers AED 5,390 a day. A full clean at the next outage, on 22 Feb 2027, costs AED 31,000 but lets the loss run another 132 days, about AED 6.4M. Half-by-half cleaning on line recovers AED 38,780 a day for AED 59,400 and pays back in 1.5 days.

    “Recommended: the best payback, and no outage.”

  8. 08Raise

    The work order is drafted; Noura raises it

    Noura Al Hashimi · Performance engineer

    WO-RS3-26-04817 is ready for Karim Haddad, the maintenance planner: half-by-half tube cleaning and repair of the ball recovery strainer, contractor Coastline Tube Services on quotation Q-26-311, permit for isolation of water box A, then B. The load limit holds Unit 3 at 400 MW, Thu 15 Oct 22:00 – Fri 16 Oct 10:00, 2 × 6 h. The justification carries the cost, the cause and the payback.

    “Drafted by the Action planner at 05:06. You raise it; nothing is sent until you do.”

  9. 09Approved

    Operations approves the 400 MW window

    Daniel Okafor · Operations manager

    Raising the work order requests the load window from Daniel Okafor, who approves any fix that takes a unit below its dispatch. He approves it, and the work order moves on: Noura raised it, Daniel approved the window, Karim schedules Thursday 22:00. The last step stays open until the saving is measured.

    “Daniel Okafor approved the load window · Thu 22:00 – Fri 10:00 at 400 MW”

  10. 10In the register

    The saving is measured, not assumed

    Savings verifier

    The cleaning joins the action register, ranked by what each fix recovers for what it costs: open actions would recover AED 81,840 a day if all are done. The Savings verifier counts a saving only on measured, steady data. GT-22's offline compressor wash at Al Noor Block 2 was forecast at 55 kJ/kWh and measured at 57, AED 18,300 a day, on 21–30 Sep data.

    The Savings verifier never counts a saving before 3 days of steady data.

Who it’s for

Built for everyone who turns a drift into a fix.

The same fouled condenser, seen by the five people who find it, approve it, plan it, fuel it and run it — what their week looked like, and what it looks like now.

NA
Noura Al HashimiPerformance engineer, Ras Sahel Power and Water Station · raises work orders, approves the model and curves
Performance engineer
Before
Starts at 07:00 with the overnight report across five units, reading deviations in kJ/kWh and percent, then chases whichever looks biggest. “Nothing is in alarm, and I am still burning an extra 8,800 GJ a day.”
Now
Opens a loss tree priced in AED a day, the cause already tested and the fix compared, and raises the work order from the same screen.
DO
Daniel OkaforOperations manager · owns load, outages and the shift teams; approves load limits and windows
Operations manager
Before
Gets asked for load reductions without the money behind them. “Tell me what it pays back and I will give you the window.”
Now
Gets a load request with the window, the megawatts and the payback attached, and approves it in one step.
LF
Leila FaroukFuel manager · nominates gas daily against the contract; approves the monthly fuel price
Fuel manager
Before
Answers for the fuel bill with a nomination built on yesterday's heat rate. “My nomination is only as good as your heat rate.”
Now
Sees the fleet's extra gas each day, 8,827 GJ today, and what tomorrow's nomination carries: about 2,203 GJ a day less from 16 Oct, after the Unit 3 cleaning.
KH
Karim HaddadMaintenance planner · turns approved actions into scheduled work with contractors
Maintenance planner
Before
Receives fixes as emails and meeting notes. “Give me the work order with the window and the permit, not an email.”
Now
Receives a work order with the contractor quotation, the isolation permit, the approved load window and the justification attached.
RM
Ravi MenonShift charge engineer · runs the unit through the night; carries out shift tasks
Shift charge engineer
Before
Carries out the half-condenser isolation and the control-room changes. “Which half first, and how low do I take her?”
Now
Gets his tasks in the action register with the time and the reason, such as returning the FD fan bias to 0% after burner maintenance, scheduled tonight.
Built on the engine

7 agents. Each with one job, and hard limits.

Seven specialist agents correct, split, price and diagnose every unit's heat rate; the performance engineer raises the fix.

Data checker

Reads historian tags every hour, checks ranges, flat lines and the feedwater and condensate flow balance, and flags drifting instruments. Where a redundant measurement exists, it uses it and labels the substitution.

  • Never fills a gap or replaces a value without labelling it
  • Rejects values outside their physical range or flat for more than 2 hours
Heat rate corrector

Computes net heat rate from fuel flow, gas calorific value and net output, and corrects it to the day's load, cooling water temperature, ambient conditions and gas quality with the approved model and the manufacturer's curves.

  • Never changes the model or a curve
  • Reports every correction factor with the expected heat rate
Loss attributor

Splits each unit's deviation into controllable losses with that unit's own sensitivity curves, and shows what it cannot attribute as a residual.

  • Never forces the residual to zero
  • Warns when the residual exceeds 25 kJ/kWh
Fuel pricer

Turns each loss into GJ, AED and tonnes of CO2 a day, at the fuel manager's approved price and the emission factor of 56.1 kg CO2 per GJ.

  • Never uses a price that is not approved for the month
Loss diagnostician

For every loss above AED 5,000 a day, tests the possible causes against the historian, maintenance and shift logs: fouling, air in-leakage, cooling water flow, heater level, burner settings. It cites every reading.

  • Never states a cause without the tests that rule out the others
  • Smaller losses are diagnosed weekly
Action planner

Compares the ways to fix a loss, their cost, recovery, payback and window, and drafts the work order and the load request.

  • Never raises a work order or reduces load itself
  • Drafts only in the maintenance system
Savings verifier

After a fix, measures the recovered kJ/kWh and AED against the forecast on steady data.

  • Never counts a saving before 3 days of steady data
Performance engineer

Raises the fix; operations approves load. The agents propose; a named person decides.

Ask in plain words

Ask about any unit, loss or fix, in plain words

Ask what a unit is costing in fuel, what is causing a loss or what a fix pays back. Every answer points to its readings.

Why is Unit 3 costing AED 73.7K a day more than expected?

Its corrected heat rate is 9,982 kJ/kWh against an expected 9,640, +342 kJ/kWh. At AED 17.60/GJ and 12,240 MWh a day, each kJ/kWh costs AED 215 a day. Most of it is one loss: the condenser at 128 mbar(a) against 89 is AED 46,100 a day. Then the HP heater 6 level (AED 8,830) and excess air after the burner work (AED 6,250). No alarm is active, because every value is inside its band.

Is the Unit 3 condenser fouled, or leaking air?

Fouled. The cleanliness factor is 66%, down from 84% after the 1 Sep clean, and the TTD is 9.8 °C against 4.1. Air in-leakage is ruled out: vacuum pump air flow is 14 kg/h and dissolved oxygen 6 ppb. Cooling water flow is normal, a 9.6 °C rise against 9.4. It started on 19 Sep, when ball recovery fell to 38% after the intake screen trip.

What does cleaning the condenser pay back?

Half-by-half cleaning on line recovers about 180 kJ/kWh, AED 38,800 a day, for AED 59,400: contractor AED 38,000 and margin lost at 400 MW AED 21,400. It pays back in 1.5 days. Waiting for the February outage is cheaper as a job but lets the loss run 132 more days, about AED 6.4M. Daniel Okafor approves the load limit.

Which unit should get the next offline wash?

GT-21 at Al Noor Block 2. Its compressor efficiency is 86.1% against 88.4% after the July wash, costing AED 25,000 a day. An offline wash recovers about 64 kJ/kWh, AED 20,500 a day, for AED 110,000, so it pays back in 5.4 days. GT-22's wash on 20 Sep recovered 57 kJ/kWh, measured. The first low-demand Saturday is 24 Oct.

Every screen

The working solution, as it ships.

13 screens from the working solution, on its sample data. Pick one to see it large.

The loss treeA unit's corrected heat rate split into controllable losses, each priced in AED a day, most expensive first, beside the selected loss and the overnight run.
Alarm viewThe same tree as the alarm system sees it: 0 alarms and every value in band, while the unit burns AED 73,680 a day above expected.
Replay the driftThe day scrubber set to 25 Sep, with events from the shift and maintenance logs pinned where they happened.
One loss, diagnosedCondenser pressure against expected since 1 Sep, the causes tested and ruled out, and the three ways to fix it.
The evidenceEight readings against their expected or normal values, each linked to the historian, calculation or log it came from.
The diagnosis, step by stepThe agents re-run the diagnosis on request: tags checked, expected pressure, each cause tested, the start of the drift and the options compared.
Raise the work orderThe drafted work order with contractor, permit, load limit and justification. Nothing is sent until the performance engineer raises it.
Load window approvedThe work order's steps: raised, the 400 MW window approved by operations, scheduled, then the saving verified.
TrendThe daily fuel cost of each loss on a unit since 1 Sep, stacked, with the events behind each rise and 0 alarms raised in 43 days.
ActionsEvery priced fix ranked by recovery per AED spent, its work order and status, and the savings verified on steady data.
FuelExtra gas above the expected heat rate by unit, in GJ, AED and CO2, and what tomorrow's gas nomination carries.
Expected heat rate modelThe manufacturer's curve, today's corrections to load, cooling water, extraction, gas and ambient, and instrument health.
Your rulesFuel price, emission factor, thresholds, the correction run and who raises work orders and approves load limits.
Governance

Built to be trusted: every number sourced, every fix decided by a person.

Every number links to its sourceEach heat rate, loss and price links to its historian tags, the curve it was compared with and the correction applied — down to the heat balance page and the contractor quotation.
The residual is always shownWhat the loss attributor cannot assign to a controllable loss stays on the tree as an unattributed residual, never forced to zero, with a warning above 25 kJ/kWh.
People raise, approve and scheduleAgents never raise work orders, change load or change the model. The performance engineer raises the work order, the operations manager approves any load limit and the maintenance planner schedules it.
A versioned, approved modelThe expected heat rate model and its curves are versioned and approved by the performance engineer. A proposed version is previewed first, and every result keeps the model it was made with.
An approved fuel priceLosses are priced only at the fuel price the fuel manager approves for the month — AED 17.60 per GJ for October, approved by Leila Farouk on 1 Oct.
Savings measured, not assumedA fix is counted only after the Savings verifier measures it on at least 3 days of steady data, against its forecast. Every setting change is saved as a new version with who made it.
Configuration

Your plant's prices and approvers, not ours

The fuel price, the thresholds, the schedule and who decides are settings, each change saved as a new version.

SettingDefaultChoose from
Fuel price, AED per GJ17.60Set monthly by the fuel manager · October approved by Leila Farouk on 1 Oct
Emission factor56.1 kg/GJ (IPCC default)56.1 kg/GJ (IPCC default) · Station fuel analysis, 55.8 kg/GJ
Price a loss when it is aboveAED 1,000 a dayAny amount in AED a day · smaller losses stay in the tree but are not diagnosed daily
Diagnose dailyOnOn · Off — losses above AED 5,000 a day get a cause test every morning
Residual warningOnOn · Off — warns when the unattributed part is above 25 kJ/kWh
Correction runEvery hour, report at 05:00Every hour, report at 05:00 · Every 15 minutes, report at 05:00 · Every hour, report at 06:00
Who raises work ordersPerformance engineerPerformance engineer · Performance engineer or operations manager — drafted by the Action planner, raised by a person
Who approves a load limitOperations managerOperations manager · Operations manager and shift charge engineer — any fix that needs the unit below its dispatch
Connections

Works with the data a performance engineer already has

Plant historianhourly tags for every unit: pressures, temperatures, flows, O2, output
Fuel flow and gas qualityfuel flow and gas calorific value from the station chromatograph
Ambient and cooling water conditionsseawater inlet temperature, ambient temperature and humidity
Manufacturer's performance curvesheat balances, condenser and turbine curves, unit sensitivity curves
Maintenance systemwork orders created there with the justification attached
Shift and maintenance logstube cleaning logs, instrument records, burner work, contractor quotations
What it changes

The difference, in numbers.

Every figure is labelled: a target the solution is built to, an estimate, a typical published result, or a proven one.

estimated
AED 32Ma year
of fuel for each 1% of fleet heat rate recovered
1% on a 500 MW CCGT$580K a year
1% on a 2.4 GW fleetAED 32M a year
estimated
103,000t CO2
a year avoided by the same 1%
1% of heat rate
emissions fall with fuel
target
1day
to see a drift priced, not at the monthly test
Unit 3 condenser, found by hand24 days, AED 561K
Priced each morning1 day

“demo” = seen in the working solution, on its sample fleet data · “estimated” = our arithmetic (AED 32M a year = the fleet's expected burn of 503,414 GJ a day × 1% × AED 17.60/GJ × 365; 103,000 t CO2 = 5,034 GJ a day × 365 × 56.1 kg/GJ; the days split is our estimate) · “typical” = published figures (POWER, “Utilities and industry continue learnings around benefits of heat rate improvement”: fuel is 60–80% of the cost of producing electricity from a thermal plant, and 1% on a 500 MW combined-cycle plant is about $580,000 a year; POWER, “Coal-fired power plant heat rate improvement options, part 2”, and the article above: production-cost optimisation projects recover 1–5% of heat rate, typically 2–4%). Methods named as context: ASME PTC 46, PTC 12.2, the HEI condenser method, the IPCC 2006 natural gas default of 56.1 kg CO2/GJ. Lumina Utilities and the people, stations, contractor and records named on this page are fictional — characters and sample data in the working solution.

Questions

What performance engineers ask us.

What is heat rate performance monitoring?

Heat rate is the fuel energy a unit burns for each kilowatt-hour it sends out, in kJ/kWh. Heat rate performance monitoring compares each unit's actual heat rate, corrected to the day's conditions, with what it should achieve, and shows where the difference comes from. Heat Rate Performance Monitoring does this every hour and prices each controllable loss in fuel.

How does heat rate monitoring software work?

Seven agents check the historian tags, correct each unit's heat rate to the day's load, cooling water, ambient and gas quality with the manufacturer's curves, split the gap into controllable losses and price each one in GJ, AED and CO2. For the most expensive losses they test the causes, compare the ways to fix them and draft the work order. The performance engineer raises it.

What are controllable losses, and how are they priced in fuel?

Controllable losses are the parts of a heat rate deviation that operations and maintenance can fix: condenser vacuum, feedwater heaters, excess air, main steam and reheat temperatures, reheat spray and auxiliary power. Each is converted with the unit's own sensitivity curves into kJ/kWh, then into fuel at the approved price. On the sample Unit 3, each kJ/kWh costs AED 215 a day.

How does it tell condenser fouling from air in-leakage?

The Loss diagnostician tests each cause against its own readings. In the sample case, a cleanliness factor of 66% and a TTD of 9.8 °C with normal cooling water rise pointed to fouling, while vacuum pump air flow of 14 kg/h and dissolved oxygen of 6 ppb ruled out air in-leakage. It states a cause only when the tests rule out the others.

Does it work for combined-cycle plants and units that supply desalination?

Yes. The sample fleet has gas-fired reheat steam units and combined-cycle blocks, with losses such as gas turbine compressor fouling and inlet filter pressure drop. Desalination extraction is one of the corrections, so a steam unit is judged against what it should achieve at the extraction it supplies.

How does it prove a fix saved fuel?

After a fix, the Savings verifier measures the recovered kJ/kWh and AED against the forecast, and counts nothing before 3 days of steady data. In the sample, GT-22's offline compressor wash was forecast at 55 kJ/kWh and measured at 57.

Do people stay in control of work orders and load?

Yes. The agents draft and never raise a work order, reduce load or change the model. The performance engineer raises work orders and approves the model and curves, the operations manager approves any load limit, the maintenance planner schedules and the fuel manager approves the fuel price.

How long does it take to go live?

The Agentic Solution Engine builds and deploys it from your requirements and documents — your historian tag lists, the manufacturer's heat balances and curves, your fuel price and approvers — and it goes live once every quality gate has passed. We will walk you through it on your own units first.

See it on
your units.

We'll run Heat Rate Performance Monitoring on a sample of your own historian data and performance curves.