Powertrain Codes · Check Engine Light · 1996+ Vehicles

P-Codes — Powertrain
Diagnostic Trouble Codes

The most common OBD-II codes. P-codes cover engine, fuel/air, misfires, emissions, timing, injectors, and transmission — everything that affects drivability. Find yours fast.

🔦 Check Engine Light codes
💨 Fuel · Air · Ignition
🌿 Emissions & EVAP
⚙️ Transmission
⏱️ VVT & Timing
Instant preview below — or hit Look Up for the full code library
🚨

Flashing Check Engine Light? Act Now.

A flashing CEL means an active misfire is happening right now. Unburned fuel entering the exhaust overheats the catalytic converter — a flashing light ignored for even 20 minutes of driving can destroy a $800+ converter. Reduce load immediately, pull over when safe. A solid, steady light is not an emergency but still needs diagnosis.

// Browse P-Codes by System
// Top 25 P-Codes — First Checks & Cost Estimates
CodeNameSeverityFirst CheckCost RangeGuide
P0420Catalyst Efficiency Below Threshold (B1)⚠ ModerateExhaust leak near O2 sensor, then waveform check$60–$2,500+Guide →
P0300Random/Multiple Cylinder Misfire⛔ SeriousSwap coils between cylinders to isolate the fault$80–$600Guide →
P0171System Too Lean (Bank 1)⚠ ModerateListen for vacuum leak hiss, inspect intake boots$50–$400Guide →
P0301Cylinder 1 Misfire⛔ SeriousSwap cyl 1 coil to another — if misfire moves, coil is bad$80–$350Guide →
P0302Cylinder 2 Misfire⛔ SeriousSwap coil from cyl 2 to confirm fault$80–$350Guide →
P0303Cylinder 3 Misfire⛔ SeriousSwap coil from cyl 3, inspect plug and check injector$80–$350Guide →
P0304Cylinder 4 Misfire⛔ SeriousSwap coil from cyl 4, check spark plug gap$80–$350Guide →
P0174System Too Lean (Bank 2)⚠ ModerateP0171 + P0174 together = large vacuum or intake leak$50–$400Guide →
P0172System Too Rich (Bank 1)⚠ ModerateCheck fuel pressure, inspect O2 sensor, look for leaking injectors$80–$500Guide →
P0128Coolant Temp Below Thermostat Temp✓ LowWatch coolant gauge on cold start — barely reaching middle = bad thermostat$80–$250Guide →
P0430Catalyst Efficiency Below Threshold (B2)⚠ ModerateP0420 + P0430 together = check for oil burning before replacing cats$60–$2,500+Guide →
P0442EVAP Small Leak Detected✓ LowTighten or replace gas cap — fixes ~30% of P0442 cases$8–$300Guide →
P0455EVAP Large Leak Detected✓ LowGas cap first, then inspect EVAP hoses and purge valve$8–$400Guide →
P0011Intake Cam Timing Over-Advanced (B1)⚠ ModerateCheck oil level and viscosity — VVT systems depend on oil pressure$100–$800Guide →
P0101MAF Sensor Range/Performance⚠ ModerateClean MAF with MAF cleaner spray — free fix that works ~40% of the time$0–$350Guide →
P0131O2 Sensor Low Voltage (B1S1)⚠ ModerateCheck for exhaust leak before the sensor before replacing it$120–$350Guide →
P0507Idle Control System RPM High✓ LowClean throttle body — carbon buildup is the #1 cause$0–$200Guide →
P0401EGR Flow Insufficient⚠ ModerateInspect EGR valve for carbon buildup — cleaning often resolves it$0–$400Guide →
P0456EVAP Very Small Leak✓ LowGas cap first, then purge valve and vent hoses$8–$350Guide →
P0016Crankshaft/Camshaft Position Correlation (B1)⛔ SeriousCheck oil level first, then inspect cam/crank sensors and tone wheels$100–$900Guide →
P0305Cylinder 5 Misfire⛔ SeriousSwap cyl 5 coil to confirm — check plug if coil swap doesn’t move misfire$80–$350Guide →
P0340Camshaft Position Sensor Circuit (B1)⛔ SeriousCheck CMP sensor wiring and connector before replacing sensor$80–$350Guide →
P0700Transmission Control System Malfunction⛔ SeriousP0700 is a flag — read companion codes to find the actual fault$150–$1,500Guide →
P0118Engine Coolant Temp Circuit High Input⚠ ModerateCheck ECT connector for corrosion — test resistance cold vs warm$80–$250Guide →
P0351Ignition Coil A Primary/Secondary Circuit⛔ SeriousInspect coil wiring for damaged insulation before swapping the coil$80–$300Guide →

