Uncover the essential structure of OBD-II codes, providing insight into Powertrain (P), Chassis (C), Body (B), and Network (U) categories, empowering readers to diagnose and resolve automotive issues with precision.



An OBD2 trouble code is a five-character diagnostic message stored when a vehicle control module detects a problem. The first letter identifies the affected area: P for powertrain, B for body, C for chassis, and U for network communication. A code helps you choose the right tests, but it does not automatically prove that the component named in the description has failed. Read all stored codes, save freeze-frame data, inspect the affected system, and confirm the fault before buying parts.
Safety note: Stop driving if the check engine light is flashing, the engine is severely misfiring, oil pressure is low, the vehicle is overheating, or braking and steering behavior changes. This guide supports general diagnosis but does not replace vehicle-specific service information.
Modern vehicles use the second-generation On-Board Diagnostic system, or OBD2, to monitor engine combustion, fuel control, emissions equipment, transmission operation, sensor signals, and communication between electronic modules.
When the system sees a value outside its expected range, it stores a Diagnostic Trouble Code (commonly called a DTC) and illuminates the Check Engine light. The cause may be a loose connector, a small EVAP leak, low system voltage, an abnormal sensor signal, or a mechanical fault. The code narrows the investigation; it is not a final parts diagnosis.
A Check Engine light rarely means catastrophic failure. More often than not, it points to a minor emission fault, a loose gas cap, or a faulty sensor. Unless the light is flashing (which indicates a severe misfire that can damage the catalytic converter), you generally have plenty of time to scan the code and plan your fix.
An OBD2 code is a five-character identifier stored by a control module after a monitored condition meets specific failure criteria. Codes may be generic across many makes or manufacturer-specific for one vehicle family. To retrieve these OBD2 scanner codes, you need a diagnostic tool.
Locate the DLC Port: Find your vehicle's 16-pin Data Link Connector (DLC), usually located underneath the dashboard on the driver’s side.
Connect the Scanner: Plug your OBD2 scanner into the port with the engine off.
Turn on Ignition: Turn your key to the "ON" position (or press the start button without pressing the brake pedal) to power up the car’s electronics.
Scan for Codes: Follow the prompts on your scanner screen to read stored, pending, or historic diagnostic trouble codes.
💡Note: Do not clear the codes before recording the data. Clearing them may erase useful evidence and reset emissions readiness monitors. Basic readers often access emissions-related P codes only; B, C, and U codes may require an enhanced scanner.
Every five-character OBD2 code follows a standardized structural layout established by the Society of Automotive Engineers (SAE). Deconstructing the sequence reveals the specific vehicle system, the code type, and the precise failure point.
The initial letter identifies the primary system at fault:
| Prefix | Category | Systems covered |
|---|---|---|
| P | Powertrain | Engine, transmission, fuel, ignition, and emissions |
| B | Body | Airbags, HVAC, lights, windows, locks, and seats |
| C | Chassis | ABS, stability control, steering, and suspension |
| U | Network | Communication between electronic control modules |
Understanding generic vs. manufacturer-specific OBD2 codes comes down to this digit:
0 (SAE Generic OBD2 Codes): Standardized across all vehicle makes and models. A P0 code means the exact same fault on a Ford as it does on a Honda.
1, 2, or 3 (Manufacturer-Specific OBD2 Codes): Designed by specific carmakers for custom features. For example, a P1 code represents a manufacturer control code unique to brands like BMW, Toyota, or General Motors.
Watch Out for Typos: Always distinguish between the letter "O" and the number "0". OBD2 powertrain codes begin with "P" followed by four characters. What looks like "PO" is always "P0" (with a zero).
For Powertrain codes, the third character pinpoints the exact subsystem:
1 or 2: Fuel or Air Metering
3: Ignition System or Misfire Detection
4: Auxiliary Emissions Controls
5: Vehicle Speed Control and Idle System
6: Computer Output Circuit
7, 8, or 9: Transmission Controls
The final two digits define the exact mechanical or electrical error occurring within that subsystem (e.g., specific cylinder number, open circuit, low voltage).
Powertrain codes begin with P and cover the engine, transmission, fuel delivery, ignition, and emissions systems. They account for most check engine light complaints. A P-code description identifies the system or condition that failed a monitor; it does not automatically identify the part that must be replaced.
For example, a misfire may be caused by ignition, fuel, air, or mechanical problems. Test the shared system and review freeze-frame data before replacing a sensor, ignition coil, injector, or catalytic converter.
B codes relate mainly to body electronics, including airbags, HVAC, lighting, power windows, locks, seats, wipers, and theft-deterrent systems. Definitions are frequently manufacturer-specific, and a basic emissions scanner may not display them.
Airbag caution: Supplemental restraint systems can deploy unexpectedly if handled incorrectly. Follow manufacturer power-down and service procedures rather than probing airbag circuits with ordinary test equipment.
C codes concern braking, steering, suspension, and stability systems. They are commonly stored in the ABS or chassis module rather than the engine computer. A sensor-related C code can also be caused by a damaged tone ring, wheel-bearing play, mismatched tires, corrosion, or wiring damage.
U codes identify communication problems between electronic modules. Before replacing the named module, check battery voltage, charging output, fuses, grounds, connectors, network wiring, and aftermarket accessories. One low-voltage event can create several communication codes at the same time.
Find frequently encountered OBD2 codes below, organized by the vehicle system identified by the first character. Select a linked code to open its detailed diagnostic guide. For more detailed information on specific OBD2 codes, please refer to: OBD2 Trouble Codes: Complete Diagnostic & Fix Guide.
A code identifies the system and fault condition that require testing. Confirm the cause with symptoms, freeze-frame data, live readings, wiring checks, and vehicle-specific procedures before replacing parts.
Once you’ve scanned your vehicle and identified the offending DTC, it’s time to move from diagnosis to repair. Finding the exact replacement component is the key to solving the issue on your first attempt.
Final action: Do not ignore a warning light. Record the codes, assess the driving symptoms, test the affected system, and use VIN-based fitment after confirming the failed part. Early diagnosis can prevent a minor fault from becoming an expensive repair.
Record every code, its status, and the freeze-frame data. Check related codes, battery voltage, fuses, connectors, wiring, and obvious leaks before replacing parts. After the repair, clear the codes, complete an appropriate drive cycle, and scan again.
OBD2 generally applies to gasoline passenger vehicles sold in the United States from the 1996 model year onward. Diesel, heavy-duty, imported, and non-US vehicles can follow different requirements. Scanner coverage also varies by module and manufacturer.
If you fix the underlying issue without manually clearing the code using an OBD2 scanner, the vehicle’s computer will eventually turn off the Check Engine light after completing a designated number of drive cycles without detecting the fault. However, the code will remain saved in the ECM's historical memory log for months.
Limited driving may be possible with a steady light if the vehicle runs normally. Stop driving if the light flashes, the engine misfires severely, the vehicle overheats, oil pressure drops, or braking and steering behavior changes.
Yes, most scanners can clear codes, but do so only after recording the diagnostic data and completing the repair. Clearing codes resets readiness monitors and may temporarily prevent the vehicle from passing an emissions inspection.