OBD2 Codes – On-Board Diagnostic P Codes (Free List)

OBD2 Codes List

If you’re like me, then you love tinkering with your car. You know – checking the oil, changing the air filter, and so on. But sometimes, things go a little bit further than that. Maybe you’ve started to notice that your car is running a little rough, or maybe there’s something wrong with the exhaust system.

It might be time to check the OBD2 codes in the error memory in cases like this. But what do all these trouble codes mean? Keep reading to find out!

OBD2 Codes List

Below, you will find a full OBD2 code list with all the P-codes, which means that all these codes appear when there is trouble with the engine or drivetrain.

Some of the codes down below have links, which means that we have a more in-depth article written about them to repair your car easily. We are all the time working on writing separate articles for the DTC codes to make the obd2 code list more complete, so hang on there! Enjoy.

DTC Codes - P0000 - P0299 (Air-Fuel Mixture) DTC Codes - P0300 - P0399 (Ignition Control) DTC Codes - P0400 - P0499 (Emission Control) DTC Codes - P0500 - P0599 (Engine Idling Control) DTC Codes - P0600 - P0699 (Control Module/Output Control) DTC Codes - P0700 - P0999(Transmission Control)

Model Specific Codes:

Description of the OBD2 codes

At first, trouble codes may just look like random numbers and letters, but that couldn’t be further from the truth. The DTC codes are actually very logical and easy to understand once you know the basics. Let’s begin by checking the example down below.

P0420 is a very widespread trouble code. You have probably heard of it if you are at least a little into cars. By looking at the first letter, it tells us there is an issue with the engine or the drivetrain. The first digit explains that it’s a generic trouble code affecting all car models. If the number is 1 there in the 2nd place, it’s a model-specific trouble code.

The second digit explains what type of problem it is. For example, 1 stands for an issue with the fuel, and 3 means there is a problem with the ignition.

If we look at the last digit, it’s not as easy to understand as the first letters and digits. This is the “fine” description of the trouble code and for example, P0420 means there is an issue at Bank 1, while the code P0421 means the issue is at bank 2.

While the engine codes are quite logical, it’s very difficult to remember all of these OBD codes. I’ve created a little cheat sheet down below before we go into the full OBD2 code list.

First LetterFirst DigitSecond DigitLast Digits
P = Powertrain0 = Generic Code1 = FuelDescription
B = Body (AC/Airbag)1 = Manufacturer Specific2 = Fuel (Injector circuit)Description
C = Chassis (ABS) 3 = IgnitionDescription
U = Network (CAN BUS) 4 = Aux emission controlDescription
5 = Vehicle speed controlDescription
6 = Computer output circuitDescription
7 = TransmissionDescription
8 = TransmissionDescription
9 = TransmissionDescription

Read the trouble codes at home

If you want to read these DTC codes from your vehicle to save a trip to the mechanic each time you want to read the car codes you can actually get an OBD2 scanner to use at home. The generic scanners, which work with most car models, are often quite affordable. Unfortunately, these generic scanners can often not read model-specific codes, so in that case, you will need a code scanner able to read enhanced trouble codes.

If you are interested in getting a generic or enhanced trouble code reader, check out our article: 10 Best OBD2 Scanners.