[1999 4Runner, 6-cylinder 5VZ engine. Not supercharged.]

  • STFT1: Short Term Fuel Trim, bank 1
  • LTFT1: Long Term Fuel Trim, bank 1

While trying to diagnose a P0171, I decided to observe my fuel trims to get a feel for how they relate to what I'm doing, and how they relate to each other.

When idling (w/ AC compressor off,) my LTFT1 sits rock-steady at 0.8, and STFT1 slowly hunts around between -3 and +3.

But while driving at e.g. 40mph, if I accelerate any amount at all, LTFT1 will immediately spike up into the mid-to-high +20s. STFT1 will also increase , but not as high as LTFT1.

I had thought that long-term fuel trim was the average of a bunch of prior instantaneous (short-term) fuel trim values. But it seems now like that can't be right, otherwise it would not change faster than STFT1.

If it is not a running average, what is it?

  • What is the, make, model, year, and engine of the car? – GdD Aug 6 '18 at 8:19
  • Possible to make this posting a bit more useful to others by explaining all abbreviations When First Used (WFU) ? What's a LTFT1? A STFT1? Many thanks. – zipzit Aug 6 '18 at 8:39
  • Stft is on the fly corrections, ltft is a learned value that is probably manufacturer specific. Ltft is probably stored as a map v load (probably others as well) table. In your case either the maf afr/o2s or fuel pressure may be at fault. Since at idle the fuel trims look normal. – Ben Aug 6 '18 at 12:55
  • @GdD &zipit done – Ryan V. Bissell Aug 6 '18 at 16:39
  • @Ben I've cleaned my MAF, measured it for correct operation according to shop manual, and changed out my 19 year-old fuel filter. I guess my next item will be testing the O2 sensors. But this question was just about understanding LTFT1, as compared to STFT1 – Ryan V. Bissell Aug 6 '18 at 16:41

Long term fuel trims are stored values in this model. These are stored for various engine load ranges. They are changed when the short term trims exceed predetermined limits, then the new values are stored. There will be upwards of 20-30 different LTFT load cells stored for various speed and load ranges. These will change in scan data as you move the engine through its power ranges. The values will return to normal after repairs are complete. Each load cell has to be used long enough for the STFT to modify the LTFT in that cell.

Newer engines use a faster algorithm that calculates fuel mixture in real time not the read-use-modify feedback loop used in the older engines.

  • Your answer fits my observations perfectly, and was what I was starting to suspect based on @Ben's comment to my question. Thanks! – Ryan V. Bissell Aug 7 '18 at 15:23
  • Question, should "Each load cell has be used" read "... been used", or "... to be used"? – Ryan V. Bissell Aug 7 '18 at 15:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.