A Simple Guide to the Check Engine Light and Diagnostic Trouble Codes

Your vehicle performs hundreds of operations in order to get you from point A to point B safely, efficiently, and in comfort. It relies on an array of on-board computers, sensors, and other components that are in constant communication with each other to control and monitor vehicle functions. All of that complexity can make it difficult to diagnose when something goes wrong.

Fortunately, modern automobiles include a system of self-diagnosis. When a problem pops up, your vehicle knows it – and it lets you know. One way it does so is by turning on the check engine light.


The Engine Control Module

The moment you turn the key or press a button to start your engine, your vehicle begins to perform a series of self-diagnostic tests to ensure everything is working according to plan. While it is running, the on-board computers continue to monitor vehicle functions. It is common for a modern vehicle to feature nearly a hundred small computers that work with the host of sensors and components to which they are related.

These computer control modules, for example, assess and adjust how much air and fuel are introduced to the cylinders or combustion chambers. They measure how much pollutant is coming out of the exhaust system and adjust accordingly. They sense when the oil is low, when the brake pads need to be replaced, and how much evaporated fuel from the tank needs to be recirculated back to the engine. Most every operation performed in your late model car, truck, or SUV is monitored and controlled by a computer control module.

Among the myriad computer control modules (sometimes called “control units”), the most significant is the engine control module, or ECM. The ECM is the master computer in charge of engine function and related issues. Depending on your vehicle manufacturer, this device might be referred to as an engine control unit (ECU) or powertrain control module (PCM). In any case, this mothership of computer control modules monitors and controls engine function and other related issues. It constantly performs diagnostic tests on vehicle systems, and whenever something goes wrong with the way your vehicle is running, it senses and stores information about the fault, and then it sends an alert signal to the driver that there is a problem.


The Check Engine Light

When something goes wrong with a vehicle, there are many alert signals that might be sent to a driver. These include messages on the electronic display about low tire pressure, or dashboard warning lights related to high engine temperature or low oil pressure. But the signal that causes the most concern for many folks is usually the check engine light, or CEL for short.

When the ECM detects a problem with a vehicle system – for instance, a sensor that is sending the wrong data or no data at all – it will store information that can later be accessessed by a repair technician. It will also turn on the check engine light to let you know that something is wrong. The issue could be something as simple as a loose gas cap, or it could be something as serious as an engine misfire. When you see the check engine light come on, you should know that it is time to take your vehicle to a technician for an accurate diagnosis.


Check engine light on? Have your vehicle diagnosed at a CarAdvise shop, where the work will be guaranteed, and one of our expert techs will review any repair orders.


Is the Check Engine Light Serious?

The presence of a check engine light is often misunderstood because it bears many meanings. When it lights up, there is no knowing if the cause is a simple fix (like tightening up your gas cap) or a more grave problem that could damage your engine.

In fact, there are times when the check engine light might come on when there is nothing wrong with your vehicle at all. In those cases when a temporary condition is caused by environmental or other factors (a change in humidity, for example), the light should go off by itself after a short amount of time.

But if it stays on, the check engine light should not be ignored. And if it is blinking on and off – an indication of a serious condition in need of immediate attention – do not continue to drive your vehicle.


How long can you drive with the check engine light on?

Although plenty of drivers ignore the warning lights on the dashboard, many find that their heart sinks a bit when the Check Engine Light comes on. If it does, there is no need for panic. Instead, pay attention to what you see, feel, and hear from your vehicle. If you do not detect a change in performance – no odd sounds, loss of power, vibration, or other sensation – you can simply take it to a qualified technician at your earliest convenience.

If, on the other hand, the check engine eight is blinking on and off, that is another matter entirely. Stop driving. Pull over in the nearest safe location and call a tow service to take your vehicle to a repair facility.


What can cause the check engine light to come on?

There are many causes of a check engine light, some simple and others more severe. Examples of problems that might lead to a check engine light include:

When the check engine light (also known as a malfunction indicator light, or MIL) comes on, it merely highlights an icon on your dashboard display. It tells you there is something wrong with your vehicle. The check engine light does not tell you what is wrong. To figure out what the light is trying to say, a diagnostic scanner must be attached to your vehicle’s data port to access the computer module (in this case, the ECM).

