Check Engine Light On? The 10 Most Common OBD2 Codes — What They Mean, Whether You Can Keep Driving and What the Fix Costs

A solid check engine light is a stored fault, not an emergency: read the code before you decide anything. A flashing light is an active misfire that is destroying the catalytic converter — stop. The ten codes below cover most lit lamps in the United States, from a loose gas cap that costs nothing to a catalyst code that costs $1,500 when the shop guesses — and $250 when it doesn’t. For each one: what it means, the causes in order of likelihood, whether you can keep driving, and what the repair really costs in 2026.

Amber check engine warning lamp lit in a car instrument cluster
The amber engine outline: a stored powertrain fault. Solid means “read me soon”; flashing means “stop now”. Photo: .kkursor, CC0, via Wikimedia Commons (resized)

The light comes on somewhere between the school run and the office, the car feels exactly the same, and the next hour goes to a search box: can I keep driving, is this going to be expensive, is the shop going to tell me the truth. Those three questions have concrete answers, because the lamp is never vague: behind it sits a five-character code the engine computer stored the moment the fault was confirmed, and a $25 adapter reads it in two minutes. This article decodes the ten codes that account for the bulk of lit lamps in the United States, using the repair frequencies and average costs from CarMD’s Vehicle Health Index — 31 million vehicles’ worth of real diagnostic data — and the price ranges shops actually quote. The pattern to keep in mind: the light is cheap, the code is cheap, the guess is expensive.

Solid or flashing: what the light itself tells you#

Before any scanner, the lamp already carries one bit of information, and it is the most important one.

  • Solid — the engine control unit confirmed a fault over one or two drive cycles and stored it. The car is in a safe state; usually the only immediate effects are worse fuel economy and a failed emissions test. You have days to read the code, not months to ignore it.
  • Flashing — an active misfire severe enough to damage the catalytic converter. Unburnt fuel is passing into the exhaust and burning inside the converter, and a ceramic substrate that is designed for 800 °C can melt within miles at highway speed. Pull over when it is safe, shut the engine off, and have the car towed or driven the shortest possible distance at low revs. A flashing lamp is the one case where “I’ll get it looked at next week” turns a $300 coil into a $1,500 converter.

Two more things the lamp is not: it is not an oil-pressure or overheating warning (those are separate red lamps and both mean stop), and it is not a maintenance reminder. If the coolant temperature gauge is normal and the oil light is off, a solid check engine lamp is a diagnostic request, not a crisis.

How to read the code yourself in five minutes#

Every car sold in the US since model year 1996 has the same 16-pin OBD2 port, almost always under the dash left of the steering column. A Bluetooth LE or Wi-Fi adapter plugs in, an app on the phone reads the codes — with one iPhone-specific catch about the type of Bluetooth that we covered in detail in how to use an OBD2 scanner with an iPhone. Parts-store chains will also read the code for free at the counter. What you want from the read is not just the code:

  • Stored codes — the confirmed faults that lit the lamp.
  • Pending codes — faults seen once, not yet confirmed. An early warning.
  • Freeze frame — a snapshot of engine speed, load, coolant temperature, vehicle speed and fuel trims captured the instant the code was set. It tells you whether the fault happened at a cold idle or at 70 mph under load, which changes the diagnosis entirely — and it is the single most useful thing to show a mechanic.
The 16-pin OBD2 diagnostic connector under a car dashboard
The 16-pin OBD2 connector, standard on every car since 1996. An adapter plugs in here; no tools, no disassembly. Photo: 0x010C, CC BY-SA 4.0, via Wikimedia Commons (resized)

The code itself is not a random string. Once you know the five positions, you can place any code in the right neighbourhood before looking it up:

P
System

P = powertrain (engine, transmission, emissions). B = body, C = chassis, U = network.

0
Standard

0 = generic SAE code, identical on every brand. 1 = manufacturer-specific — needs the brand’s own dictionary.

