What Do Car Trouble Codes Really Mean?

Your vehicle has a problem if the check engine light (CEL) glows. Diagnostic trouble codes (DTCs) stored in the computer help find the cause.

Our editors and experts handpick every product we feature. We may earn a commission from your purchases.

When your dashboard check engine light (CEL) or other warning lights illuminate, your vehicle’s engine control module (ECM) senses a problem. The ECM then generates and stores a diagnostic trouble code (DTC) in its memory.

What do these codes mean and why should you care? Understanding how your vehicle works, especially the DTCs that alert you to a problem, can help lower repair costs, reduce expensive breakdowns and extend your vehicle’s life.

What Are Trouble Codes?

Diagnostic trouble codes help narrow down and pinpoint specific areas and elements that could cause the CEL to illuminate. Never ignore the CEL. Most codes have to do with bad or failing sensors, fuel, ignition, mechanical or electrical components which negatively affect tailpipe (smog) emissions, drivability, fuel economy and your overall driving experience.

How Do I Know Which Trouble Codes Are Stored in the ECM?

To read DTCs, a scan tool (or DTC code reader) must be plugged into your vehicle’s 16-pin universal assembly line diagnostic link (ALDL connector). A scan tool reads and displays DTCs by directly interfacing with your vehicle’s onboard diagnostics/second generation (OBD-II) computer system. You’ll need to buy a code reader or scan tool if you want to read DTCs yourself.

Once the problem is fixed, scan tools can verify the repair and clear the code(s), which turns off the CEL.

How To Decode The Codes

All OBD-II DTCs have five characters:

The first character is a letter indicating the section of the car where the fault lies:

  • P =Powertrain: Covers the transmission, engine, fuel and ignition systems.
  • C = Chassis: Covers mechanical systems such as steering, suspension and braking systems.
  • B = Body: Covers systems primarily located in the passenger compartment.
  • U = Network and vehicle integration: Functions (outputs) controlled by the OBD-II system.

The 2nd to 5th characters are numbers indicating possible faulty elements.

The 2nd character will be a 0 or 1.

  • 0 = A Society of Automotive Engineers (SAE) International generic code.
  • 1 = A manufacturer-specific code.

The 3rd characters run 0 to 7 and identify a vehicle’s subsystem:

  • 0 = Fuel systems and emission controls.
  • 1 = Fuel and air metering.
  • 2 = Fuel injector and air metering circuit.
  • 3 = Ignition system or a misfire.
  • 4 = Auxiliary emission controls.
  • 5 = Vehicle speed control, idle system and auxiliary inputs.
  • 6 = Computer and output circuits.
  • 7 = Transmission.

The 4th and 5th characters run from 0 to 99 and can help precisely indicate the problem or malfunction. Code P-0-5-73, for example, denotes a “Cruise Control/Brake Switch A Circuit High.”

Gettyimages 175253106BanksPhotos/Getty Images

Most Common DTCs

P0119: Engine coolant temperature sensor (ETC) circuit

A critical sensor, ETC data affects engine idle speed, fuel delivery, ignition timing and other operations. Depending on where the ETC is located, you can replace it yourself after draining the coolant system.

P012X/P022X: Throttle position sensor (TPS) circuit

There are quite a few DTCs for the TPS. A vital sensor, TPS monitors throttle plate position. TPS and other sensor data enable the ECM to accurately calculate fuel delivery. Symptoms include fluctuating engine idling speed, surging and stalling. Cleaning the throttle body yourself is a good starting point.

P0128: Coolant thermostat (coolant below temperature)

The ECM triggers this code if readings from other dedicated sensors (intake air, ETC) show the engine is operating below temperature. Besides replacing the thermostat, air bubbles trapped in the cooling system could likely be the cause.

P0137: Oxygen sensor (O2) circuit

This code sets when the engine burns more air than fuel (called a lean condition). Due to the ECM trying to enrich the air/fuel mixture, you may notice poor fuel economy or black exhaust smoke.

Check for cracked or loose vacuum hoses, a blocked fuel filter or an exhaust leak near the sensor. A dirty, damaged, or malfunctioning O2 sensor affects the air/fuel mixture. Replace the O2 sensor yourself every 50,000 to 100,000 miles.

P0171 or P0174: Running lean codes

Typically triggered when yourengine is running lean (see above). The most likely offenders include clogged air or fuel filters or dirty fuel injectors. Replacing the filters and cleaning dirty injectors are DIY repairs.

P0172: System too rich