The scan tool will read data from the ECM and display what is known as a diagnostic trouble code, or DTC, stored there. The DTC is an alphanumeric code that relates to a particular problem with a vehicle system. But even then, a mechanic might need to dig deeper to find the source of the problem.

That is because, in many cases, a DTC only reveals the electrical circuit in which a problem is taking place – not the culprit in that circuit. From there, a technician will often need to perform a more comprehensive set of diagnostic procedures to narrow down or pinpoint the problem. And with literally thousands of possible trouble codes and their related faults, pinpoint accuracy is needed.


Diagnostic Trouble Codes

The on-board diagnostic system – referred to as “OBD-II” (a term that represents the second generation of on-board diagnostics) – uses an array of DTCs to alert a technician as to where the possible or probable cause of a problem might lie. The codes are accessed with a diagnostic scan tool that the technician will connect to a data port inside your vehicle.

DTCs are five-digit alphanumeric codes that fall into four different categories, depending on where a particular malfunction might be found. Each category is represented by a letter:

  • Powertrain (P)
  • Body (B)
  • Chassis (C)
  • Network Communications (U)

DTCs are further divided into two groups:

  • Generic codes – These codes are common to all vehicles no matter who the manufacturer is. Generic codes are indicated with a “0” as the second digit (i.e. P0000).
  • Enhanced codes – On the other hand, enhanced codes are those that are manufacturer-specific and related to a specific (often outside the engine control system) vehicle applications. Enhanced codes are represented with a “1” as the second digit (i.e. P1000).


Common DTCs for a check engine light

There are literally thousands of different DTCs, many of which are widely used across all vehicle manufacturers, and many that are manufacturer- or vehicle-specific. The codes most often encountered during a diagnostic scan (and the most common causes of a check engine light) are the powertrain (P) codes. P codes are related to the function of most vehicle systems.

While there are far too many codes to list, below are descriptions of several P codes that are likely to come up when there is a problem with your vehicle. Following those descriptions is a list of DTCs with links to pages highlighting various DTCs, what they mean, how they might be caused, and the symptoms for which you might be on the lookout.

Codes P0171 through P0175

This set of codes is caused by the fuel system allowing either too much oxygen or too much fuel into the combustion chambers, resulting in an air/fuel ratio that is either too lean or too rich. These trouble codes specifically reveal the level of oxygen present in the system.

  • P0171 – This code lets a technician know that the system is running lean. In other words, your engine is receiving too much air. This can be caused by problems such as a leaking intake manifold gasket that allows too much air into the cylinders, or a faulty mass air flow sensor that sends an errant message to the Engine Control Module about how much air is entering the engine. A bad fuel pressure regulator can prevent a sufficient amount of fuel from reaching the engine, thereby throwing off the mix of air and fuel. Other possible causes include a weak fuel pump, clogged fuel filter, bad oxygen sensor, or a vacuum leak.
  • P0172 – This code signals a technician that the fuel system is causing your engine to run too rich. That means, the air/fuel mixture has too much fuel (or not enough air). This condition can also be caused by a faulty mass air flow sensor if it is sending the wrong information to the ECM. But it can also result from a bad fuel injector that refuses to shut off when it is supposed to, or even a dirty and clogged engine air filter that starves the engine of air. Other causes include a bad coolant temperature sensor, or a faulty engine thermostat.
  • P0173 – The ECM is constantly monitoring and adjusting the “fuel trim” to compensate for deviations from the optimal air/fuel ratio. When the ratio is too extreme for the ECM to compensate, whether too lean or too rich, a code P0173 will display. This code can be caused by a number of factors, including a leaking intake manifold gasket, malfunctioning mass air flow sensor, or severely clogged engine air filter. It can also be a result of a failed fuel pressure regulator that leads to low pressure at the fuel injectors.
  • P0174 – Whereas a code P0171 indicates a lean air/fuel mixture in “Bank 1” of an engine, this code signals a lean condition in “Bank 2”. Bank 1 is the side of an engine that houses Cylinder 1 (the first in the firing order). Bank 2 is on the opposite side of the engine. However, many vehicles on the road today feature four-cylinder engines that have only one bank. Causes of this code are the same as with P0171. 
  • P0175 – This code is similar to a code P0172 but relates to a rich fuel condition in “Bank 2” rather than “Bank 1”. Gasoline powered engines want to run at an optimum air/fuel ratio, one that is most efficient and provides the most power. Problems that cause the ratio to vary in one direction or the other (too rich, in this case) can sometimes be corrected by the ECM. If not, you will see the Check Engine Light come on. A diagnostic scan will reveal the trouble code. From there, it is up to the technician to ascertain where the trouble may be found. The specific causes of a code P0175 are the same as those of code P0172. 