4
Subsystem

1–2 fuel and air metering, 3 ignition and misfire, 4 emission controls, 5 speed and idle, 6 computer, 7–8 transmission.

20
Fault

The specific fault within that subsystem: 20 = catalyst system efficiency below threshold, bank 1.

How to read a trouble code: P0420 is a generic powertrain code in the emissions-control subsystem, fault 20 — the catalyst.

Every generic code has its own page in our OBD2 code directory — what it means, the likely causes and whether you can keep driving.

The 10 most common check engine codes at a glance#

  1. P0420 / P0430 — catalyst efficiency below threshold
  2. P0171 / P0174 — system too lean
  3. P0300 – P0308 — cylinder misfire
  4. P0455 / P0442 / P0456 — EVAP leak (the gas cap code)
  5. P0128 — coolant below thermostat temperature
  6. P0401 — EGR flow insufficient
  7. P0101 / P0102 — mass air flow sensor
  8. P0135 / P0141 — O2 sensor heater circuit
  9. P0011 / P0016 — camshaft timing (VVT)
  10. P0700 / P0741 — transmission fault

Comparison: cause, driving verdict and typical US cost#

Code Meaning Most likely cause Keep driving? Typical repair, 2026
P0420 / P0430 Catalyst efficiency below threshold Lazy downstream O2 sensor or exhaust leak first; the converter itself last Yes, weeks $150–350 sensor; $1,350–1,500 converter (CarMD average)
P0171 / P0174 System too lean Vacuum or intake leak, dirty MAF sensor, weak fuel delivery Yes, weeks $100 hose to $500 MAF
P0300–P0308 Random or single-cylinder misfire Worn spark plugs, failing ignition coil, injector Solid: soon. Flashing: stop $100–300 plugs; $150–400 per coil
P0455 / P0442 / P0456 EVAP system leak (large / small / very small) Loose or worn gas cap, cracked EVAP hose, purge valve Yes $0–25 cap; $75–150 smoke test; $145–175 purge valve
P0128 Coolant below thermostat regulating temperature Thermostat stuck open, low coolant, temperature sensor Yes $150–450 (CarMD average $254–324)
P0401 EGR flow insufficient Carbon in the EGR passages or valve; failed valve or sensor Yes $150–650
P0101 / P0102 Mass air flow sensor range or low input Dirty MAF sensor, intake leak, clogged air filter Yes $50–200 cleaning; $150–500 sensor (CarMD $323–346)
P0135 / P0141 O2 sensor heater circuit Burnt-out heater element, wiring or connector, fuse Yes $20–200 part + $50–200 labor (CarMD $254–287)
P0011 / P0016 Camshaft timing over-advanced / crank–cam correlation VVT solenoid, low or dirty oil, stretched timing chain Yes if quiet; rattle = stop $150–400 solenoid; $1,000–2,500 chain
P0700 / P0741 Transmission fault / torque converter clutch stuck off TCC solenoid or valve first; worn clutch material last Yes, gently A few hundred for a solenoid; $1,800–4,500 internal

Costs are US shop prices for a mainstream car, parts and labor, from CarMD’s 2025 and 2026 Vehicle Health Index and RepairPal’s 2026 estimator. Luxury and European brands run higher.

P0420 / P0430 — catalyst system efficiency below threshold#

The most expensive common code, and the most misdiagnosed. The engine computer compares the oxygen sensor before the catalytic converter with the one after it; a healthy converter smooths out the oxygen swings, a dead one passes them straight through. When the two signals look too alike, P0420 is stored (bank 1) or P0430 (bank 2, on V6 and V8 engines).

Causes, in order of likelihood: a downstream oxygen sensor that has become slow and reports a converter that is fine as failed; an exhaust leak ahead of the downstream sensor letting fresh air in; and only then a converter that is genuinely worn out — usually as the end stage of a misfire or a rich condition that was ignored for months, or of oil and coolant burning through it.

