What is Short Term Fuel Trim (STFT)? Normal Range, Real OBD2 Data and When to Worry
Short term fuel trim (STFT) is the percentage your car’s ECU adjusts fuel delivery in real time, based on what the oxygen sensor reads. Close to 0% is healthy. Large positive means it’s adding fuel. Large negative means it’s removing it.
If you’ve just seen a number like -12.5% or +8% and don’t know whether to panic — this article explains exactly what it means. All readings used here are real OBD2 data captured from a Skoda Rapid 1.0 TSI 110ps on a stage 1 remap using Car Scanner ELM OBD2 app, across three conditions: cold start, warm idle at 90°C, and a 2nd gear pull under boost. No active fault codes. Real screenshots, shown exactly as they appeared.
What is Short Term Fuel Trim (STFT)?
Your car’s computer (called the ECU) is constantly trying to keep that mix perfect. It has a base recipe — a fuel map — that tells it how much fuel to inject at any given moment. But conditions change. The weather changes. The engine wears slightly. So the ECU doesn’t just follow the recipe blindly. It watches the result of each combustion event through an oxygen sensor in the exhaust, and keeps adjusting.
Short term fuel trim is that live adjustment — expressed as a percentage.
Simple version: Think of STFT like a chef tasting soup while cooking. The recipe says one teaspoon of salt — but they taste it and add a pinch more, or hold back slightly. STFT is that pinch. Positive = adding more fuel. Negative = using less fuel. Zero = the recipe was spot on.
The ECU reads a sensor called the upstream oxygen sensor (O2S1) — positioned in the exhaust before the catalytic converter — to make these adjustments. When that sensor detects too much oxygen in the exhaust (meaning not enough fuel was burned), STFT goes positive. When it detects too little oxygen (too much fuel burned), STFT goes negative.
This loop runs dozens of times per second while the engine is at normal operating temperature.
STFT vs LTFT — What’s the Difference?
On your OBD scanner you’ll almost always see two fuel trim numbers: STFT (Short Term Fuel Trim) and LTFT (Long Term Fuel Trim). They work together but do different things.
STFT reacts instantly — changing several times per second in response to what’s happening right now.
LTFT is slower and smarter. It’s the ECU’s memory. If STFT keeps being pushed in the same direction for days on end, the ECU thinks “something has changed permanently, I need to adjust my baseline.” It shifts LTFT to absorb that correction, freeing STFT to return closer to zero.
Analogy: STFT is turning the heating up because the room feels cold right now. LTFT is calling a plumber and adjusting the boiler setpoint because the room is always cold. STFT reacts to the moment. LTFT adapts to the pattern.
For diagnosis, the number that matters most is STFT + LTFT combined. If both are positive and add up to more than +10%, your engine is running lean and something needs attention. If both are negative and add up past -10%, it’s running rich.
| Combined STFT + LTFT | What it means | Action |
|---|---|---|
| 0% to ±5% | Healthy — normal range | Nothing needed |
| ±5% to ±10% | Borderline — worth monitoring | Keep an eye on it |
| ±10% to ±25% | Problem present | Investigate the cause |
| Above ±25% | ECU at its limit | Fault code likely set or imminent |
Normal STFT Range — Quick Reference
| Condition | Normal STFT range | Normal combined STFT + LTFT |
|---|---|---|
| Cold start (first 60 seconds) | -15% to -5% — open loop, normal | Not meaningful at cold start |
| Warm idle (closed loop) | -5% to +5% | -10% to +10% |
| Light cruise 30–50 mph | -5% to +5% | -10% to +10% |
| Hard acceleration / WOT | Variable — partially open loop | Less meaningful; use idle/cruise instead |
Open Loop vs Closed Loop — Why STFT Sometimes Stops Working
Here’s something most articles skip over — STFT doesn’t always work. There are situations where the ECU stops using oxygen sensor feedback entirely and just follows the fuel map on its own. This is called open-loop mode.
When the ECU is actively using the oxygen sensor to fine-tune fuelling in real time, that’s closed-loop mode — this is when STFT is active and meaningful.
Analogy: Closed loop is driving with your eyes open — you see the road and adjust constantly. Open loop is driving with a blindfold, following a pre-memorised route. You’re still moving, but you can’t react to what’s actually happening.
Your engine runs in open loop in two main situations:
- Cold start — the oxygen sensor needs to reach around 300°C before it gives accurate readings. Until then, the ECU follows the fuel map and enriches the mixture heavily to help the cold engine fire reliably.
- Hard acceleration / wide-open throttle — under heavy load, the ECU switches to open loop to prioritise power and protect the engine from knocking. It follows a pre-set rich target rather than chasing the oxygen sensor signal.
This is critical to understand when reading your scanner. STFT during cold start or wide-open throttle tells you far less than STFT at warm, steady idle. The big scary number you saw right after starting? That’s open-loop enrichment doing exactly what it should.
Real OBD Data — What Normal Actually Looks Like on a 1.0 TSI
Rather than just giving you textbook numbers, here’s what a healthy engine actually reads across three real driving conditions.
Cold Start — Why -12.5% STFT Is Not a Problem

