So your car's CEL (Check Engine Light) is on and you had the codes scanned at a local parts store. Your car has either a P0171, P0174 lean fault code or both stored in the computer, these codes are based on Oxygen Sensor (O-2) readings. A lean code or codes indicate that there's too much oxygen in the exhaust. Remember parts stores have employees that have good intentions but they may not have the experience necessary to interpret what the trouble codes really mean. These codes are based on oxygen measurements in the exhaust. A common mistake with lean codes is to replace the oxygen sensors. This could be a very expensive mistake that will not fix the problem. Especially if both codes are present, because the chance of both O-2 sensors failing at the same time is very unlikely.
Most likely the cause is a vacuum leak. A vacuum leak can be caused from a vacuum hose, intake gasket or maybe even a leak in the air intake hose from the MAF (Mass Air Flow Sensor). Listen for a hissing sound that may lead you to the source of the problem. Some technicians will use a propane bottle with a hose attachment to help pinpoint vacuum leaks. With today's computers it's not quite as easy to check for vacuum leaks this way because the ECU (Electronic Control Unit) will compensate quickly for the added fuel and a change in idle is harder to notice. Oxygen sensor readings can be monitored with a scan tool while checking for leaks with propane, by looking for increased readings when enriching the mixture. Another way technicians can check for vacuum leaks is with a smoke test. By introducing smoke into a vacuum hose on the engine, the leak will be revealed when the smoke escapes from the problem area.
Aftermarket air filters that use oil on the element can sometimes damage the MAF. Over oiling the air filter may allow some excess to get on the MAF sensor wire or element. This can alter the reading, fooling the ECU into seeing more or less air flow therefore changing the air/fuel mixture incorrectly. I once worked on a car that would not start that had a problem with a MAF. When looking at the wire in the MAF, there was a burned piece of trash that made it's way past the air filter. After cleaning the sensor the car ran perfectly. The ash that was on the MAF sensor wire was altering the reading by enriching the mixture so much that the car could not run. After talking with the customer, he said the air filter was just changed. This was obviously when some trash got into the air intake hose that settled on the hot wire of the MAF.
Fuel Pressure could also cause a lean condition. If the fuel filter is clogged or the fuel pump pressure is low, there could be higher level of oxygen in the exhaust also. Most of the time though, the ECU will compensate for the reduced fuel volume. So this is one of the least likely causes of a lean code.