Home › OBD2 Codes

OBD2 Codes List — Complete Diagnostic Guide

Plain English explanations for every common check engine light code. Find your code, understand the cause, and fix it yourself or know what to expect at the shop.

20 codes covered
7 system categories
DIY cost estimates for every code
Free AI diagnosis available
Run a free AI diagnosis →
Misfire & Ignition
Engine misfires, ignition coil and spark plug failures
Fuel & Air Mixture
Lean/rich mixture faults, O2-based fuel trim corrections
💨
EVAP / Emissions
Evaporative emission control system leaks and vent faults
🔬
Oxygen Sensor
Upstream and downstream O2 sensor circuit faults
🔩
Catalyst System
Catalytic converter efficiency faults (Bank 1 & Bank 2)
🌡️
EGR / Thermostat
Exhaust gas recirculation and coolant temperature regulation
🎛️
Idle & Sensors
Idle speed control, camshaft/knock/speed sensor circuit faults

Don't see your code?

WrenchAI's AI can diagnose any OBD2 code — enter it and get causes, a DIY fix path, and exact parts for your year/make/model.

Diagnose any code free →

Get the Free OBD2 Quick Reference Guide

The 5 most common check engine codes — causes, DIY fixes, and repair costs — delivered to your inbox.

Frequently Asked Questions About OBD2 Codes

What are OBD2 codes?
OBD2 (On-Board Diagnostics II) codes are standardized diagnostic trouble codes (DTCs) that your car's computer stores when it detects a problem. They're read with an OBD2 scanner plugged into the 16-pin port under your dashboard. Every car sold in the US after 1996 is required to support OBD2. The codes follow a pattern: P (Powertrain), B (Body), C (Chassis), or U (Network), followed by 4 digits that identify the specific fault.
How do I read my check engine light code?
You need an OBD2 scanner — a handheld device or Bluetooth adapter that plugs into your car's OBD2 port (usually under the dashboard on the driver's side). Plug in the scanner, turn the ignition to "on" (don't start the engine), and it will read any stored trouble codes. You can also use WrenchAI's free AI diagnosis tool: enter your code and get an instant breakdown of causes, fixes, and repair costs.
What's the difference between P0, P1, P2, and P3 codes?
The second digit in an OBD2 code tells you who defined it: P0 codes are generic/global codes defined by SAE and used by all manufacturers — they're the most common and well-documented. P1 codes are manufacturer-specific (each automaker defines their own P1xxx codes for proprietary systems). P2 codes are generic codes that were added in later OBD2 expansions. P3 codes are also manufacturer-specific. When in doubt, start with P0 codes — they're standardized and apply across all makes and models.
Can I drive with a check engine light on?
It depends on whether the light is steady or flashing. A steady check engine light means a fault was detected — the car is drivable for short distances but you should diagnose it soon. A flashing check engine light is an emergency: it means your engine is misfiring severely enough to damage your catalytic converter within minutes. Pull over safely and don't drive further until the fault is fixed. Ignoring a flashing CEL can turn a $60 spark plug replacement into a $1,500 catalytic converter job.