Codes P0300-P0306

These are related to engine misfires that can be caused by a faulty fuel pump, bad fuel injectors, a blown cylinder head gasket, timing problems, or even fouled spark plugs. In fact, many issues can lead to a diagnostic trouble code in this category.

A misfire occurs when one or more of the cylinders in your engine fail to fire. That is, combustion does not occur the way it should. Your engine requires four conditions to fire properly: fuel, air, compression, and a source of ignition (the “spark”). If any of these are inhibited or out of sequence, a cylinder can fail to fire adequately (or at all). A rough idle, poor acceleration, hesitation, sudden loss of power, and other symptoms come as a result.

And your check engine light will likely come on.

The specific trouble code identified through a diagnostic scan will alert a technician to the cylinder in which the misfire occurs. Code P0300 suggests a misfire in multiple cylinders. Code P0301 tells of a misfire in cylinder 1. P0302 indicates that cylinder 2 is misfiring. And so on.

What this set of DTCs does not specify is the direct cause of the misfire. For that, a technician must investigate further. Common causes of an engine misfire include:

  • Fouled or damaged spark plug that produces a weak spark, one that is insufficient to set off combustion in a cylinder
  • Faulty ignition coil that can also lead to a weak spark. This results in inadequate combustion
  • Failed fuel pressure regulator or fuel pump that exhibits low pressure and causes the fuel injectors to malfunction
  • Clogged or inoperative fuel injectors that do not allow enough fuel into a cylinder
  • Bad EGR valve that allows an incorrect amount of exhaust gas into a cylinder
  • Leaking head gasket or intake manifold gasket can allow too much air to enter a cylinder, throwing off the air/fuel ratio and causing a misfire

This list is not comprehensive. There are many causes of engine misfire. Even a malfunctioning control module (computer) or sensor can prevent a component from working properly and lead to a misfire. If your Check Engine Light comes on and you notice signs of an engine misfire, make sure to have a technician accurately diagnose the problem.

Codes P0440, P0442, P0446, and P0455

This set deals with problems in the evaporative emission (EVAP) system that collects evaporated fuel from the fuel tank so that it is rerouted to the engine and does not escape into the atmosphere.

  • P0440 – This code stems from an EVAP system malfunction. More specifically, a leak. Common problems that can trigger this code (and your Check Engine LIght) are a loose or faulty gas cap, a leaking fuel evaporative canister, or a bad purge control valve. If the fuel filler neck or EVAP hose are punctured or the fuel tank is damaged, a code P0440 can also be triggered.
  • P0442 – The previous code (P0440) relates to a fairly large leak in the EVAP system. This code refers to a small leak that might be caught by the leak detection pump. And although the problem – stemming from the same general causes as the larger leak – might not show symptoms to the driver, it will still turn on the Check Engine Light.
  • P0446 – The EVAP system not only captures evaporated fuel vapors from the fuel system, it also stores those vapors to be used later, to be burned in the engine when called for. Those vapors are stored in a special EVAP canister and controlled by the purge control valve. This code has to do with a malfunction in the electrical circuit that contains the purge control valve. Other causes of this code include a missing gas cap, defective purge control valve, damaged fuel filler neck or fuel tank, or a bad sending unit.
  • P0455 – This code is reserved for an EVAP system malfunction designated as a “gross leak”, one that prevents the system from maintaining pressure. But this code can also indicate a lack of flow in the system. A stuck purge control valve can be the culprit. A bad fuel pressure sensor can also cause the code. So can blockages in the hoses or tubes in the system. And any of the aforementioned causes of a system leak can lead to this code if they are significant.