| Parameter | Reading | What it means |
|---|---|---|
| STFT B1 | -12.5% | ECU cutting fuel — engine running rich deliberately |
| LTFT B1 | +3.13% | Long-term correction carried over from previous drives |
| O2S1 voltage | 0.68V | Upstream sensor active — already reading rich exhaust |
| O2S2 voltage | 0.25V | Downstream sensor — catalyst still warming up |
| Calculated boost | -3.63 psi | Slight vacuum — very low load at startup |
| MAP | 10.59 psi | Normal manifold pressure for cold idle |
A -12.5% STFT at cold start is completely normal, and one of the most misunderstood readings people find on their scanners.
Here’s what’s happening: petrol doesn’t vaporise well when it’s cold. Some of it clings to the cold metal walls of the intake instead of reaching the combustion chamber as a proper mist. To compensate, the ECU deliberately injects extra fuel — knowing some will be wasted — so there’s enough in the right form to ignite reliably.
Key point: If you see a large negative STFT within the first minute of starting a cold engine, that is the system working correctly — not a fault. Only worry if that large negative STFT is still present 10+ minutes into driving with a fully warm engine.
Warm Idle at 90°C — The Reading That Actually Matters

| Parameter | Reading | What it means |
|---|---|---|
| STFT B1 | -2.34% | Small active correction — engine slightly rich at idle |
| LTFT B1 | -5.47% | ECU has learned this engine runs rich at idle; permanently trimming |
| O2S1 voltage | 0.12V | Pre-cat sensor just read lean after the ECU corrected rich |
| O2S2 voltage | 0.62V | Post-cat at working temp — catalyst functioning normally |
| Calculated boost | -9.72 psi | Healthy vacuum at closed-throttle idle |
| MAP | 4.5 psi | Low manifold pressure — correct for warm idle |
Here both STFT (-2.34%) and LTFT (-5.47%) are negative, giving a combined trim of -7.81%. The engine is running slightly rich at idle and the ECU is compensating. This is within acceptable range but on the rich side.
Notice something interesting: the LTFT is -5.47% here at idle, but +3.13% in the cold start and acceleration logs. Doesn’t that seem contradictory?
It’s actually completely normal — and something almost no article explains. Modern ECUs don’t store one single LTFT number. They store a grid of learned corrections for different combinations of engine load and RPM. The ECU applies the right correction for whichever operating point you’re in. So your LTFT at idle can be negative while your LTFT at motorway cruise is positive. They’re separate learned values for separate conditions.
The downstream O2S2 at 0.62V is also reassuring — it shows the catalytic converter is at working temperature and processing exhaust properly.
What to watch for: If your LTFT is consistently more negative than -10% at warm idle, check the EVAP purge valve first (more on this below). If it’s consistently more positive than +10%, a vacuum or boost leak is the first place to look.
2nd Gear Acceleration Under Boost — Why STFT Behaves Differently