Keep driving? Yes. The car runs normally, the risk is the emissions test and, if a misfire is the root cause, the converter getting worse. Weeks are fine, not the whole year.

The cost — and the trap. CarMD puts the average catalytic converter replacement at $1,511 in 2025 (up from $1,348 the year before), and RepairPal’s national estimate for the job runs to $2,280–2,480 on many cars. A downstream oxygen sensor is $150–350. Yet catalyst replacement has been the number one check-engine repair in the US for years while oxygen sensors sit at number two with the same frequency — the two codes travel together, and the order in which a shop tests them decides whether you pay $250 or $1,500. Ask for the freeze frame and both sensors’ waveforms before agreeing to a converter, and ask that a smoke test rule out an exhaust leak. A converter that was replaced for a code caused by a sensor fails again with the same code within a year, and a well-run shop knows that.

A catalytic converter removed from a car
A catalytic converter. It reads as “failed” to the computer whenever the sensor behind it is slow — which is why P0420 is the most over-repaired code in America. Photo: Santeri Viinamäki, CC BY-SA 4.0, via Wikimedia Commons (resized)

P0171 / P0174 — system too lean#

The engine is getting more air than the computer expects for the fuel it is injecting, so the fuel trims climb to compensate until they hit their limit. P0171 is bank 1, P0174 bank 2; both together on a V-engine point at something common to both sides — the intake, the air-flow sensor or the fuel supply — rather than at one injector.

Causes: a vacuum or intake leak after the air-flow sensor (a cracked intake boot, a stuck PCV valve, a leaking intake-manifold gasket); a dirty or failing mass air flow sensor under-reporting the air; a weak fuel pump, a clogged filter or a tired upstream oxygen or air-fuel sensor.

Keep driving? Yes, for a while. A lean engine runs hotter, and a lean condition sustained for months stresses the valves and the converter, but nothing fails tomorrow. Expect rough idle, hesitation and a fuel-economy hit you can measure in your fill-up log.

Cost: anywhere from a $100 hose to a $500 air-flow sensor. The diagnosis is the value here — a smoke test finds a leak in ten minutes — so this is a code where paying for an hour of a good technician beats replacing parts by guess.

P0300 – P0308 — cylinder misfire#

P0300 is a random or multiple-cylinder misfire; P0301 to P0308 name the cylinder. The computer counts crankshaft speed dips that mean a cylinder did not fire, and this is the family of codes that makes the lamp flash.

Causes: worn spark plugs (the maintenance item most often skipped), a failing ignition coil — modern coil-on-plug engines have one per cylinder, so a single P030x with a coil is the classic case — and, less often, a clogged or leaking injector, a vacuum leak affecting one cylinder, or low compression.

Keep driving? A solid lamp with an occasional stumble: drive to the shop this week. A flashing lamp: stop. An engine misfiring hard dumps unburnt fuel into the converter, which then burns it — and a converter that overheats and melts is exactly how a $150 coil turns into the $1,500 catalyst repair above. The two codes are linked in the statistics for a reason.

Cost: spark plugs $100–300 for a set; an ignition coil $150–400 installed, with CarMD averaging $480 for the coil-plus-plugs job in 2025. The smart move when one coil fails on a high-mileage engine is to swap it with a neighbouring cylinder, clear the code and see whether the misfire follows the coil — a five-minute test that replaces a lot of guessing.

P0455 / P0442 / P0456 — EVAP leak, the gas cap code#

The evaporative emissions system keeps fuel vapour from the tank out of the atmosphere, and the computer tests its seal by pulling a slight vacuum on the tank and watching whether it holds. P0455 is a large leak, P0442 a small one, P0456 a very small one.

Causes: a gas cap that was not clicked shut after the last fill-up, or whose seal has hardened with age — by some shop counts about half of all P0455s; a cracked or disconnected EVAP hose; a purge or vent valve stuck open; a damaged charcoal canister.