Similar to code P0171, this code deals with air-fuel mixture and signals a rich mixture (burning more fuel than air).

There are a few possibilities, such as a leaking fuel injector, restricted air intake or faulty fuel pressure regulator. However, a dirty or faulty mass air flow sensor (MAF) could likely be the cause. Try cleaning the MAF sensor before replacing it; both are easy DIY tasks.

P030X: Cylinder misfire detected

This code may be stored along with P0300. The last number refers to a specific cylinder. (P0305 means cylinder number 5 is misfiring.) Symptoms include poor acceleration or the engine backfiring.

Caused by anything from bad spark plugs to low engine compression, cylinder misfire can leave unburned fuel in the combustion chamber, forcing Limp Home mode (see below). With the proper tools, attempt to diagnose the problem (bad spark plug, ignition wire or coil, etc.) and make repairs yourself.

P0340: Camshaft position sensor (CMPS) malfunction

The ECM reads the CMPS (along with the crankshaft position sensor or CPS) data to precisely control fuel delivery and ignition (spark) timing. A bad camshaft position sensor can show symptoms, such as hard-, or no-start condition, lack of power or engine misfire, and set a DTC before turning on the CEL. Leave this repair to the pros.

P0401: Insufficient exhaust gas recirculation (EGR) flow

The EGR valve directs exhaust gases into the engine to lower combustion temperatures, reducing oxides of nitrogen (NOx) tailpipe emissions. Symptoms include rough idling and stalling.

This one is commonly caused by gunked-up intake manifold passages or a dirty EGR valve sticking open. Try cleaning the EGR and decarbonizing the engine yourself before going in for professional service. Decarbonizing removes carbon deposits built-up inside the engine intake manifold, combustion chamber and valves.

P0446: Evaporative Emission Control System (EVAP) Leak

The self-monitoring EVAP system stores fuel vapors and purges them back into the engine to be burned. Although there are many culprits that can set this code, from a loose fuel line clamp to a bad ECM, the first DIY fix is easy: Try removing and retightening the gas cap.

Limp Home Mode

In addition to the CEL and setting codes, sensor data severely out of range can force the ECM to engage Limp Home Mode. This protects the catalytic converter and drivetrain from damage by limiting engine RPMs, allowing you to drive home or to your repair shop. Here’s everything you need to know about your vehicle’s lights, flashers, and electrical systems.

Bob Lacivita
Bob Lacivita is an award-winning ASE and General Motors auto technician, vocational educator, Career and Technical Center administrator and freelance writer who has written about DIY car repairs, vehicle maintenance and other self-help topics for more than 20 years.
At the age of 12, Bob took his first engine apart, a 2-cycle Briggs and Stratton from a lawn mower he found in the trash. At 14, he rebuilt a seized 256cu.in. Chevrolet engine in a 1956 Belair that he drove for three years. He spent most weekends, as well as the money he earned working a gas station, at Atco Dragway in Atco New Jersey.
Although trained as an architectural drafter, he never worked a day in that field. Still, the skills he learned helped as he renovated and rehabbed his homes. His true love was cars and so he made that his life’s profession. Bob worked for one of the largest Oldsmobile retailers in the country and earned Pontiac and Oldsmobile Master Technician Elite status as one of the top 20 GM technicians in the country.
Bob was also a Pennsylvania Department of Education (PDE) certified career and technical educator for 25 years, teaching automotive technology for 11 of them. He's been a Certified Vehicle Safety Insructor and an Emissions Inspector, too. Bob earned his master’s degree in educational leadership, as well as his PDE K-12 Principal Certification and his Career and Technical Education Directors and Curriculum Supervisors certificates, to become a school administrator. When it comes to education, Bob has two sayings: The kids are the best part of teaching, and teaching was the hardest job he ever had. It was the best job he ever had, too.
Since retiring, Bob has continued to maintain his ASE Master Technician; MACS Section 609 Refrigerant Recycling Certification; PA safety and emissions inspector certifications, credentials, and licenses; and participated in more than 100 hours of update technical training through MotorAge, Snap-On, Dorman Products and Automotive Technician Training Services, Mitchel1 and others.
Bob currently writes regularly for Family Handyman and works as a consultant with one of the largest automotive retailers on the East Coast, setting up an automotive technology training and apprenticeship program in partnership with a local catholic high school.
Bob and his wife lived through 40 years' worth of DIY home remodeling while parenting two (now grown) boys, and now relax by watching their three fabulous granddaughters.