| Parameter | Reading | What it means |
|---|---|---|
| STFT B1 | -1.56% | Small correction — ECU still managing mixture under boost |
| LTFT B1 | +3.13% | Load-cell correction for this RPM/load combination |
| O2S1 voltage | 0.07V | Very low — sensor reading lean momentarily under hard pull |
| Calculated boost | +21.9 psi | Turbocharger on boost — significant positive pressure |
| MAP | 36.11 psi | High manifold pressure under acceleration |
| Fuel/Air ratio | 14.63 | Very close to ideal (14.7:1 is stoichiometric) |
Under hard acceleration, the engine transitions into partial open-loop mode. The ECU stops relying purely on the oxygen sensor and follows its pre-mapped fuelling targets. At 21.9 psi of boost, this is exactly what you want — the ECU is protecting the engine from detonation by holding the mixture to a safe pre-set target.
The fuel/air ratio of 14.63 is essentially perfect (stoichiometric is 14.7:1). The tight -1.56% STFT at nearly 22 psi of boost shows this engine’s fuelling is well-calibrated. This car is running a stage 1 remap with elevated boost targets — the fact that STFT stays within -1.56% at 21.9 psi is a good sign the fuelling map has been set up correctly by the tuner.
Stage 1 Remap and STFT — What to Expect
If you’ve had your car remapped, this section is for you — and unlike most guides, the OBD data in this article was actually captured from my stage 1 remapped skoda rapid 1.0 TSI, so the readings you’re seeing throughout are what a healthy remapped engine actually looks like in normal use
Here’s what typically changes:
- LTFT will reset and relearn. The new map has different fuelling targets, so all the learned LTFT corrections from before are no longer relevant. The ECU starts learning from scratch. Expect STFT to be slightly more active in the first few hundred miles as LTFT builds back up.
- STFT under boost should be tight on a good remap. A well-calibrated remap has accurate fuelling for your specific engine build. STFT should stay close to zero under boost. Large corrections (above ±5%) at high load after a remap are worth flagging to your tuner.
If you’ve recently been remapped and STFT is consistently above ±5% under boost: log the data and share it with your tuner. It may mean the fuelling targets need a small correction, or a hardware issue like a boost leak has appeared since the remap.
What Causes Abnormal STFT Readings?
If your warm-idle combined STFT + LTFT is outside the ±10% zone, here’s how to think about what’s causing it.
Large positive STFT/LTFT (engine running lean)
The ECU is adding fuel because something is causing a lean condition — not enough fuel reaching combustion, or too much unmetered air getting in.
| Symptom pattern | Most likely cause | Check this first |
|---|---|---|
| High at idle only, normal at cruise | Small vacuum leak near idle circuit | Inspect intake hoses and PCV system |
| High at all loads and RPMs | MAF sensor underreporting or fuel delivery issue | Clean or replace MAF; check fuel pressure |
| High under boost only | Boost leak after the MAF sensor | Inspect intercooler pipes, couplers and clamps |
| Appeared suddenly | Intake hose split or disconnected | Visual inspection of all intake pipes |
Large negative STFT/LTFT (engine running rich)
The ECU is removing fuel because something is adding fuel beyond what it commanded, or a sensor is giving it false information.
| Symptom pattern | Most likely cause | Check this first |
|---|---|---|
| Negative at idle, normal at cruise | EVAP purge valve passing vapour at idle | Disconnect purge hose briefly and retest |
| Negative at all loads | Leaking injector or high fuel pressure | Check injector leak-off, fuel pressure at idle |
| Negative since engine work | Coolant temp sensor fault — ECU thinks it’s colder | Check coolant sensor reading vs actual temp |
| Gradual drift negative over months | Oil consumption via PCV into intake | Check PCV system, look for oil residue in intake |
The EVAP Purge Valve — The Most Missed Cause of Rich Idle Trim
Your car has an evaporative emissions system (EVAP) that captures fuel vapour from the fuel tank instead of letting it vent to the atmosphere. That vapour gets stored in a charcoal canister and then purged into the intake to be burned during normal driving. This is controlled by a valve called the EVAP purge solenoid.
At idle, this valve should be mostly closed. If it sticks open or passes too much vapour at idle, the engine gets a dose of extra fuel it didn’t ask for. The ECU sees the oxygen sensor go rich and immediately pulls STFT negative. You’ll see a large negative STFT at idle that improves as RPM rises — because at higher loads, the extra vapour is a smaller proportion of the total fuel being burned.
Quick DIY test: With the engine at warm idle and STFT reading negative, locate the EVAP purge hose (usually runs from the charcoal canister to the intake) and briefly pinch it closed. If STFT immediately moves toward zero, the EVAP purge valve is your culprit.
Don’t leave the hose disconnected while driving — this is a diagnostic test only.
When and How to Clear Fuel Trim Adaptive Memory
After fixing whatever caused abnormal trims, reset the LTFT so the ECU starts learning fresh from the correct baseline.
How to clear adaptive memory:
- With an OBD scanner — most have a “reset adaptations” or “clear fuel trim” option in the live data or special functions menu
- Without a scanner — disconnect the negative battery terminal for 10–15 minutes (this also resets radio presets and the ECU may need to relearn idle speed on some cars)
What to expect after a reset:
- LTFT returns to 0% and STFT becomes more active — the ECU has no learned corrections to rely on yet
- Slightly rougher idle or hesitation for the first few minutes is normal
- Within 10–20 minutes of normal driving, LTFT will start building back up
- If STFT immediately drifts hard in the same direction again, the underlying cause is still present
Use this as a diagnostic tool: After any repair that could affect fuelling — new MAF, fixed vacuum leak, replaced injector — clear adaptations and watch STFT for the next 20 minutes. If it settles near zero, the fix worked. If it immediately pulls hard in one direction, keep investigating.
How to Read Short Term Fuel Trim Properly — Step by Step
Most people check STFT the wrong way. They glance at whatever number is showing and either panic or shrug. Here’s the right process:
- Warm the engine fully. Drive for at least 10 minutes. If you’re not sure how to connect your scanner or which app to use, read our guide on how to scan your car with an OBD2 adapter first — then come back here.
- Sit at warm idle for 2–3 minutes. Watch STFT — don’t just glance at one number. A healthy engine will have STFT hovering between -3% and +3%, switching direction regularly as the oxygen sensor cycles.
- Note LTFT at the same time and add the two together — that combined figure is your real health indicator. Also watch O2S1 switching: a healthy sensor alternates between 0.1V and 0.9V multiple times per second. Stuck at one value? The sensor itself may be faulty.
- Take a cruise reading. Drive at steady 40–50 mph and check again. Idle fine but cruise goes large-positive? Think load-related issues like a boost leak. Large-positive at idle but fine at cruise? Think small vacuum leak near the idle circuit.
- Never judge by cold-start readings. Anything captured in the first 2 minutes after a cold start is open-loop and not diagnostic.
Fault Codes Linked to Fuel Trim Problems
If trims have been out of range long enough, the ECU will set a fault code. Here are the most common:
| Fault code | Description | Direction |
|---|---|---|
| P0171 | System too lean — Bank 1 | LTFT pushed too positive |
| P0172 | System too rich — Bank 1 | LTFT pushed too negative |
| P0174 | System too lean — Bank 2 | LTFT too positive on Bank 2 |
| P0175 | System too rich — Bank 2 | LTFT too negative on Bank 2 |
These codes tell you the direction and which bank — not the cause. Always read live STFT/LTFT data alongside any of these codes before replacing parts.
Got one of these fault codes on your scanner? Look up P0171, P0172, P0174 or P0175 in our OBD2 Fault Code Lookup Tool — plain English causes, safe to drive rating, VAG specific notes, and repair costs for India, UK and US.
Next Steps — Check Your Fuel Trims Today
Check your fuel trims before your next drive. All you need is a Bluetooth OBD2 adapter and a free app like Torque or OBD Fusion. Warm the car up fully, idle for two minutes, and watch the combined STFT + LTFT number. Within ±10% — you’re fine. Outside it — you now know where to look.
If you’re remapped and seeing unusual trims under boost, read our Stage 1 Remap Before and After guide.
If you have a P0171 or P0172 code alongside bad trims, don’t clear it without fixing the cause first — the trim data is your roadmap.
Last Updated: March 2026
FAQs
At warm idle, STFT should sit between -5% and +5%. What matters more is STFT + LTFT combined — keep that within ±10% and your fuelling system is healthy.
That’s normal. STFT is supposed to oscillate as the oxygen sensor cycles. The concern is if it’s consistently pushed to one side — hovering between +7% and +12% without crossing zero means lean. Bouncing between -8% and -12% means rich.
If combined trims are between ±10% and ±20%, the car will drive but fuel economy suffers. Beyond ±25% you risk rough running and catalytic converter damage. Get it diagnosed before any long journey.
Nothing bad. The ECU deliberately enriches the mixture when the engine is cold because petrol doesn’t atomise well at low temperatures. It self-corrects within 60 seconds. Only worry if it’s still large negative after 10 minutes of warm driving.
Because modern ECUs store separate learned corrections for different load and RPM conditions. A negative LTFT at idle and positive at cruise on the same engine is completely normal.
P0171 (too lean, Bank 1), P0172 (too rich, Bank 1), P0174 (too lean, Bank 2), P0175 (too rich, Bank 2). These tell you the direction — the live trim data tells you the cause. Never replace parts based on the code alone.

Founder of TheCarLane | Automotive Enthusiast
Ayush shares practical automotive knowledge based on real-world ownership and hands-on experience. His work focuses on diagnostics, engine systems, common car problems, and clear explanations that help everyday drivers understand their vehicles better.
