Engine Misfire: Single-Cylinder vs Random — Evidence-Driven Framework
A symptom-first framework for misfire: single-cylinder vs random, ignition, fuel, compression, air leak, timing, mechanical, swap tests, relative compression and scope — with the link to P0300.
Pressure, voltage, torque, pin and waveform values on this page are guidance only. Vehicle-specific verified specification required before acting on any test.
Symptom-first framework
- Clarify complaint — under load? at idle? cold? flashing MIL?
- Confirm operating condition — load, RPM, temperature
- Retrieve DTCs — P0300 (random) vs P0301–P0312 (cylinder-specific)
- Inspect freeze-frame / live data — counters, trims, load
- Identify affected system — ignition, fuel, air, mechanical, sensor
- Form differential
- Select decisive test
- Update hypothesis
- Confirm cause
- Repair
- Verify — under the load that misfired
Single-cylinder vs random
The first split:
- P0301–P0312 / one cylinder counter high → cylinder-specific: that cylinder's coil, plug, injector, compression, valve
- P0300 / counters spread → random/whole-engine: air leak, fuel pressure/volume, MAF, fuel quality, timing, crank-signal integrity
This single distinction reshapes the hypothesis list.
Ignition
- Coil / plug / lead — the leading single-cylinder cause
- Swap test — move the coil/plug to another cylinder; does the misfire follow?
- Coil trigger — confirm the ECM commands the coil (scope/test light)
- Under load — coil breakdown under load is a classic
Fuel
- Fuel pressure / volume — low under load → random misfire
- Injector — restricted (lean on one cylinder) or leaking (rich)
- Fuel quality — water, old fuel, wrong octane → random misfire
- Fuel trims — lean trims + misfire → air/fuel, not ignition
Compression
- Compression / leak-down — low on one cylinder → misfire on that cylinder; on several → timing or wear
- Relative compression — cranking-current test, fast screen
Air leak
- Vacuum leak → random misfire, lean trims at idle
- Smoke/propane test
- See P0171.
Timing
- VVT / cam phase mistimed → random misfire, correlation codes
- Timing chain stretch → misfire + rattle
- See the Crank/Cam Correlation guide.
Mechanical
- Burnt valve — low compression on one cylinder, leak-down confirms
- Valve seat / carbon (DI intake ports) — random or cylinder-specific
- Head gasket between cylinders — two adjacent cylinders low
Swap tests
The swap test isolates a part:
- Coil swap — misfire follows the coil → coil; stays → injector/compression/wiring
- Plug swap — same logic
- Injector swap (where accessible) — misfire follows the injector → injector
Swap tests are faster and more decisive than replacing parts on a guess.
Relative compression
A relative-compression test (scan-tool cranking-current test) compares cylinders' cranking current — a low-current cylinder has low compression. It is a fast screen before a full compression test.
Scope
- Crank sensor — a noisy crank signal corrupts misfire detection; scope confirms signal integrity before trusting misfire data. See the Crank Sensor Waveform guide.
- Ignition — coil primary/secondary waveform (where accessible) shows coil breakdown
- Injector — injector current/voltage waveform confirms command and driver
Relationship with P0300
P0300 is the random/multiple-cylinder misfire code. This guide is the symptom-first framework behind it. The code reports the symptom; the counters, trims, and tests find the cause.
Links
- P0300 — random misfire DTC
- P0171 — lean (a common misfire co-cause)
- Fuel Trims — mixture evidence
- Rough Idle — the idle-quality framework
- Crank Sensor Waveform — misfire-detection integrity
Common mistakes
- Replacing all coils/plugs without reading per-cylinder counters
- Not distinguishing single-cylinder from random
- Ignoring fuel trims (lean misfire is often air/fuel, not ignition)
- Not swap-testing before replacing
- Trusting misfire data when the crank signal is questionable
- Overlooking fuel quality
Related DTCs
Related MechanIQ guides
Diagnosing this symptom on a real vehicle?
Start a MechanIQ diagnosis — import your scan data and let the evidence engine find the next best test.