By Tipontech
Affiliate Disclosure: Tipontech is a participant in the AliExpress Affiliate Program. I may earn a commission when you click through and purchase, at no extra cost to you. I only recommend products I’d trust on my own cars.
Your check engine light just turned on. Before you panic — or before you pay a shop $80 just to plug in a scanner and tell you a three-letter code — here’s what you need to know: most OBD2 codes point to something minor, and once you know what the code means, you can usually judge for yourself whether it’s a “fix this weekend” problem or a “drive straight to the shop” problem.
This guide breaks down the OBD2 codes you’re most likely to actually see, in plain English — what they mean, what usually causes them, and how urgent they really are.
Quick Answer: How to Read Any OBD2 Code
Every OBD2 code is five characters, and the pattern is always the same:
| Position | What it tells you |
|---|---|
| 1st letter | System: P = Powertrain (engine/transmission), B = Body, C = Chassis, U = Network/communication |
| 2nd character | 0 = generic code (same on every car), 1 = manufacturer-specific code |
| 3rd character | Sub-system (e.g., fuel/air metering, ignition, emissions) |
| Last two | The specific fault |
Roughly 90%+ of what a typical driver sees are P0 codes — generic powertrain codes that mean the same thing whether you drive a Toyota or a BMW. That’s the focus of this guide. (If you’re chasing a manufacturer-specific P1 code, my OBD2 vs OBD1 guide and scanner buying guides go deeper into brand-specific tools.)
The 15 Most Common OBD2 Codes
P0300 — Random/Multiple Cylinder Misfire Detected
What it means: The engine is misfiring and the computer can’t pin it to one specific cylinder. Likely causes: Worn spark plugs or ignition coils, a vacuum leak, bad fuel injector, low fuel pressure. How urgent: Moderate to high. A flashing check engine light + misfire means stop driving — unburned fuel can damage your catalytic converter. A steady light with an occasional misfire is safer to drive on, but don’t ignore it for long.
P0301–P0308 — Cylinder-Specific Misfire (Cylinder 1–8)
What it means: Same as P0300, but the computer has isolated it to one cylinder (the number matches the cylinder). Likely causes: A single bad spark plug, coil, or injector on that cylinder — much easier to diagnose than P0300. How urgent: Moderate. Easier fix than a random misfire since you know exactly where to look.
P0171 / P0174 — System Too Lean (Bank 1 / Bank 2)
What it means: The engine is getting too much air relative to fuel. Likely causes: Vacuum leak, dirty mass airflow (MAF) sensor, weak fuel pump, clogged fuel filter. How urgent: Low to moderate. Fine to drive short-term, but a lean condition over time can cause engine damage.
P0420 / P0430 — Catalyst System Efficiency Below Threshold (Bank 1 / Bank 2)
What it means: Your catalytic converter isn’t cleaning exhaust as efficiently as it should. Likely causes: Aging catalytic converter, a failing oxygen sensor giving a false reading, an exhaust leak upstream. How urgent: Low for driveability, but this is an emissions-test failure code — and a real catalytic converter replacement isn’t cheap. Worth diagnosing properly (often it’s a $40 O2 sensor, not a $1,000 catalytic converter) before assuming the worst.
P0128 — Coolant Thermostat (Below Regulating Temperature)
What it means: The engine is taking too long to reach normal operating temperature. Likely causes: Stuck-open thermostat — one of the cheapest, most common fixes on this list. How urgent: Low. Won’t strand you, but hurts fuel economy and heater performance until fixed.
P0442 / P0455 — Evaporative Emission System Leak (Small / Large)
What it means: There’s a leak in the system that captures fuel vapor from your gas tank. Likely causes: #1 cause by far: a loose or cracked gas cap. After that: a cracked EVAP hose or a faulty purge valve. How urgent: Very low. Check your gas cap first — seriously, this fixes it more often than people expect.
P0135 — O2 Sensor Heater Circuit Malfunction (Bank 1, Sensor 1)
What it means: The heating element in your oxygen sensor has failed. Likely causes: A worn-out oxygen sensor (they don’t last forever) or a wiring/connector issue. How urgent: Low to moderate. Affects fuel economy and emissions over time.
P0113 / P0118 — Intake Air Temp / Engine Coolant Temp Sensor Circuit High
What it means: A temperature sensor is sending a signal outside the expected range. Likely causes: Failing sensor or a damaged wire/connector. How urgent: Low, but can affect how the engine computer adjusts fuel mixture — worth fixing for fuel economy.
P0500 — Vehicle Speed Sensor Malfunction
What it means: The computer isn’t getting a reliable signal for how fast the car is moving. Likely causes: Faulty VSS sensor, damaged wiring, sometimes a wheel bearing/ABS sensor issue on newer cars. How urgent: Moderate — can affect transmission shifting and speedometer accuracy.
P0740 — Torque Converter Clutch Circuit Malfunction
What it means: A problem in the automatic transmission’s torque converter lockup system. Likely causes: Low or degraded transmission fluid, a failing solenoid, wiring issue. How urgent: Moderate to high. Transmission-related codes are worth taking seriously — catching it early is much cheaper than a transmission rebuild.
P0011 / P0014 — Camshaft Position Timing Over-Advanced (Bank 1)
What it means: Variable valve timing isn’t hitting its target position. Likely causes: Low oil level or dirty oil (most common), a failing VVT solenoid, timing chain stretch on higher-mileage engines. How urgent: Moderate to high, especially if paired with unusual engine noise. Check your oil level and condition first.
U0100 — Lost Communication with ECM/PCM
What it means: A module in your car has lost contact with the main engine computer. Likely causes: Wiring/connector issue, a blown fuse, sometimes a failing battery or alternator affecting voltage. How urgent: Moderate to high — often comes bundled with other codes and driveability symptoms.
P0016 — Crankshaft/Camshaft Position Correlation
What it means: The timing between the crankshaft and camshaft is off from what the computer expects. Likely causes: Timing chain stretch/wear, a failing timing chain tensioner, incorrect timing after a repair. How urgent: High. This one can lead to real engine damage if ignored — don’t put this off.
P0325 — Knock Sensor Circuit Malfunction
What it means: The sensor that detects engine “knock” (pre-ignition) isn’t reporting correctly. Likely causes: Failed knock sensor, damaged wiring — sometimes just a loose sensor bolt. How urgent: Low to moderate on its own, but it means the computer can’t protect the engine from knock as well as it should.
When a Code Means “Pull Over” vs “Fix It This Weekend”
- Flashing check engine light, any code: Stop driving as soon as it’s safe. This usually means an active misfire that can damage your catalytic converter.
- Steady light + normal driving: Safe to drive to a shop or to grab a scanner and diagnose it yourself, generally within a few days.
- Loss of power, unusual noises, or fluid leaks alongside the light: Don’t wait — get it looked at regardless of what the code says.
How to Actually Read the Code Yourself
You don’t need a shop visit just to find out what the code is. A basic OBD2 scanner plugs into the port under your dashboard (every car sold since 1996 has one) and reads the code directly — most budget scanners cost less than the diagnostic fee a shop charges just to plug one in.
I’ve put together separate guides on picking the right scanner:
- My general AliExpress OBD2 scanner buying guide if you drive a mainstream US/Asian brand
- My best scanner for European cars guide if you drive a BMW, VW, Audi, or Mercedes and need deeper manufacturer-specific access
- If you just want basic engine codes cheaply without committing to a full scanner, a $5-10 Bluetooth ELM327 adapter (like the budget pick in my European guide) is the lowest-cost starting point
Frequently Asked Questions
Will clearing a code make it come back? If the underlying problem isn’t fixed, yes — the code (and the light) will return, usually within a few drive cycles.
Can a code mean more than one thing? The code itself is specific, but the cause often isn’t — P0171 could be a $15 vacuum hose or a $300 fuel pump. That’s why “likely causes” are listed in order of probability, not certainty.
Is it safe to keep driving with the check engine light on? Usually yes, if the light is steady (not flashing) and the car is driving normally. Get it scanned as soon as you reasonably can.
Do I need a mechanic to read the code, or can I do it myself? You can do it yourself in under two minutes with a basic scanner — no mechanical knowledge required to just read the code. Diagnosing and fixing the cause is where experience helps.
Next steps: how to clear OBD2 codes and what a flashing check engine light means.
I’m Avi, a parent, car owner and tech lover who researches AliExpress finds for real driving life – from dash cams and diagnostics tools to the gear that survives a long road trip with kids in the back seat. I spend hours digging through specs, buyer reviews, and automotive forums (and tracking which travel toys parents report actually stay quiet past mile 50) so you don’t have to – and I only recommend what holds up under real buyer scrutiny.
