P2A00
O2 Sensor Circuit Range/Performance (Bank 1 Sensor 1)
- Severity
- Medium
- Driving
- Drivable — book it in
The upstream oxygen sensor on bank 1, sensor 1, is producing a signal inside its valid range that does not behave the way a healthy sensor should. It is not shorted or open - it answers - but it responds too slowly, swings too little, or sits at a value that does not match what the engine is doing. A lazy upstream sensor is worse than a dead one in one specific way: the module goes on trusting it, and fuels the engine on what it says.
Possible causes
- CommonSensor aged and slowed by normal service life
- CommonContamination - silicone from the wrong sealant, coolant, or oil from a worn engine
- CommonExhaust leak near the sensor upsetting what it samples
- CommonHeater circuit fault leaving the sensor below its working temperature
- PossibleCorroded connector or chafed wiring in the sensor harness
- PossibleGenuine fuelling fault the sensor is correctly reporting
What you might notice
- Poor fuel economy
- Hesitation, surging or rough idle
- Failed emissions test
- Catalyst efficiency codes appearing later, as the converter suffers for it
- Check engine light on
What to check, in order
- Watch the sensor's live signal rather than trusting the code. An upstream sensor should swing briskly and continuously once warm; one that drifts slowly or hovers near the middle is lazy, and that is what this code is describing.
- Compare the two banks on a V engine. One sensor keeping up while its opposite number does not is a much stronger case than either reading on its own.
- Check the heater circuit and its fuse. A sensor that never reaches operating temperature cannot respond quickly, and the fault is then the heater rather than the sensor element.
- Look for an exhaust leak near the sensor before condemning it, with the engine cold.
- Check the fuel trims. Large trims alongside this code suggest the sensor is reporting a real fuelling problem rather than failing.
- Ask what sealant was used if any engine work was recently done. Silicone that is not sensor-safe poisons oxygen sensors, and it kills replacements just as quickly.
Read this code from your own car
Plug an ELM327 adapter into the OBD-II port under the dashboard. Pin16 reads every stored, pending and permanent code, explains each one like this page does — offline, with no account — and shows what the car recorded when the fault was set.
Where this code sits
P00xxP01xxP02xxP03xxP04xxP05xxP06xxP07xxP08xxP09xxP0AxxP0BxxP0CxxP0DxxP0ExxP0FxxP10xxP11xxP12xxP13xxP14xxP15xxP16xxP17xxP18xxP19xxP1AxxP1BxxP1CxxP1DxxP1ExxP1FxxP20xxP21xxP22xxP23xxP24xxP25xxP26xxP27xxP28xxP29xxP2AxxP2BxxP2CxxP2DxxP2ExxP2FxxP30xxP31xxP32xxP33xxP34xxP35xxP36xxP37xxP38xxP39xxP3AxxP3BxxP3CxxP3DxxP3ExxP3Fxx