How to Read Check Engine Light Codes
Reviewed by GarageDex editorial
GarageDex's guide to reading check engine codes with a basic OBD-II scanner, which costs less than one diagnostic fee and takes two minutes. A code is not a diagnosis: P0420 says the catalytic converter's efficiency is low, not that the converter is bad, and the fault that caused it is often an oxygen sensor or an exhaust leak. Read the code, then find the cause before buying parts.
For your exact carLook up what your code meansLook it upStep by step
- Find the OBD-II port: a 16-pin trapezoid connector under the dashboard on the driver's side, within about two feet of the steering wheel, often near the hood release or above the pedals. Every car sold in the US since 1996 has one.
- With the engine off, plug the scanner in. Turn the key to ON (dash lights on, engine not running) or press start without touching the brake.
- Choose Read Codes. Write down every code, including pending codes, and the freeze frame data if the scanner shows it (engine speed, temperature and load when the fault was logged).
- Look up each code. The first letter and digit tell you the system (P0 is a generic powertrain code, P1 is manufacturer-specific, B is body, C is chassis, U is network).
- Fix the cause, then clear the codes with the scanner or let the car clear them itself after several drive cycles without the fault. If the light returns, the fault is still there.
Reading the code
Codes look like P0301 or P0455. The letter is the system: P for powertrain (engine and transmission), B for body, C for chassis, U for network. The next digit is 0 for a generic code shared by every make or 1 for a manufacturer-specific one. The last three digits identify the fault. Look up your code for the likely causes and what to check first, and see the most common check engine light causes.
What you need
A basic code reader does this whole job. A scanner with live data shows sensor readings while the engine runs, which is what turns a code into a diagnosis. Bluetooth dongles that pair with a phone app are the cheapest way to get live data.
Tools used in this guide
- OBD2 scanner with live dataReads codes and shows sensor readings so you can find the causeView on Amazon
- Bluetooth OBD2 adapterPairs with a phone app; the cheapest way to get live dataView on Amazon
These tools fit any vehicle. As an Amazon Associate we earn from qualifying purchases, at no extra cost to you.
Solid light vs flashing light
A steady light means a fault is logged and the car can usually be driven to be checked. A flashing light means an active misfire that is dumping unburned fuel into the exhaust, which can destroy the catalytic converter within miles. Pull over. See solid vs flashing check engine light.
After the fix
Clear the code with the scanner, or drive normally and let the car clear it after the monitors run clean. Before an emissions test, the readiness monitors need to complete, which takes a mix of city and highway driving over a few days after a clear. See how to reset the check engine light.
Frequently asked
Where is the OBD-II port on my car?
Under the driver's side of the dashboard, within about two feet of the steering wheel, usually at knee height near the hood release, the fuse panel or above the pedals. It is a 16-pin trapezoid socket. A few cars hide it behind a small cover or in the center console.
Can I read check engine codes without a scanner?
Most auto parts chains will read codes for free in the parking lot. Some older cars (mainly pre-2000s Chrysler and some GM models) show codes by cycling the key three times and reading flashes or the odometer. For anything modern, a scanner is the answer, and basic ones cost about the same as a tank of gas.
Should I clear the code after reading it?
Not until you have written it down and, ideally, fixed the cause. Clearing erases the freeze frame data that tells you when the fault happened, and it resets the readiness monitors an emissions test looks for. The light will come back if the problem is still there.
What is the difference between a stored and a pending code?
A pending code was detected once and is waiting for a second occurrence to confirm it; the light is usually not on yet. A stored (confirmed) code has been seen on enough drive cycles to turn the light on. A flashing light means an active misfire and you should stop driving to protect the catalytic converter.
Need your car's exact spec?
Look up what your code means