Fuel injectors on an engine intake manifold

Was this article helpful?

Comments

P0170 and P0173: fuel trim malfunction, and why it is not the same as lean

P0171 says the mixture is lean. P0170 says the correction system itself has run out of authority. The difference decides where you look.

AI-generated 4 min read

P0171 and P0174 are famous. P0170 and P0173 are their less-read siblings, and they say something subtly different.

CodeMeaning
P0170Fuel trim malfunction, bank 1
P0173Fuel trim malfunction, bank 2

A lean or rich code says the mixture went out of range in a specific direction. A trim malfunction code says the correction system exceeded its limits — it could no longer bring the mixture back, in either direction.

Background: fuel trim STFT and LTFT explained.

Why the distinction matters

The ECU has a limited amount of authority to add or remove fuel — typically around ±25% before it gives up and sets a code.

  • P0171 sets when trim goes strongly positive: the engine needs more fuel than expected. Cause is usually unmetered air.
  • P0172 sets when trim goes strongly negative: too much fuel is arriving.
  • P0170 sets when the correction is at its limit and the mixture still is not right, or when trim behaviour is erratic in a way that does not fit either direction cleanly.

In practice P0170 often accompanies P0171 or P0172. When it appears alone, it usually means the trim is swinging between extremes rather than sitting at one.

The swinging trim pattern

This is the signature worth learning.

Log short-term and long-term fuel trim at idle for a minute, then at 2500 rpm.

PatternMeaning
LTFT positive at idle, near zero at 2500Vacuum leak — small leak matters less at high flow
LTFT positive at bothFuel supply or metering shortfall
LTFT negative at bothToo much fuel — injector, pressure or MAF over-reading
LTFT swinging both waysSensor or intermittent fault — P0170 territory

That last row is the reason to treat P0170 differently. A trim that cannot settle points at something unstable rather than something constantly wrong.

Causes, ordered for a swinging trim

1. An erratic oxygen sensor

A lazy or intermittent upstream sensor feeds bad information into the loop, and the loop chases it. This produces exactly the unstable trim P0170 describes.

Check the sensor’s switching behaviour before anything else: O2 sensor waveform analysis and P0133 slow response.

2. An intermittent vacuum leak

A crack in a hose that opens under heat or engine movement. Present at some moments and not others, which the trim reflects faithfully.

3. MAF sensor drift

A sensor that under- or over-reports airflow inconsistently — often contaminated rather than failed: MAF/MAP sensor diagnostics.

4. Fuel pressure fluctuation

A weak pump or a failing regulator delivers inconsistent pressure, so the same injector pulse delivers different fuel quantities.

5. One weak injector

On a bank with a single failing injector, trim tries to correct the whole bank for one cylinder’s problem, which it cannot do cleanly. Look for a misfire code alongside: P0301 to P0304 cylinder misfire.

Bank 1 versus bank 2

On a V-engine, which bank has the code narrows things considerably.

One bank only — the cause is on that bank. A leak at that intake runner, that bank’s sensor, an injector on that side.

Both banks together — the cause is shared. The MAF, fuel pressure, or a leak upstream of the split.

This one observation eliminates half the engine, and it is free.

Do not clear it before recording it

Fuel trim values are the diagnosis. Once you clear codes, long-term trim resets to zero and the ECU relearns from scratch, which erases the evidence.

Record trims at idle and at 2500 rpm, both banks, before clearing anything. Take a screenshot if you have to.

Clearing codes: when and why.

After the repair

Long-term fuel trim does not reset itself instantly. Clear it deliberately after fixing the cause, then drive and confirm it settles near zero. A trim that climbs straight back to +18% means the repair did not address the cause.

Post-repair verification OBD checklist.

Try it on the free tier of the apppair an ELM327 adapter and log both short and long-term trim at idle and 2500 rpm. That four-number comparison is the fastest route from a trim code to an actual cause.

Comments

Loading…