OBD2 Fault Code Dictionary: Common P-Codes Explained (UK)

When the engine warning light comes on, an OBD2 scanner reads a five-character fault code that tells you which system is unhappy. This dictionary explains the most common generic P0XXX powertrain codes in plain English, with the likely causes and the parts worth checking. Codes here are generic (defined by the standard) and apply across makes, though always confirm against your vehicle before buying.
How to read an OBD2 code
Every code has the format P0171: the letter is the system (P = powertrain, B = body, C = chassis, U = network); the first digit shows whether it is generic (0) or manufacturer-specific (1); and the remaining digits identify the fault. A code points you to a circuit or symptom, not always the failed part — diagnosis still matters. To pull codes you need a scanner; see our OBD2 scanners range for handheld and Bluetooth options.
Common generic P-codes reference table
| Code | Meaning | Likely causes | Parts to check |
|---|---|---|---|
| P0010 | Camshaft position actuator circuit (Bank 1) | VVT solenoid fault, low oil pressure, wiring | Camshaft actuator/VVT solenoid, wiring |
| P0011 | Camshaft position timing over-advanced (Bank 1) | Stuck VVT solenoid, timing error | VVT solenoid, timing chain/tensioner |
| P0016 | Crankshaft/camshaft position correlation (Bank 1) | Stretched timing chain, sensor fault | Timing chain, cam/crank sensors |
| P0030 | HO2S heater control circuit (Bank 1 Sensor 1) | Failed oxygen sensor heater, wiring, fuse | Upstream lambda sensor, fuse |
| P0101 | Mass air flow circuit range/performance | Dirty or faulty MAF, air leak | MAF sensor, air filter, intake hoses |
| P0102 | MAF circuit low input | Sensor fault, wiring, blocked filter | MAF sensor, wiring |
| P0113 | Intake air temperature sensor high input | Faulty IAT sensor, open circuit | IAT sensor, wiring |
| P0118 | Engine coolant temperature sensor high input | Faulty ECT sensor, wiring | Coolant temperature sensor |
| P0128 | Coolant temperature below thermostat regulating temp | Thermostat stuck open, faulty ECT sensor | Thermostat, coolant temperature sensor |
| P0131 | O2 sensor circuit low voltage (Bank 1 Sensor 1) | Lean condition, failed sensor, wiring | Upstream lambda sensor |
| P0133 | O2 sensor slow response (Bank 1 Sensor 1) | Ageing/contaminated sensor | Upstream lambda sensor |
| P0134 | O2 sensor no activity (Bank 1 Sensor 1) | Dead sensor, broken wiring | Upstream lambda sensor, wiring |
| P0171 | System too lean (Bank 1) | Vacuum/air leak, weak fuel pump, dirty MAF | Intake hoses, MAF, fuel pump, lambda sensor |
| P0172 | System too rich (Bank 1) | Leaking injector, faulty MAF, high fuel pressure | Injectors, MAF, fuel pressure regulator |
| P0174 | System too lean (Bank 2) | Air leak, weak fuel delivery | Intake hoses, MAF, fuel pump |
| P0300 | Random/multiple cylinder misfire | Worn plugs/coils, vacuum leak, fuel issue | Spark plugs, ignition coils, injectors |
| P0301 | Cylinder 1 misfire | Plug, coil or injector on cyl 1 | Spark plug, coil, injector (cyl 1) |
| P0302 | Cylinder 2 misfire | Plug, coil or injector on cyl 2 | Spark plug, coil, injector (cyl 2) |
| P0303 | Cylinder 3 misfire | Plug, coil or injector on cyl 3 | Spark plug, coil, injector (cyl 3) |
| P0304 | Cylinder 4 misfire | Plug, coil or injector on cyl 4 | Spark plug, coil, injector (cyl 4) |
| P0305 | Cylinder 5 misfire | Plug, coil or injector on cyl 5 | Spark plug, coil, injector (cyl 5) |
| P0306 | Cylinder 6 misfire | Plug, coil or injector on cyl 6 | Spark plug, coil, injector (cyl 6) |
| P0307 | Cylinder 7 misfire | Plug, coil or injector on cyl 7 | Spark plug, coil, injector (cyl 7) |
| P0308 | Cylinder 8 misfire | Plug, coil or injector on cyl 8 | Spark plug, coil, injector (cyl 8) |
| P0325 | Knock sensor circuit (Bank 1) | Faulty knock sensor, wiring | Knock sensor, wiring |
| P0335 | Crankshaft position sensor circuit | Failed sensor, damaged reluctor ring, wiring | Crankshaft position sensor |
| P0340 | Camshaft position sensor circuit | Failed sensor, wiring, timing fault | Camshaft position sensor |
| P0401 | EGR flow insufficient | Blocked EGR valve/passages, faulty valve | EGR valve, EGR passages |
| P0420 | Catalyst efficiency below threshold (Bank 1) | Worn catalytic converter, faulty O2 sensor, exhaust leak | Catalytic converter, downstream lambda sensor |
| P0430 | Catalyst efficiency below threshold (Bank 2) | Worn cat, faulty O2 sensor | Catalytic converter (Bank 2), lambda sensor |
| P0440 | EVAP system fault (general) | Loose/faulty fuel cap, EVAP leak | Fuel filler cap, EVAP hoses, purge valve |
| P0442 | EVAP system small leak detected | Small leak, loose fuel cap | Fuel cap, EVAP lines |
| P0455 | EVAP system large leak detected | Missing/loose fuel cap, split EVAP hose | Fuel filler cap, EVAP hoses, purge/vent valve |
| P0500 | Vehicle speed sensor malfunction | Failed VSS, wiring, ABS fault | Vehicle speed sensor, wiring |
How to use this dictionary
Pull the code, look it up above, then work from the most likely cause first. For misfires (P0300-P0308) the cheapest checks come first: inspect and replace worn spark plugs and ignition coils before suspecting injectors. A P0171 lean code is most often a vacuum or intake leak rather than a failed sensor, so check hoses before spending on parts. Catalyst codes like P0420 frequently start with a tired downstream lambda sensor or an exhaust leak, not always a new cat.
A note on clearing codes
Clearing a code does not fix the fault — if the cause remains, it will return after a few drive cycles. Always diagnose and repair, then clear and road-test to confirm the light stays off. Some codes (especially EVAP and catalyst monitors) need a full drive cycle to re-run their self-test before they confirm a fix.
Codes are not always engine-related
A warning light can also flag chassis and braking faults. If your scanner shows ABS or brake-related C-codes, or you notice poor stopping performance, inspect and renew your brake pads and discs as part of the same service. A quality OBD2 reader from our scanner range lets you check live data and monitor readiness before an MOT. Use code SAVE10 for 10% off, with tracked UK delivery.
Frequently asked questions
- What does a P-code starting with P0 mean?
- The P means it is a powertrain code and the 0 means it is a generic code defined by the OBD2 standard, so it applies across makes. A first digit of 1 (e.g. P1xxx) means it is manufacturer-specific.
- Is it safe to drive with a P0420 catalytic converter code?
- P0420 usually will not leave you stranded, but it indicates the catalytic converter is no longer cleaning the exhaust efficiently. It will fail an MOT emissions test and can worsen over time, so it should be diagnosed promptly. Check the downstream lambda sensor and exhaust for leaks first.
- Why does my fault code come back after I clear it?
- Clearing a code only resets the warning light; it does not repair the fault. If the underlying problem remains, the code returns after a few drive cycles. Diagnose and fix the cause, then clear the code and road-test to confirm it stays off.



