A petrol engine rarely runs on its base fuel map alone. While you drive, the engine control unit (ECU) checks the exhaust and nudges injection quantity up or down so the mixture stays where the catalytic converter needs it. Those corrections are fuel trims, and they are among the most useful live-data values in any diagnostic session. Here is how short-term and long-term trims are calculated and learned, and what they reveal about an engine and its calibration.

Diagram of closed-loop fuelling: air-mass input, base fuel calculation, long-term and short-term fuel trim corrections, injectors, combustion and upstream lambda sensor feeding the STFT controller and LTFT adaptation
Closed-loop fuelling: how STFT and LTFT are built (simplified educational diagram, original illustration)

Closed-loop fuelling in brief

The ECU calculates a base injection quantity from the measured or modelled air mass (MAF, or MAP plus intake temperature and rpm) and a target air-fuel ratio, normally lambda 1 at idle and part load on a warm engine. The upstream lambda sensor reports whether combustion came out lean or rich, and the ECU corrects the next injections. That is closed-loop operation. The loop is typically opened during cold start, full-load or component-protection enrichment and overrun fuel cut.

Short-term fuel trim (STFT)

STFT is the fast correction. With a narrowband sensor the signal flips between lean and rich, so the ECU ramps fuel up while it sees lean and steps back when it sees rich; on a healthy engine STFT oscillates around zero. A wideband sensor tells the ECU how far from target it is, allowing smoother correction. Positive values mean fuel is being added because the exhaust reads lean; negative values mean fuel is being removed.

Long-term fuel trim (LTFT) and adaptive cells

When STFT holds the same offset for a while, the ECU transfers it into long-term fuel trim, stored in memory and applied from the next start. Many systems learn separately by operating zone:

Naming and cell layout differ between manufacturers, but separate idle and part-load learning is common.

Illustrative chart of total fuel trim at idle, 2,500 rpm and under load for a vacuum leak, fuel delivery fault, contaminated MAF, rich fault and a healthy engine (no real measured data)
Reading total fuel trim at idle, 2,500 rpm and under load (illustrative) (simplified educational diagram, original illustration)

Reading trims in live data

Add STFT and LTFT to get total trim and compare it on a fully warm engine at idle, at a steady 2,500 rpm without load, and on a load test. On V and boxer engines compare bank 1 (the side with cylinder 1) with bank 2. A commonly cited rule of thumb: totals within roughly ±10% are usually unremarkable, while values approaching ±20–25% are where many ECUs start setting lean or rich codes. Use the manufacturer’s limits where you have them.

What lean or rich trims point to

After the repair: reset adaptations

Learned values still hold the old correction after a fix. Use the scan tool’s adaptation reset where available, clear codes, drive at idle and part load to relearn, then confirm trims have settled near zero.

Chart comparing closed-loop fuel trim on cars and vans, LPG and CNG vans and trucks, petrol agricultural and utility machines, and motorbikes
Closed-loop fuel trim across vehicle types (simplified educational diagram, original illustration)

Cars, gas-fuelled vans and trucks, machines and motorcycles

Cars and vans report trims through standard OBD live data. On LPG and CNG conversions, compare petrol-ECU trims on gas with trims on petrol; a large difference points to the gas calibration. Dedicated gas engines in trucks and vans usually run their own lambda control. Petrol agricultural and utility machines vary: EFI UTVs, generators and some small engines run closed loop, many simpler engines do not. Fuel-injected motorcycles often limit closed loop to idle and steady cruise, and header leaks or aftermarket exhausts upset the sensor.

Fuel trims and tuning

A good calibration should not depend on large trims. If LTFT moves a long way after a remap, the airflow or fuel model needs attention, or a mechanical fault was already present. Check trims before and after any file change, and log a wideband sensor at full load, where trims do not act. ECUFileMarket’s engineered files follow that principle; checksum correction, where required, is a separate paid option and is not included in file prices.

Related fault codes (DTCs)

Generic OBD-II codes per SAE J2012 (bank 1 / bank 2 pairs shown together). Wording and setting conditions vary by manufacturer.

CodeMeaningTypical causes
P0170 / P0173Fuel Trim Malfunction (Bank 1 / Bank 2)Trims beyond the learned limit: air leak, fuel delivery, MAF or sensor fault
P0171 / P0174System Too Lean (Bank 1 / Bank 2)Vacuum leak, contaminated MAF, low fuel pressure, restricted injectors, exhaust leak ahead of the sensor; both together suggest a shared cause
P0172 / P0175System Too Rich (Bank 1 / Bank 2)Leaking injector, high fuel pressure, purge valve stuck open, MAF over-reading
P2177 / P2179System Too Lean Off Idle (Bank 1 / Bank 2)Fuel delivery limits, MAF under-reading, restricted injectors
P2178 / P2180System Too Rich Off Idle (Bank 1 / Bank 2)High fuel pressure, leaking injectors, MAF over-reading
P2187 / P2189System Too Lean at Idle (Bank 1 / Bank 2)Vacuum, PCV or brake-booster hose leaks, intake gasket
P2188 / P2190System Too Rich at Idle (Bank 1 / Bank 2)Purge vapour at idle, leaking injector
P0101Mass or Volume Air Flow Circuit Range/PerformanceContaminated or failing MAF, air leak after the MAF, plausibility error against the airflow model
P0130O2 Sensor Circuit (Bank 1 Sensor 1)Upstream sensor or wiring fault, so trims chase a false signal
P0133O2 Sensor Circuit Slow Response (Bank 1 Sensor 1)Ageing or contaminated upstream sensor, nearby exhaust leak
P0441Evaporative Emission System Incorrect Purge FlowPurge valve stuck or leaking, blocked or split purge lines
P0496Evaporative Emission System High Purge FlowPurge valve stuck open, often with rich or erratic idle trims
P0087Fuel Rail/System Pressure Too LowWeak pump, blocked filter, faulty regulator or high-pressure pump

Closing

Fuel trims show how hard the ECU is working to correct the mixture. Read them by load, by bank and by trend, and they point to the fault before any parts are swapped.

Need an engineered tuning file for a car, van, truck, tractor or bike? Upload your original ECU read at ECUFileMarket.

Leave a Reply

Your email address will not be published. Required fields are marked *