OBD-II fault codes
What a diagnostic trouble code means, what usually causes it, and how others fixed it. A code describes a condition the control module detected — not a guaranteed failed part.
Browse by system
Frequently searched codes
- P0087 Fuel Rail/System Pressure - Too Low
- P0101 Mass or Volume Air Flow Sensor A Circuit Range/Performance
- P0102 Mass or Volume Air Flow Sensor A Circuit Low
- P0113 Intake Air Temperature Sensor 1 Circuit High Bank 1
- P0128 Coolant Thermostat (Coolant Temperature Below Thermostat Regulating Temperature)
- P0135 O2 Sensor Heater Circuit Bank 1 Sensor 1
- P0141 O2 Sensor Heater Circuit Bank 1 Sensor 2
- P0171 System Too Lean Bank 1
- P0172 System Too Rich Bank 1
- P0174 System Too Lean Bank 2
- P0299 Turbocharger/Supercharger A Underboost Condition
- P0300 Random/Multiple Cylinder Misfire Detected
- P0301 Cylinder 1 Misfire Detected
- P0302 Cylinder 2 Misfire Detected
- P0401 EGR A Flow Insufficient Detected
- P0420 Catalyst System Efficiency Below Threshold Bank 1
- P0430 Catalyst System Efficiency Below Threshold Bank 2
- P0440 EVAP System
- P0442 EVAP System Leak Detected (small leak)
- P0446 EVAP System Vent Control Circuit
- P0455 EVAP System Leak Detected - Large Leak
- P0456 EVAP System Leak Detected (very small leak)
- P0496 EVAP System High Purge Flow
- P0507 Idle Control System RPM - Higher Than Expected
- P0700 Transmission Control System (MIL Request)
- P2002 Diesel Particulate Filter Efficiency Below Threshold (Bank 1)
- P2096 Post Catalyst Fuel Trim System Too Lean (Bank 1)
- P2097 Post Catalyst Fuel Trim System Too Rich (Bank 1)
- U0100 Lost Communication with ECM/PCM "A"
- U0140 Lost Communication with Body Control Module
How to read a fault code
- First letter
- P powertrain (engine, transmission), B body (airbags, comfort), C chassis (brakes, steering, suspension), U network communication between modules.
- Second character
- Which allocation the code belongs to: standardized (for example P0, P2, U0) or manufacturer-defined (for example P1). Manufacturer-defined codes can mean different things on different makes.
- Last three characters
- The subsystem and the specific fault, written in hexadecimal (0–9 and A–F).
Definitions come from the open OBDex dataset (CC0) and follow SAE J2012. Always confirm the diagnosis with the manufacturer's service information before replacing parts.