P0171: System Too Lean (Bank 1) — Diagnosis, Causes & Testing

P0171 means fuel trim has reached its lean correction limit. Learn STFT/LTFT interpretation, MAF plausibility, intake leaks, fuel pressure, injectors, purge and O2 feedback — and how trims change with RPM and load.

General Diagnostic PrincipleTechnical Review CompleteLast reviewed 2026-08-12
Written by MechanIQ Editorial TeamTechnically reviewed by AutoLogic Diagnostics

Pressure, voltage, torque, pin and waveform values on this page are guidance only. Vehicle-specific verified specification required before acting on any test.

What the code means

P0171 is a fuel-trim limit code. The ECM has been adding fuel (positive trim) to bring the air-fuel ratio back to stoichiometric, and long-term fuel trim has reached its calibrated correction limit without succeeding. The ECM interprets this as a genuine lean condition it can no longer compensate for.

The code reports that the mixture is lean beyond correction. It does not say why.

System involved

  • Air measurement: MAF (or speed-density / MAP)
  • Induction: intake ducting, manifold, PCV, EVAP purge, vacuum hoses
  • Fuel delivery: pump, filter, regulator, injectors, rail pressure
  • Feedback: O2 / lambda sensors

Common symptoms

  • Rough idle, hesitation, stumble on acceleration
  • MIL on
  • Poor fuel economy (sometimes improved, sometimes worse)
  • Hard start when hot
  • Lack of power
  • Occasional stall at idle

Possible causes

  • Unmetered air: vacuum leak (intake manifold, PCV, brake booster, EVAP purge stuck open)
  • MAF: contamination under-reporting airflow, or MAF signal circuit
  • Fuel delivery: low fuel pressure, weak pump, restricted filter, low rail pressure (GDI)
  • Injectors: restricted, flow-imbalanced, or leaking (lean side: restriction)
  • O2 sensor: biased lean (rare — usually the sensor is correct)
  • Exhaust leak ahead of the O2 sensor (adds oxygen, reads lean)
  • Fuel quality / contamination

Why the DTC does NOT prove a particular component has failed

P0171 reports that fuel trim has maxed out lean. It does not say whether the cause is extra air (leak, MAF), too little fuel (pressure, injectors), or a misleading O2 signal (exhaust leak). Each of these pushes trims lean and sets the same code. Replacing the O2 sensor because "P0171 is an O2 code" is the classic mistake — the sensor is almost always correctly reporting a lean condition the engine is actually experiencing.

Initial checks

  1. Read all codes. P0172 (rich on the other bank), P0300 (misfire), P0174 (lean bank 2) shape the hypothesis.
  2. Read STFT and LTFT — both banks, at idle and at 2500 RPM.
  3. How do trims behave with RPM/load? → lean at idle only: vacuum leak. → lean under load: fuel delivery or MAF. → lean everywhere: MAF or fuel pressure.
  4. Visual: intake ducting after the MAF, PCV, vacuum hoses, exhaust ahead of O2.
  5. Fuel pressure: commanded vs actual.

Freeze-frame values worth reviewing

  • Engine speed and load (where the trim hit the limit)
  • STFT and LTFT (both banks)
  • Fuel rail pressure (if GDI)
  • Coolant temperature
  • O2 / lambda voltage

Live-data parameters worth reviewing

| Parameter | Why | |---|---| | STFT and LTFT (both banks) | Lean direction and magnitude | | MAF vs calculated load | MAF plausibility | | Fuel pressure / rail pressure | Fuel delivery | | O2 / lambda voltage | Feedback — is it genuinely lean? | | EVAP purge command | Purge stuck open adds unmetered vapour | | Injector pulse width | Is the ECM already commanding long pulses? |

How trims change with RPM/load is the key insight: vacuum leaks dominate at idle (high vacuum pulls air), fuel delivery dominates under load (high demand), MAF issues show across the range.

Electrical tests

  • MAF signal: compare MAF grams/sec to a known-good value at idle and 2500 RPM.
  • O2 sensor signal: switching around 0.45V at closed-loop idle; stuck low (0.1–0.3V) confirms lean reading.
  • Injector balance: command injectors individually (where supported).
  • Wiring: MAF, O2 heater, injector circuits.

Mechanical tests

  • Smoke test for vacuum leaks — the most decisive test for idle-only lean trims.
  • Propane / carb-cleaner test around intake — idle changes confirm leak location.
  • Fuel pressure test: dead-head and running. Vehicle-specific verified specification required.
  • Injector flow / balance test: restricted injector runs lean on one cylinder.
  • Exhaust leak check ahead of the front O2.

Next-best-test decision logic

  1. Are trims lean at idle only? → Yes: vacuum leak. Smoke/propane test. → No: continue.
  2. Lean under load? → Yes: fuel delivery or MAF. Continue.
  3. MAF plausible vs calculated load? → No: MAF. → Yes: continue.
  4. Fuel pressure within spec? → No: pump/filter/regulator. → Yes: continue.
  5. Exhaust leak ahead of O2? → Yes: fix leak. → No: injectors / O2.

Common diagnostic mistakes

  • Replacing the O2 sensor first — it is almost always telling the truth.
  • Not watching trims at both idle and 2500 RPM.
  • Ignoring EVAP purge stuck open as an unmetered-air source.
  • Overlooking exhaust leaks ahead of the O2 sensor.
  • Clearing the code without confirming which condition set it.

Related DTCs

  • P0172 — System too rich (the opposite fault)
  • P0174 — System too lean (Bank 2) — confirms a whole-engine issue
  • P0300 — random misfire from lean mixture
  • P0170 — fuel trim (manufacturer-specific)

Manufacturer-specific considerations

  • BMW: PCV / oil-separator failures are a major lean-source on N-series; DISA valve leaks; MAF contamination. Vehicle-specific verified specification required.
  • Audi / VW: PCV / oil-pump housing leaks common on EA888; intake-port carbon; HPFP low pressure. Vehicle-specific verified specification required.
  • General: confirm the exhaust is sealed ahead of the front O2 before condemning fuel.

Driveability and safety considerations

  • Lean misfire under load can damage the catalyst and, in extreme cases, the engine.
  • Drive gently to the workshop; avoid sustained high-load operation.
  • A stall in traffic is a safety risk.

Example evidence-driven diagnostic workflow

  1. Complaint: "Rough idle, hesitation, MIL on."
  2. Scan: P0171. STFT +22%, LTFT +18% at idle. At 2500 RPM, trims return to ±3%.
  3. Hypothesis: idle-only lean → unmetered air (vacuum leak).
  4. Test 1 — Smoke test: smoke drawn from PCV oil-separator hose. Leak confirmed.
  5. Test 2 — Propane at PCV: idle smooths. Confirms location.
  6. Test 3 — Fuel pressure: within spec (rules out delivery).
  7. Confirmed root cause: PCV oil-separator leak — unmetered air at idle.
  8. Repair: replace PCV.
  9. Verification: STFT/LTFT return to ±5% at idle and load; no code return.

The O2 sensor was never replaced — it was correctly reporting a lean condition the engine was actually experiencing.

Related DTCs

Diagnosing this fault on a real vehicle?

Start a MechanIQ diagnosis — import your scan data and let the evidence engine find the next best test.