Showing 25 most searched P-codes. Search the full code library →

// System Deep-Dives
💨

Fuel & Air Metering P0100–P0199

These codes cover the sensors and systems that control the air/fuel mixture — MAF sensors, MAP sensors, O2 sensors, and fuel trim calculations. They are some of the most misdiagnosed codes because they often point to a root cause upstream of the sensor that triggered them.

The most important diagnostic tool here is fuel trim data. Short-term fuel trim (STFT) shows what the ECU is correcting right now. Long-term fuel trim (LTFT) shows the accumulated learned correction. Consistent positive trims (+10% or more at idle) indicate a lean condition — usually a vacuum leak, failing MAF, or low fuel pressure. Consistent negative trims indicate rich running — injector leak, high fuel pressure, or upstream O2 issue.

First check on any lean code: Listen carefully for a hissing sound at idle with the hood open. Spray a small amount of carb cleaner around intake boots, vacuum hoses, and the throttle body gasket — if idle RPM changes when you spray a particular spot, you found the leak.

Misfire & Ignition P0300–P0399

Misfire codes are triggered when the PCM detects that one or more cylinders failed to fire correctly. P0300 means multiple or random cylinders — P0301–P0308 identify a specific cylinder. The cause can be ignition-related (plugs/coils), fuel-related (injectors/pressure), air-related (vacuum leaks or compression), or mechanical (bent valve, worn rings).

The coil swap test is the fastest diagnosis: swap the coil from the misfiring cylinder to a known-good cylinder. If the misfire moves with the coil, the coil is bad. If the misfire stays on the same cylinder, the problem is the spark plug, injector, or a compression issue on that cylinder.

Flashing CEL with a misfire code = active misfire right now. Pull over safely and reduce load. Driving with an active misfire pushes raw fuel into the exhaust, rapidly overheating the catalytic converter substrate. A converter destroyed by a misfire will not be covered by warranty and costs $500–$2,500 to replace.
🌿

Emissions, Catalyst & EVAP P0400–P0499

This is the range most drivers encounter — catalyst efficiency codes (P0420/P0430), EGR flow codes, and EVAP leak codes. These are the most commonly misdiagnosed codes in this whole range because they’re often blamed on the expensive part (catalytic converter, EGR valve) when the real cause is cheaper to fix.

For EVAP codes: always start with the gas cap. A loose or cracked cap causes P0442 and P0455 in a significant percentage of cases and costs nothing to fix. For P0420: exhaust leaks near the upstream O2 sensor are the second most common cause after a genuinely degraded converter — and much cheaper to repair.

P0420 + a misfire code together: Fix the misfire first. Active misfires are one of the fastest ways to destroy a catalytic converter. Replacing the cat while a misfire is active will cause the new one to fail within weeks.
⏱️

Engine Timing & VVT P0010–P0099

Timing codes in this range cover variable valve timing (VVT) system faults and cam/crank correlation errors. These codes are almost always oil pressure dependent — the most common root cause is low oil level, degraded oil viscosity, or a clogged VVT solenoid screen. Check oil before spending money on parts.

P0016 (cam/crank correlation) in particular can indicate a stretched timing chain on high-mileage engines with poor oil change history. If P0016 appears with a rattling noise on startup that clears when warm, have the timing chain inspected before driving further.

