Code guide

P0171 — system too lean

This code doesn't mean you need a part. It means the computer is adding fuel to keep up with air it didn't account for — and the fuel trims tell you where that air is getting in.

Bank 1 · Fuel & air metering · Generic OBD2 (P0174 is the same fault on Bank 2)

The short version

"System too lean" means the engine computer had to add fuel — a lot of it — to keep the mixture correct, and it ran out of room to compensate. Something is letting in air the computer didn't measure, or not delivering the fuel it asked for.

The useful part is that the pattern of the fuel trims tells you which. Here's the whole diagnosis in one line:

  • Lean at idle, much better at higher RPM → unmetered air getting in. A vacuum leak.
  • Lean everywhere, roughly the same at idle and cruise → the air measurement itself is wrong, or fuel delivery is weak.

That single distinction eliminates most of the possible causes in about two minutes, from the driver's seat, before touching a tool.

Reading codes and watching live sensor data are free in Fixiom — always, no credits and no subscription. Fuel trims are standard live data on effectively every 1996-and-newer vehicle, so this test works on whatever you're driving.

How to read fuel trims

Fuel trim is the computer's own admission of how far off it is. It comes in two numbers, and you want both on screen.

  • Short-term fuel trim (STFT) is the live correction, moving constantly as the oxygen sensor reports back. It bounces around zero — that's normal and healthy.
  • Long-term fuel trim (LTFT) is the learned correction. When the computer notices it's making the same short-term correction over and over, it banks it here so it can start from a better guess. This is the number that matters.

Positive means adding fuel — the computer thinks it's running lean. Negative means pulling fuel out. A healthy engine sits close to zero on long-term trim. Once long-term trim is up around +10% the computer is working noticeably hard, and by the time it's in the low twenties most vehicles will set this code.

Treat those figures as rules of thumb, not a factory specification. The exact threshold where a given vehicle sets P0171 varies by manufacturer, and Fixiom will tell you when it doesn't have a verified figure for your specific vehicle rather than inventing one.

The two-minute test

Park on level ground, transmission in park or neutral, parking brake set. Never run an engine in an enclosed garage.

  • Warm the engine fully and let it settle into a normal idle. Cold-engine trims mean nothing — the computer is running open loop and ignoring the oxygen sensor.
  • Put long-term and short-term fuel trim on screen for Bank 1. In Fixiom they're in the Fuel System group; tap a gauge to chart it so you can watch the trend rather than a twitching number.
  • Note the long-term number at idle. Let it sit for a minute.
  • Now raise engine speed and hold it steady — a fast idle around 2,000 RPM is enough — and watch the long-term number again. Better still, note it on a steady highway cruise where airflow is much higher.

You're comparing one number in two conditions. That comparison is the entire diagnosis.

What each pattern means

High at idle, drops off at speed → a vacuum leak

This is the most common answer, and the reasoning is simple arithmetic. A vacuum leak lets in a roughly fixed amount of extra air. At idle the engine is only breathing a small amount, so that leak is a big percentage of the total and the computer has to compensate hard. At 2,000 RPM the engine is moving far more air, the same leak becomes a small fraction of it, and the trim number falls back toward normal.

Where to look, roughly in order: a cracked or disconnected intake boot between the mass airflow sensor and the throttle body, a brittle PCV hose or a stuck PCV valve, the brake booster hose, intake manifold gaskets, and any of the small vacuum lines that go hard and split with age. Many of these are visible with the hood open and the engine running, and a genuine leak is often audible as a hiss.

High everywhere, idle and cruise alike → measurement or delivery

If the correction doesn't change much with airflow, the problem isn't a fixed-size leak. Two families:

  • The air measurement is wrong. A contaminated mass airflow sensor under-reports how much air is coming in, so the computer under-fuels, the oxygen sensor notices it's lean, and long-term trim climbs to compensate across the whole range. Very common, and the sensor rarely sets a code of its own because nothing is electrically wrong with it — it's just dirty.
  • Fuel delivery can't keep up. A tired fuel pump, a restricted filter, or dirty injectors all mean the computer asks for fuel it doesn't get. On vehicles that report fuel rail pressure as live data, watch it — if it sags when the engine is asked to work, that's a strong signal. Not every vehicle reports it, and Fixiom will only show the reading if yours actually answers.

