*This post may contain affiliate links. As an Amazon Associate we earn from qualifying purchases.
If you are staring at an annoying check engine light on your dashboard, you need to learn about OBD2 Codes. On-Board Diagnostics Codes is the way your car keeps track of a wide range of issues. There are OBD2 codes for virtually everything that can go wrong with your car from transmission troubles to fuel injector issues.
The best thing about OBD2 codes? They are no longer a “mechanic’s secret.” Anyone can learn to access and read them easily. That means there is no need to take your car to the dealer the next time your check engine light comes on.
With the right bit of knowledge, you can check it yourself, right from the comfort of your garage.
What Exactly Are On-Board Diagnostics Codes?
The check engine light is something most car owners dread seeing lit up on their dashboard. Many of those same owners will ignore the warning light for weeks or months at a time, never realizing what it indicates in the first place.
It doesn’t just mean your engine is hot. It also doesn’t mean you need to add anti-freeze or oil. There are independent gauges for those things.
When the check engine light comes on, it is an indicator that you may have a significant problem. You need to check the codes stored by the onboard computer diagnostic system. Years ago, these codes were initially known as diagnostic trouble codes.
Today, we commonly refer to them as OBD2 codes.
There are thousands of OBD2 codes stored in your car’s computer, but it isn’t that bad. The good thing is, you don’t need to memorize all of them or even any of them. All you need to know is how to access them and read them.
Once you learn how to do that, you’ll be able to diagnose your car without the need for a dealership or a mechanic.
Reading OBD2 Codes
The first step in understanding OBD2 codes is knowing where to find your vehicle’s diagnostic plug. Many diagnostic plugs are underneath the dashboard, in or under the glove box. Your owner’s manual should point you right to it.
If you don’t have an owner’s manual, do a quick online search for the location.
After you find the plug, pull it gently from its housing. It will more than likely be attached to an additional set of wires. The wires connect to various sets of sensors. Don’t pull hard enough to disengage them.
Using a paper clip on older cars
Next, you can grab a paper clip, unfold it into a U shape. This will also work with a small piece of wire with stripped ends.
Now stick one end of the paper clip or wire into one of the holes in the plug, and the other end into the other hole. Be sure to get the ends as far down into the holes as possible. Once you do this, turn your car’s ignition to the “run” position.
The OBD2 codes will then begin to transmit via flashing lights.
Watch the check engine light on your dashboard and count the flashes to decipher the OBD2 codes. Each long flash represents “10,” and each shorter blink represents a single digit. Say there are four long flashes and one quick flash, that would equate to the number 41.
In a Honda, this would indicate an issue with the vehicle’s oxygen (o2) sensor.
While there are a considerable amount of generic OBD2 codes which are the same for all vehicles, there are also hundreds of manufacturer specific OBD2 codes as well.
We have compiled a lengthy list of common OBD2 codes later in this article.
Using a diagnostic tool for newer cars
If you have a newer vehicle or just don’t want to stick a paperclip into the diagnostic plug, there is a much easier way. It isn’t free, like the paperclip method, but it will accomplish the same task.
An OBD scanner is a diagnostic tool for reading OBD2 codes. You still need to find the diagnostic plug. You still need to plug something into it. And you still need to turn your car’s ignition to the “run” position.
The difference is that the scanner will automatically read the codes and display them on a digital LED or LCD screen.
Check with your local auto parts store as they carry a good assortment of scanning devices in a range of prices. The employees are also knowledgeable in the use and reliability of the scanner and will give you decent advice.
While these tools can be as expensive as thousands of dollars, such as the Autel MaxiSys Elite Automotive Diagnostic Tool. They can also be as inexpensive as $20, such as the Autel Code Reader Autolink AL301 OBD2 Scan Tool Car Diagnostic Tool.
Understanding the Types of OBD2 Codes
Understanding the types of OBD2 codes is crucial to fixing the underlying problems. What good would the system be if you don’t know what it means? OBD2 codes consist of five characters which are broken down into five sections.
The first character will always be one of four letters: B for body code, C for chassis code including the Anti-lock Braking System (ABS), P for powertrain code including engine and transmission, and U for network code including wiring bus.
The second character will always be a “0” for generic OBD2 codes, or a “1” for manufacturer specific OBD2 codes.
The third character will always be one of the following numbers:
- 1 for fuel and air metering
- 2 for fuel and air metering plus injector circuit
- 3 for integration system or misfire
- 4 for auxiliary emission controls
- 5 for vehicle speed control plus idle control system
- 6 for computer output circuit
- 7 and 8 for transmission issues
The fourth and fifth characters will be additional digits that help to identify the fault descriptions.
Once you have gathered all five characters of specific OBD2 codes, refer to the complete list of OBD2 codes below. If you can’t find the specific code listed below, you can do an online search for the meaning, or talk to your mechanic.
The Complete List of OBD2 Codes
The following list of OBD2 codes is broken down into three convenient sections for easier navigation; most common, generic, and manufacturer specific.
Most common OBD2 codes
There are a few OBD2 codes which represent the most common issues car owners experience. These codes are listed below:
- P0128 is the result of the vehicles’ engine temperature not reaching the correct level after engine startup.
- P0133 is the result of a slow oxygen response from bank 1/sensor 1.
- P0135 is the result of an error with the oxygen sensor (HO2S) performance bank 1/sensor 1.
- P0171 is the result of oxygen sensors not detecting enough oxygen in the exhaust and an improper air/fuel mixture.
- P0174 is the result of the vehicles’ fuel system running too lean.
- P0300 is the result of random multiple misfires detected.
- P0302 is the result of a misfire in cylinder two detected.
- P0303 is the result of a misfire in cylinder three detected.
- P0304 is the result of a misfire in cylinder four detected.
- P0401 is the result of an Insufficient EGR flow.
- P0420 is the result of the vehicles’ catalyst system falling below the efficiency threshold.
- P0430 is the result of low efficiency detected in bank 2 of the catalyst system.
- P0440 is the result of a significant leak occurring, also known as an evaporative system malfunction.
- P0442 is the result of a small leak occurring, also known as an evaporative system malfunction.
- P0446 is the result of an error with the EVAP vent solenoid valve control system.
- P0455 is the result of a gross leak occurring, also known as an evaporative system malfunction.
Generic OBD2 codes
The list of generic OBD2 codes is massive. In total, there are several thousand universal codes. These codes are standard to all manufacturers. We’ve provided handy links below to additional information on generic OBD2 codes.
- P0000 through P0099 is fuel and air metering as well as auxiliary emission control codes.
- P0100 through P0199 is fuel and air metering codes.
- P0200 through P0299 is fuel & air metering injector circuit codes.
- P0300 through P0399 is ignition system & misfire codes.
- P0400 through P0499 is auxiliary emissions codes.
- P0500 through P0599 is vehicle speed controls and idle control systems codes.
- P0600 through P0699 is computer output circuit codes.
- P0700 through P0799 is transmission codes.
- P0800 through P0899 is transmission codes.
- P0900 through P0999 is transmission codes.
- P0A00 through P0A99 is generic hybrid codes.
- P0B00 through P0B99 is generic hybrid codes.
- P0C00 through P0C99 is generic hybrid codes.
- P2000 through P2099 is generic powertrain codes.
- P2100 through P2199 is generic powertrain codes.
- P2200 through P2299 is generic powertrain codes.
- P2300 through P2399 is generic powertrain codes.
- P2400 through P2499 is generic powertrain codes.
- P2500 through P2599 is generic powertrain codes.
- P2600 through P2699 is generic powertrain codes.
- P2700 through P2799 is generic powertrain codes.
- P2800 through P2999 is generic powertrain codes.
- P3000 through P3499 is generic powertrain codes.
If you weren’t able to find your OBD2 codes in this list, re-check the first two characters and make sure that they begin with P0, P2, or P3. OBD2 codes that start with “P1” characters are manufacturer specific, which we cover next.
Manufacturer specific OBD2 codes
If your OBD2 codes start with the characters “P1” you are looking at a manufacturer specific code. Follow the links below to find out what your OBD2 codes mean.
- Acura
- Audi
- BMW
- Buick
- Cadillac
- Chevrolet
- Chrysler
- Dodge
- Ford
- GM
- GMC
- Honda
- Hyundai
- Infiniti
- Isuzu
- Jeep
- Jaguar
- Kia
- Land Rover
- Lexus
- Lincoln
- Mazda
- Mercedes
- Mercury
- Mitsubishi
- Nissan
- Oldsmobile
- Plymouth
- Pontiac
- Saturn
- Subaru
- Suzuki
- Toyota
- VW
If you were unable to find your OBD2 codes, re-read their first couple of characters. If they begin with P0, P2, or P3, they are generic OBD2 codes and are in the previous section.
Clearing OBD2 Codes
Clearing the check engine light after reading an OBD2 code and alleviating the issue is a pretty simple process. The hardest part is probably fixing the actual problem, especially if you aren’t mechanically inclined.
In the past, clearing OBD2 codes required a professional mechanic. Now, it is something almost anyone can do with just a little bit of research. Thank you internet!
On many vehicles, you can even reset the check engine light with your computer, tablet, or phone.
Clearing OBD2 codes with a code scanner
The easiest way to remove your codes and reset the check engine light is to use a code scanner. All you need to do is connect it to the diagnostic plug under your dashboard, set your ignition to the “run” position, press the “read” button, and then press “erase” or “clear.”
Clearing OBD2 codes the old way
The old way of clearing codes and resetting the check engine light is a bit different, but not much harder. Just disconnect your car’s battery by removing the positive and negative cables, press down on the horn for 30 seconds, wait for about 15 minutes and then reconnect your battery and start the car.
Once the vehicle restarts, the check engine light will be back to normal.
Of course, there are a few downsides to this method. Disengaging the battery cable will remove all the preset buttons on your radio. It will also reset your dashboard clock. The good news is that if you don’t have an owner’s manual and don’t know how to correct the clock and radio stations, you can easily find those directions online.
OBD2 Codes Aren’t so Mysterious Afterall
So, OBD2 codes aren’t so mysterious or annoying after all. With the right know-how and a bit of effort, you can take care of that pesky check engine light. You might even save hundreds of dollars by skipping expensive car dealers and mechanics to service your vehicle.
If you are having trouble finding specific OBD2 codes on our list, try the search bar on engine codes or leave a message on their forum.
Do you have some OBD2 code advice for our readers? Leave a message in the comments section. We’d love to hear from you!