Diagnostic Trouble Code

P0312 — Cylinder 12 Misfire Detected

What it means, how urgent it is, the most likely causes, and the exact order to diagnose it — then pick your vehicle below for model-specific repair guides and parts.

Find P0312 for your vehicle

Pick your make and model for model-specific repair guides, parts, and costs.

What P0312 means

P03012 means the engine computer (PCM) detected that cylinder 12 is misfiring — firing weakly, intermittently, or not at all. The PCM watches the crankshaft's rotation speed in tiny slices. Every cylinder's combustion pulse should push the crankshaft along evenly; when cylinder 12 fails to contribute its share, the crankshaft hesitates each time that cylinder comes up in the firing order. Once the pattern is consistent enough, the computer stores P03012 and turns on the check engine light. A cylinder-specific code is actually good news diagnostically: it tells you exactly where to look, unlike P0300 (random misfire), which could be anything affecting the whole engine.

Applies to 378 vehicles across 41 makes.

⚠️ How urgent is it?

A steady check engine light with P03012: drive gently and diagnose it soon. A misfiring cylinder dumps unburned fuel into the exhaust, wastes gas, and over time can overheat and destroy the catalytic converter — one of the priciest parts on the car. A flashing check engine light with P03012: the misfire is severe right now. Raw fuel is reaching the exhaust and can melt the converter's internals in a single drive. Ease off, avoid hard acceleration, and get it checked immediately. If the engine shakes violently, stalls, or you smell strong fuel or rotten-egg odor, pull over and tow it.

Most likely causes

  1. Worn, fouled, or incorrectly gapped spark plug in cylinder 12 — the single most common cause.
  2. A failing ignition coil on cylinder 12.
  3. A clogged or failing fuel injector on cylinder 12.
  4. Low compression in cylinder 12 from a leaking valve, worn rings, or head gasket issue (less common, more serious).
  5. A vacuum leak near cylinder 12’s intake runner.
  6. Wiring or connector problems at the coil or injector for cylinder 12.

How to diagnose P0312

  1. Read freeze-frame data and check for companion codes. P0300 alongside it suggests a broader issue; P0171 points to a lean condition affecting that cylinder.
  2. Inspect cylinder 12's spark plug. Pull it and check for worn electrodes, oil or carbon fouling, and cracks in the ceramic. Replace the full set if worn — plugs are cheap, labor is not.
  3. Swap-test the ignition coil. Move cylinder 12's coil to another cylinder, clear the codes, and drive. If the misfire code follows the coil to the new cylinder, the coil is bad.
  4. Test the fuel injector. If ignition checks out, listen to the injector with a stethoscope for a crisp click, or swap it like the coil to see if the misfire moves.
  5. Check compression on cylinder 12. If ignition and fuel test good, a compression test reveals mechanical problems like leaking valves or worn rings.
  6. Inspect the wiring. Look for chafed, melted, or oil-soaked wiring and loose connectors at cylinder 12's coil and injector.

General diagnostic information, not a factory service procedure. If you're unsure, have a qualified technician confirm the diagnosis before buying parts.