Emissions Codes – Decoding the OBDII Diagnostic Code

When the “check engine” or “service engine soon” light comes on, it doesn’t tell you what or where the trouble is, only that there’s trouble. You’ve hooked up your scanner to the vehicle computer and retrieved the OBDII diagnostic code. What does it mean?

The “OBD” of OBDII – sometimes written OBD-II or just plain OBD2 – stands for On-Board Diagnostics. The “II” is the next generation of emissions standards and codes for all vehicles sold in the U.S. from 1996 to the present, domestic and imports.

The OBD2 system is primarily for emissions control. Its basic components are the catalytic converter and strategically-placed oxygen sensors. These as well as everything in the vehicle having to do with engine performance and emissions control are continuously monitored by the vehicle’s on-board computer system.

The “check engine” or “service engine soon” light is the signal that there is a problem with the vehicle’s emissions. The computer has assigned a trouble code to the problem and turned on the trouble light – technically called the Malfunction Indicator Lamp (MIL).

When you retrieve the information from the computer via an OBDII diagnostic scanner, it doesn’t tell you the problem directly, such as “timing too slow” or “misfire in cylinder number four”. What you get is a five-digit alpha-numeric code such as “P0304”.

The first digit is a letter corresponding to the main system causing the trouble code:

B = Body

C = Chassis

P = Powertrain

U = Network

The next four digits are all numbers. There is never a letter “O” in the OBDII diagnostic code. It is the numeric digit zero (“0”).

The second digit corresponds to the type of code, whether it is the generic standard applying to all OBDII-compliant vehicles, or a manufacturer-specific code.

0 = Generic codes

1 = Manufacturer-specific codes

2 = Includes both generic and manufacturer-specific codes

3 = Includes both generic and manufacturer-specific codes

The third number corresponds to the sub-system where the problem lies.

1 = Fuel and Air Metering

2 = Fuel and Air Metering (injector circuit malfunction only)

3 = Ignition System or Misfire

4 = Auxiliary Emission Control System

5 = Vehicle Speed Control and Idle Control System

6 = Computer Output Circuits

7 = Transmission

8 = Transmission

So our example trouble code P0304 indicates a problem in the powertrain. It is a generic code for trouble with the ignition system or a misfire.

The fourth and fifth numbers of the code correspond to the section of the system causing the trouble. The list of all these sections is long, but you can see how the final “04” in our example points to a misfire in cylinder number four.

Most OBDII diagnostic scanners will come with a code library of specific code meanings. A list may also be found on-line here: obd 2 codes list.

You will sometimes find a reference to “Bank 1” or “Bank 2” in the code explanation. These banks are generally meant for “V-type” engines. Bank 1 refers to the side of the engine with the number 1 cylinder (odd-numbered cylinders). Bank 2 refers to the side of the engine with the number 2 cylinder (even-numbered cylinders).

A misfire is a “one-trip” or “type A” problem that by itself will not turn on the MIL unless it is severe enough to damage the catalytic converter. A severe misfire will not only turn on the MIL but will signal it to flash at one-second intervals.

Other problems are usually “two-trip” or “type B” problems. When the computer first detects a two-trip problem, it stores the trouble code as “pending”. If on the next driving trip the problem has passed, the pending code is erased. But if the problem is still there on consecutive trips, the computer will turn on the MIL, alerting the driver to a problem.

The MIL can be persistent. Once on, it will stay on until the problem is resolved for three driving trips. However, though the light may go out, the codes remain in the computer memory for 40-80 trips depending on the problem.

Trouble codes remaining in the computer memory will cause a failed emissions inspection whether the “check engine” light is on or not.

Of course, your diagnostic scanner can turn off the MIL and erase the codes from the computer’s memory. This will not do much good, however, if the problem recurs after two driving trips and regenerates the trouble codes. The information from the scanner should be used to locate and fix the problem, not just turn off the MIL and erase the codes.

Emissions Codes – Decoding the OBDII Diagnostic Code
5 (100%) 4 votes

3 Responses to Emissions Codes – Decoding the OBDII Diagnostic Code

  1. The Dealer vehicle has a p0300 code! Where is the problem!
    What is the repair expenses

  2. Your car’s emission system contains a number of trouble codes. These codes can indicate a variety of different problems. Some are manufacturer-specific and other codes are universal.

  3. The article explains how OBD2 codes start with a letter indicating the system, followed by numbers pinpointing the specific component. For example, P0304 indicates an ignition/misfire issue in cylinder 4. Knowing if it’s a P, B, C, or U code gives clues to the problem area. Decoding OBD2 codes yourself helps diagnose issues before going to the shop.

Leave a reply

About Us

Total Car Diagnostics helps fellow home car owners, mechanics, technicians, garage shops, engineers, ECU programmers and auto repair centers — to significantly cut down on maintenance, repair costs, time, money, energy… and all other frustrating headaches involved with dealing with vehicles — by providing cost-effective advice, tools and recommendations.


facebook Total Car Diagnostics  LinkedIn Total Car Diagnostics  YouTube Total Car Diagnostics

Home | About Us | Contact | Terms of Service | Privacy Policy | Tuning Disclaimer | Affiliate Program | Shop

Address: Byron Bay, NSW, 2481, Australia.

© Copyright 2023 by Total Car Diagnostics. All Rights Reserved.