Codes P0400-P0408

These are among a set of DTCs related to a faulty exhaust gas recirculation (EGR) valve. Common codes in this series are P0401 and P0402, showing that the EGR flow is either insufficient or excessive.

  • P0401 – This code, reflecting a restricted EGR flow, can be caused by a restriction in the EGR passages, often as a result of a buildup of carbon. The problem could be a bad EGR valve or a faulty EGR valve cooler, each of which could restrict flow. But an improper data stream to the computer module from a related component could also be a problem, such as an EGR valve temperature sensor or MAP sensor that is malfunctioning.
  • P0402 – This code, on the other hand, suggests that the EGR system is seeing too much flow. A defective EGR valve could be the culprit here as well, only in this case, the valve is staying open rather than shut. Most of the components that can cause a P0401 code can also cause this one. But so can problems with other components, such as the MAP sensor, that send improper feedback related to the EGR system. Driving with the Check Engine Light on because of this code is not recommended.

Codes P0420 and P0430

Codes in this range suggest a problem with the catalytic converter in the exhaust system. The catalytic converter in your vehicle is there to break down harmful combustion byproducts before they exit the exhaust system. It does so by using platinum and gold components to create a chemical reaction that separates unsafe compounds from the exhaust gasses.

  • P0420 – This code is defined as “catalyst system efficiency below threshold (Bank 1)”. That means the catalytic converter is not functioning as it should. The way your vehicle determines whether or not the catalytic converter is doing its job is with a pair of oxygen sensors positioned before and after the converter in the exhaust stream. Those sensors read the amount of oxygen present in the exhaust and send data to the computer. A bad catalytic converter can trigger this code. But so can a faulty oxygen sensor that sends bad information to the computer. Another cause of this code can be a faulty mass air flow sensor that causes the engine to run either too lean or too rich.
  • P0430 – This code relates to the same problems as P0420 but in Bank 2, typically associated with larger engines (V6 or V8 engines, for example).

Code P0411 is another common code related to the exhaust system, only this time it suggests a problem with the secondary air injection system. This system is designed to reduce emissions by introducing fresh air into the exhaust stream. If an oxygen sensor detects too little oxygen in the exhaust, the CEL will come on.


Check engine light on? Have your vehicle diagnosed at a CarAdvise shop, where the work will be guaranteed, and one of our expert techs will review any repair orders.


Common OBD-II DTCs

P0000 Series

P0011 P0012 P0014 P0015 P0079

P0100 Series

P0100 P0101 P0102 P0104 P0105 P0112 P0113 P0115 P0116 P0117 P0118 P0120 P0122 P0123 P0124 P0128 P0130 P0131 P0132 P0133 P0137 P0138 P0170 P0171 P0172 P0174 P0175

P0200 Series

P0200 P0201 P0220 P0225 P0230 P0262 P0265 P0268 P0271 P0274 P0277 P0280 P0283

P0300 Series

P0300 P0301 P0302 P0303 P0305 P0335 P0351

P0400 Series

P0400 P0401 P0402 P0403 P0420 P0421 P0430 P0440 P0441 P0442 P0446 P0450 P0455 P0456 P0496

P0500 Series

P0500 P0505 P0506 P0507 P0520 P0561 P0562

P0600 Series


P0700 Series

P0700 P0703 P0705 P0706 P0715 P0720 P0730 P0745 P0750 P0755 P0760 P0780 P0781 P0782 P0783 P0784 P0785

P0800 Series


P0900 Series


P1000 Series


Get expert advice, find shops, schedule, approve, & pay for any service.

Guaranteed to be lower than in-store retail price.

Transparent Pricing

Never overpay for car maintenance. Compare and select from discounted prices across 26,000+ trusted shops nationwide.


Ignite your auto knowledge. Gain invaluable insights into maintenance schedules, service clarity, and obtain expert advice.


Bypass the stress of negotiations. CarAdvise simplifies your car care journey for an effortless experience.

Peace of Mind

Rest easy knowing you're getting quality service at the right price, without any hidden costs or surprises.

Own A Repair Shop?