Before replacing VVT solenoids: Change the oil and filter with fresh oil of the correct weight. A clogged solenoid screen or thickened oil is the most common cause of P0011/P0012/P0021 codes — and a $35 oil change sometimes clears them permanently.
💉

Injector Circuits P0200–P0299

Injector circuit codes (P0201–P0208) indicate the ECU has detected a fault in a specific injector’s electrical circuit — open circuit, short to ground, or resistance out of specification. A fuel smell, rough idle on one cylinder, or hydrolocked engine are signs a leaking injector is involved.

Before replacing an injector, inspect the wiring connector at the injector itself — corrosion, broken pins, and chafed wires are common and far cheaper to fix than a new injector. Test injector resistance with a multimeter — a healthy injector typically reads 12–16 ohms on most port injection systems (varies by manufacturer).

⚙️

Transmission P0700–P0999

P0700 is a generic alert — it means the Transmission Control Module (TCM) has logged its own fault codes and is requesting MIL illumination. P0700 alone tells you very little. You must read the companion transmission codes (often P0730–P0780 range for shift and solenoid faults, or P0790s for pressure control) to diagnose the actual problem.

Many transmission codes respond well to a fluid and filter service if the fluid is dark or burnt-smelling. Shift solenoids are the most common individual component failure. If the vehicle is in limp mode (fixed gear, limited speed), don’t drive it further until the specific fault is diagnosed.

Limp mode + P0700: Read all companion codes before doing anything else. A scanner that only reads engine codes will miss the transmission-specific DTCs that tell you what actually failed.
🤖

Got a Code But Not Sure Where to Start?

Describe your code, vehicle, and symptoms to our free AI Diagnostic tool. It ranks the most likely causes, tells you what to check first, and gives you a drive/park verdict — in plain English, for free.

⚡ Free AI Diagnostic
// Frequently Asked Questions
Bank 1 is the side of the engine containing cylinder number 1. Bank 2 is the opposite side. Inline 4-cylinder engines have only one bank so all codes default to Bank 1. On V6 and V8 engines, Bank 1 location varies by manufacturer — on most Ford and GM V8s it’s the passenger side, on most Toyota V6s Bank 1 is the rear bank (firewall side). Always confirm Bank 1 location for your specific engine before buying parts.
A stored (confirmed) code has met the threshold to illuminate the check engine light — usually requires the fault to be detected twice over two drive cycles. A pending code has been detected once but hasn’t triggered the light yet — it’s often the root cause of other stored codes. A permanent code cannot be cleared by a scanner and only goes away once the vehicle’s monitors confirm the fault no longer exists. Always check for pending codes alongside stored codes — they often reveal the actual root cause.
Fix the most fundamental fault first — the one that’s most likely causing the others. A fuel or air delivery fault (lean/rich code) can trigger both misfire codes and catalyst efficiency codes. Fix the lean condition and the others may clear. Priority order: 1) Safety-critical codes (misfire + flashing CEL, brake, charging system). 2) Fuel/air delivery codes (lean, rich, MAF). 3) Ignition codes (misfires without flashing CEL). 4) Downstream codes (catalyst, O2 sensor). 5) Emissions codes (EVAP, EGR). Use our AI Diagnostic to help identify which code is the root cause.
Generic P-codes (those with 0 as the second character — P0xxx) are standardized by SAE across all OBD-II vehicles. P0420 means catalyst efficiency below threshold on every 1996+ vehicle regardless of make. Manufacturer-specific P-codes (P1xxx) are unique to each brand and require a vehicle-specific lookup. That said, while the code definition is standardized, the most common root causes and first checks can vary significantly by make and model — which is why vehicle-specific guidance matters.
Because the underlying fault still exists. Clearing codes erases the stored fault history and turns off the check engine light, but if the fault condition is still present, the PCM will detect it again on the next relevant drive cycle and re-set the code. Clearing codes without fixing the problem is not a repair — it’s a temporary visual reset. It also resets readiness monitors, which can cause an emissions test failure even if the fault itself doesn’t affect drivability.
// Related Pages
// Found this useful? Share it