Keep driving? Yes. Nothing in the drivetrain is affected; the only consequences are a whiff of fuel smell and a failed emissions test.

Cost: $0 for tightening the cap, $15–25 for a new one, $75–150 for a smoke test if it isn’t the cap, $145–175 for a purge valve (CarMD average). The gas cap held a place in CarMD’s top five check-engine repairs from 2011 until it finally dropped to seventh in the 2025 index — still about 4% of every lit lamp in the country. If your lamp came on the day after a fill-up, tighten the cap first and give the car a few drives to re-test itself before spending a cent.

An open fuel filler door with a black gas cap printed “Tighten to click — a loose cap may turn on service or check engine light”
The manufacturer printed the diagnosis on the part: a cap that wasn’t clicked shut is the cheapest check engine light there is. Photo: Christopher Ziemnowicz, public domain, via Wikimedia Commons (resized)

P0128 — coolant below thermostat regulating temperature#

The engine is taking too long to warm up, or never reaches the temperature the thermostat is supposed to hold. The computer expects a certain coolant temperature within a certain time of a cold start; if it does not arrive, P0128.

Causes: a thermostat stuck open (by far the most common — the engine is being cooled from the first minute), low coolant, a coolant temperature sensor reading low, or in winter a cooling fan stuck on.

Keep driving? Yes. The downside is hidden: a cold-running engine burns more fuel, wears faster, gives weak cabin heat, and never runs the emissions self-tests that need a warm engine — so its readiness monitors stay incomplete and it fails the inspection for a different reason.

Cost: $150–450 for a thermostat, CarMD averaging $254–324. One of the few codes where the part is almost always the diagnosis.

P0401 — EGR flow insufficient#

Exhaust gas recirculation feeds a little exhaust back into the intake to lower combustion temperatures and nitrogen-oxide emissions. When the computer commands the valve open and does not see the expected effect, P0401.

Causes: carbon clogging the EGR passages or the valve itself — the most common by a wide margin and often a cleaning job, not a part; a failed EGR valve or its solenoid; a faulty position or differential-pressure sensor.

Keep driving? Yes. You may hear pinging or knock under load on hot days as combustion temperatures rise, and premium fuel is a stopgap, not a fix.

Cost: $150–650, from a cleaning to a new valve. On many engines the passages can be cleaned with the valve off; ask before agreeing to the part.

P0101 / P0102 — mass air flow sensor#

The mass air flow sensor measures the air entering the engine; the computer sizes every injection on it. P0101 means the reading is out of the plausible range for the engine’s speed and load, P0102 that the signal is too low.

Causes: a dirty sensor element (oil from an over-oiled aftermarket air filter is the classic), an intake leak between the sensor and the throttle, or a clogged air filter; a genuinely dead sensor is the last on the list.

Keep driving? Yes. Symptoms are rough idle, hesitation, poor fuel economy — the computer falls back to estimating the air from throttle position and engine speed and does it worse.

Cost: a can of MAF cleaner is $10 and often the whole repair; a new sensor $150–500 installed, CarMD averaging $323–346. A shop that replaces the sensor without cleaning it first or checking the intake for leaks is doing the expensive step first.

P0135 / P0141 — oxygen sensor heater circuit#

Every oxygen sensor has a heater so it starts working within seconds of a cold start rather than minutes. P0135 is the heater of the upstream sensor on bank 1, P0141 the downstream one.

Causes: the heater element inside the sensor has burnt out — the sensor is replaced as a unit; a chafed wire or a corroded connector under the car; a blown fuse on the heater circuit, which is the ten-minute check to do first.

Keep driving? Yes. Until the sensor warms up on its own, the engine runs on a default fuel map — rich, and a little thirsty. Left for months it drags the fuel trims and, indirectly, the converter.