Other things worth ruling out

  • An exhaust leak ahead of the upstream oxygen sensor. Pulses in the exhaust can draw fresh air in through a leak, and the sensor reads that oxygen as a lean mixture that isn't really there.
  • A stuck-open EVAP purge valve. This one is sneaky — it can throw trims in either direction depending on what's in the charcoal canister at the time, and the symptom often comes and goes.
  • A failing oxygen sensor. Less common than people assume as a cause of this code, but a sensor that reads lean when it isn't will make the computer add fuel it doesn't need.

P0171 vs P0174 — and why both at once matters

P0171 is Bank 1, P0174 is Bank 2. Four-cylinder and inline engines have one bank and can only set P0171. On a V6 or V8, which codes appear is itself diagnostic:

  • One bank only → look for something specific to that side. A leak at that bank's intake gasket, that bank's injectors, that bank's oxygen sensor.
  • Both banks together → look for something the whole engine shares. The mass airflow sensor, fuel pressure, a leak at the plenum or throttle body, or the PCV system. Two independent faults appearing on the same day is far less likely than one shared cause.

Is it safe to drive?

A steady light with P0171 alone usually isn't an emergency, and many vehicles drive normally. But it's worth fixing sooner rather than later for two reasons: a persistently lean mixture runs the engine hotter than intended, and if the condition gets bad enough to cause misfires you're now putting raw fuel through the catalytic converter — which is how a cheap repair becomes an expensive one.

If the check engine light is flashing, that's an active misfire, not a lean-condition warning. Stop driving as soon as you safely can — see what a flashing light means.

What a phone adapter can't see

What it genuinely gives you: the code, freeze frame conditions from when it set, short and long-term fuel trims for both banks live with history, mass airflow readings, oxygen sensor activity, and fuel rail pressure where the vehicle reports it. That's the full data picture a technician would start from.

What it cannot do:

  • Find the leak. A smoke test is the definitive way to locate a vacuum leak, and it needs a smoke machine and a set of hands.
  • Measure actual fuel pressure on vehicles that don't report it — that needs a gauge on the fuel rail.
  • Tell you a mass airflow sensor is dirty. It can show you readings that don't add up, but confirming it means looking at the sensor.
  • Test the injectors. Flow and spray pattern need the injectors out and on a bench.

What the data does do is turn "it's lean, could be a dozen things" into "it's a vacuum leak, go look at the intake boot and the PCV" — which is the difference between a diagnosis and a parts-swapping session.

Common questions

What does P0171 actually mean?+

The engine computer had to add significantly more fuel than expected to keep the mixture correct, and hit the limit of what it can compensate for. Something is letting in air it didn't measure, or fuel delivery is falling short.

Is P0171 caused by a vacuum leak or a MAF sensor?+

Fuel trims tell you. If long-term trim is high at idle and falls back toward normal at higher engine speed, it's a vacuum leak — a fixed-size leak matters less as total airflow rises. If trim stays high at both idle and cruise, look at the mass airflow sensor or fuel delivery instead.

Can I drive with a P0171?+

Usually yes for a while, and many vehicles feel normal. But a lean condition runs the engine hotter than intended, and if it gets bad enough to cause misfires you risk damaging the catalytic converter. A flashing check engine light means stop driving.

What's the difference between P0171 and P0174?+

P0171 is Bank 1, P0174 is Bank 2. Four-cylinder engines only have one bank. If a V6 or V8 sets both together, look for a shared cause — mass airflow, fuel pressure, or a leak at the plenum — rather than two separate faults.

What is a normal fuel trim reading?+

Long-term fuel trim close to zero is healthy. Around ten percent means the computer is working noticeably hard, and most vehicles set a lean code somewhere in the low twenties. Treat those as rules of thumb — the exact threshold varies by manufacturer.

Will a cheap Bluetooth adapter show fuel trims?+

Yes. Short and long-term fuel trims are standard OBD2 live data on effectively every 1996-and-newer vehicle, so any working Bluetooth LE adapter and app can read them. Watching them free in Fixiom is the whole test on this page.

  • P0300 — Random misfire — and the per-cylinder counters that show which one it really is.
  • P0420 — Catalyst efficiency below threshold — the code people get quoted a converter for.
  • Check engine light on — The triage page — how urgent is it, and what to do in what order.

Same code. Three different repairs.

Fuel trims are free live data in Fixiom — always. Watch them at idle and at speed, and the code tells you where to look.

Get the app