Cost: $20–200 for the sensor plus $50–200 labor; CarMD’s average oxygen sensor repair is $254–287. Watch that the shop replaces the sensor the code names — bank 1 sensor 1 and bank 1 sensor 2 are different parts in different places.

P0011 / P0016 — camshaft timing over-advanced or crank–cam correlation#

Variable valve timing lets the computer shift the camshaft relative to the crankshaft. P0011 says the cam is further advanced than commanded; P0016 says the crankshaft and camshaft position sensors disagree about where the cam is. These are the codes that can be a $150 solenoid or a $2,000 timing chain, and the difference is audible.

Causes: a sticking VVT solenoid or oil-control valve; oil that is low, old or the wrong grade, so the hydraulic cam phaser cannot move on time — VVT engines are unforgiving of stretched oil changes; and a stretched or jumped timing chain with worn guides, usually on engines past 100,000 miles.

Keep driving? A single P0011 on a quiet engine with fresh oil: yes, to the shop. P0011 and P0016 together, or either one with a rattle on a cold start: stop. A chain that has jumped a tooth can jump another, and pistons meeting valves is the end of the engine.

Cost: $150–400 for a solenoid, often an oil change first; $1,000–2,500 for a timing chain job. Before any of it, check the oil level and the date of the last change — that alone resolves a surprising share of P0011s.

P0700 / P0741 — transmission fault#

P0700 is not a diagnosis; it is the transmission control module asking the engine computer to turn the lamp on. The real code sits in the transmission module’s own memory, and a generic scan may only show the pointer. P0741 is one of the common ones behind it: the torque converter clutch is not locking up when commanded.

Causes: a failed torque converter clutch solenoid or a sticking valve in the valve body; low, burnt or wrong transmission fluid; and, on high-mileage cars, worn clutch material inside the torque converter.

Keep driving? Yes, gently — the transmission may hold gears longer or refuse to lock up at cruise, which shows up as engine speed a few hundred rpm higher on the highway and worse fuel economy. Ignoring it for long cooks the fluid and turns a solenoid into a rebuild.

Cost: a few hundred dollars for a solenoid or fluid service; $1,800–4,500 when the torque converter or the internals are worn. Insist on reading the transmission module’s own codes before anyone quotes the second number.

Three traps that turn a code into a bill#

  1. The catalyst-for-a-sensor swap. Described above, and worth repeating because it is the single largest avoidable expense on this list. If a shop quotes a converter for P0420, ask what ruled out the downstream sensor and an exhaust leak. A second opinion costs a $25 adapter and ten minutes.
  2. Clearing the code before the inspection — or before a sale. Clearing resets the readiness monitors; a car with incomplete monitors is rejected at the OBD emissions test even with the lamp off, and it takes 50–100 miles of mixed driving to complete them. Since 2010 the permanent codes (mode 0A) survive any clear and any battery disconnect until the car verifies the repair itself, so an inspector — or a buyer with a scanner — can see that something was hidden. If you are the buyer, the readiness monitors showing “not ready” on a used car is a reason to ask what was cleared and when.
  3. Walking in without the freeze frame. A code alone invites the widest possible estimate. A code plus the freeze frame — cold engine, 1,100 rpm, 12% load, fuel trims at +25% — narrows the fault to a vacuum leak at idle before anyone opens the hood. Screenshot it, or keep it in the car’s history, and the conversation at the counter starts from the evidence. We wrote about that asymmetry at length in how to tell whether a mechanic is overcharging you.

When the code shows up in your fuel log first#

Most of the faults above degrade fuel economy long before the lamp comes on, because the computer compensates — it adds fuel to cover a lean reading, runs the default map while a heater circuit is open, keeps the converter’s monitor on hold while the engine never warms up. CarMD’s 2026 report puts it plainly: a failing oxygen sensor left alone can cut fuel economy by as much as 40%, and each of the five most common check-engine faults costs fuel if ignored. Which means an honest fill-up log — kept the full-tank way — is a diagnostic tool: a car that averaged 31 mpg for a year and drifts to 27 without a change in driving style or season is telling you the same thing the lamp will tell you in a month. Brimly draws the trend and flags the drift; when the code finally appears, the two records sit in the same car history, and “since when?” already has an answer.

The same log answers the question the shop will ask next — when were the plugs, the filter and the oil last changed? — from the maintenance-by-mileage checklist rather than from memory. For a sense of how these codes cluster on specific cars, our teardown of America’s best-selling cars and their known problems and the verified vehicle knowledge base behind the app list the documented weak points model by model.

Frequently asked questions#

Can I keep driving with the check engine light on?

If the light is solid and the car drives normally, yes — for days, not months. Read the code before deciding: an EVAP code is a loose gas cap, a misfire is not. If the light is flashing, the engine is misfiring right now and unburnt fuel is overheating the catalytic converter; pull over, shut the engine off and get the car towed or driven the shortest possible distance at low load.

What is the most common check engine light code?

By repair frequency, catalyst codes (P0420 / P0430) and oxygen-sensor codes lead the US in CarMD’s Vehicle Health Index, each about 6% of all check-engine repairs, followed by misfires (P0300 family) and mass air flow codes. The loose gas cap (P0455 / P0442 / P0456) was in the top five for over a decade and still accounts for roughly 4% of lit lamps.

What does a flashing check engine light mean?

A flashing lamp means an active misfire severe enough to damage the catalytic converter — raw fuel is burning inside it. Stop driving as soon as it is safe. A solid lamp is a stored fault that needs attention soon but is not an emergency.

Will disconnecting the battery clear the check engine light?

On most cars it clears the stored codes and the lamp, exactly like a scanner’s clear command — and with the same result: the fault returns if it is real, the emissions readiness monitors reset to “not ready”, and since 2010 permanent codes (mode 0A) survive both the battery and the scanner until the car verifies the repair itself.

Will I pass an emissions test with the check engine light on?

No. In every US state or county that runs an OBD emissions inspection, a lamp commanded on is an automatic fail the inspector cannot override, and a car whose readiness monitors are incomplete because the codes were just cleared is rejected as well. Fix the fault, then drive 50–100 mixed miles before the test.

How much does a check engine light diagnostic cost?

Parts-store chains read the code for free; independent shops charge about $60–$180 for a proper diagnosis and dealerships $100–$400, with RepairPal’s 2026 estimator at $122–$233. A $25 Bluetooth LE adapter and an app read the same code, the freeze frame and the pending faults in two minutes, so you walk into the shop already knowing the neighbourhood.

Why did the check engine light come back after I cleared it?

Because clearing removes the record, not the fault. The engine control unit runs the same self-test on the next drives and stores the same code once the fault repeats. If the lamp returns after a repair, the repair missed the cause — the classic case is a new catalytic converter for a P0420 that was really a lazy oxygen sensor or an exhaust leak.

Does a check engine light affect fuel economy?

Often yes, and sometimes badly. CarMD’s 2026 report says a failing oxygen sensor left alone can cut fuel economy by as much as 40%, and each of the five most common check-engine faults costs fuel if ignored. A slow creep in your own fill-up log is frequently the first symptom, weeks before the lamp.

The takeaway#

Solid: read the code this week. Flashing: stop the car. Then let the code, not the lamp, set the budget — a gas cap and a smoke test at one end, a timing chain at the other, and in between a run of $150–500 repairs that become $1,500 only when they are guessed at or ignored. Read all three memories and the freeze frame, check the cheap cause before the expensive part, never clear a code the night before an inspection, and keep the fuel log that notices the fault before the dashboard does. Brimly does the reading, the explaining and the logging on your iPhone — offline, with a dictionary of 2,700 generic codes built in and, one tap away, an assistant that knows your exact car and will audit the shop’s estimate line by line.