Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All Articles →
🧭 Diagnostic Flowchart 🎬 Helpful Videos 🛍️ Shop This Part

P0304 on 2009-2019 Toyota Corolla: Cylinder 4 Misfire Causes and Fixes

For a 2009-2019 Toyota Corolla, code P0304 almost always points to a bad ignition coil or a worn spark plug on cylinder 4. The most common fix is replacing the faulty ignition coil (OEM Part #90919-02258). A new aftermarket ignition coil costs about $30-$75 and is a very simple 10-minute DIY fix requiring only a 10mm socket.

19 minutes to read 2009-2019 Toyota Corolla
Most Likely Cause
Faulty Ignition Coil
Difficulty
1/5
Est. Time
0.8 hrs
DIY Doable?
✅ Yes
Shop Labor
$100 – $350
Parts Price
$30 – $150
⚠️ Drivable, but... — It is not recommended to drive for an extended period. A persistent misfire can cause unburned fuel to enter the exhaust, potentially damaging the expensive catalytic converter. If the check engine light is flashing, it indicates a severe misfire that could cause catalyst damage quickly, and the vehicle should be parked.
Key Takeaways
  • P0304 means your Corolla has a misfire in cylinder 4, the one closest to the driver's side.
  • The most likely cause is a bad ignition coil, which is a simple and inexpensive DIY fix.
  • Always perform the 'coil swap test' before buying any parts to confirm the coil is the problem.
  • If the coil is not the issue, check the spark plug next.
  • Driving with a flashing check engine light can cause expensive damage to your catalytic converter, so address the issue promptly.
The code P0304 indicates that your Toyota Corolla's engine computer (PCM) has detected a misfire in cylinder number 4. A misfire occurs when the air-fuel mixture in the cylinder fails to ignite properly, leading to a loss of power and a rough-running engine. The '04' in the code specifically points to the fourth cylinder as the source of the problem. This is a specific fault, not a random misfire (which would be code P0300).

What's Unique About the 2009-2019 Toyota Corolla

The 2ZR-FE engine in this era of Corolla is generally very reliable, and misfire codes are straightforward. Unlike some newer Toyota engines that have TSBs for cold-start misfires due to complex valvetrain issues, the P0304 on the 2ZR-FE is almost always a basic ignition system failure. The most common culprits are the individual coil-on-plug ignition coils, which are known to fail with age and heat cycles. The diagnostic process is simple and very DIY-friendly, with countless owners successfully performing the 'swap test' at home.

Generation note: This guide covers the 10th (2009-2013) and 11th (2014-2019) generations of the Toyota Corolla. Both generations use the 1.8L 2ZR-FE engine with a similar coil-on-plug ignition system, making the causes and diagnostic steps for P0304 nearly identical between them.

Symptoms You May Notice

  • Rough or shaky idle
  • Engine hesitation or stumbling during acceleration
  • Flashing or solid Check Engine Light
  • Noticeable loss of power
  • Decreased fuel economy
  • Smell of unburned gasoline from the exhaust
  • Engine vibration felt in the cabin
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing all four spark plugs and coils without performing the 'swap test' first. This can be expensive and unnecessary if only one coil is bad.
  • Assuming a recently replaced part is good. Forum users frequently advise to 'never assume anything is good because it was recently replaced' and to perform the swap test even on new parts.

Most Likely Causes

  1. Faulty Ignition Coil 🔴 High Probability → Shop Ignition Coil Coil-on-plug ignition coils are subjected to significant heat and vibration directly on top of the engine, and they are a common failure item on most modern vehicles as they age. This is the most frequently cited cause for a P0304 on this Corolla in owner forums.
    How to confirm: Perform the 'swap test'. Swap the ignition coil from cylinder 4 with the one from cylinder 3. Clear the codes and drive the vehicle. If the code changes to P0303 (Cylinder 3 Misfire), the ignition coil is confirmed to be faulty. This is the universally recommended first step.
    Typical fix: Replace the faulty ignition coil. It is held in place by a single 10mm bolt and can be replaced in under 10 minutes. 🎬 Watch: A quick walkthrough on replacing your ignition coils.
    Est. part cost: $30-$75
  2. Worn or Fouled Spark Plug 🟡 Medium Probability → Shop Spark Plug Spark plugs are a regular maintenance item. The original Denso Iridium plugs have a long life (up to 120,000 miles), but can still fail or become fouled by oil consumption, which can be an issue on some higher-mileage 2ZR-FE engines.
    How to confirm: After confirming the coil is good, remove the spark plug from cylinder 4. Inspect it for wear (rounded electrode), oil, or carbon fouling. A spark plug covered in oil is a strong indicator of both the misfire's cause and a separate oil consumption problem. Compare it to a plug from a different cylinder.
    Typical fix: Replace the spark plug. It is recommended to replace all four spark plugs at the same time with the correct OEM-spec plugs (Denso SC20HR11 or SC16HR11) to maintain even performance. 🎬 See how to properly replace spark plugs on 2014-2019 models.
    Est. part cost: $8-$15 per plug
  3. Clogged or Faulty Fuel Injector ⚪ Low Probability → Shop Fuel Injector Fuel injectors are generally reliable on this platform but can become clogged over time due to fuel contaminants or deposits. This is a less common cause but should be considered if ignition components are confirmed to be good.
    How to confirm: This is more difficult to diagnose. A professional can perform a fuel injector balance test. A DIY method involves swapping the injector from cylinder 4 with another cylinder (e.g., cylinder 3) to see if the misfire code follows. This is more involved than a coil swap. Listening to the injector with a mechanic's stethoscope to hear if it's clicking like the others is another quick check.
    Typical fix: Replace the faulty fuel injector. The fuel rail will need to be removed.
    Est. part cost: $50-$150

Rare But Worth Checking

  • Low Cylinder Compression: This indicates a more serious internal engine problem, such as a bad valve or worn piston rings. A compression test should be performed if ignition and fuel system checks do not resolve the issue. A YouTube video by 'Pine Hollow Auto Diagnostics' on a 2009 Corolla with P0304 showed a burnt valve as the ultimate cause after extensive testing.
  • Vacuum Leak: A vacuum leak specific to the intake manifold runner for cylinder 4 could cause a lean misfire. This is uncommon but possible, though intake manifold gaskets are a known failure point on the related 1ZZ-FE engine and can cause lean codes and misfires. A visual inspection of vacuum hoses is a good first step.
  • Rodent Damage to Wiring: In one documented case, chewed wires for the purge valve solenoid, located near the ignition coils, were discovered while diagnosing a misfire, highlighting the need for a thorough visual inspection of the engine bay for any damage.
  • Corrosion in ECM Connector: While documented on other Toyota models like the Highlander, manufacturer bulletins T-TT-0462-17 and T-SB-0072-19 note that corrosion and water in the A43 ECM connector can cause low fuel pressure and a variety of DTCs including P0304.

Diagnosis Steps

  1. Verify the code P0304 is present using an OBD-II scanner.
  2. Locate cylinder 4. On the 2ZR-FE engine, cylinders are numbered 1-2-3-4 from left to right (passenger side to driver's side in LHD vehicles). Cylinder 4 is on the far driver's side.
  3. Perform a visual inspection. Look for obvious issues like oil leaking from the valve cover onto the coil/spark plug, or any chewed/damaged wiring harnesses.
  4. Swap the ignition coil from cylinder 4 with the coil from cylinder 3. Use a 10mm socket to remove the single bolt holding each coil.
  5. Clear the trouble codes with the scanner.
  6. Start the engine and let it run for a few minutes, or take a short drive. The code may reappear quickly, sometimes as a 'pending' code.
  7. Re-scan for codes. If the code is now P0303, the ignition coil you moved to cylinder 3 is bad. Replace it.
  8. If the code remains P0304, the coil is likely good. Move the coil back to its original position.
  9. Next, swap the spark plug from cylinder 4 with the spark plug from cylinder 3. Clear codes and re-test.
  10. If the code moves to P0303, the spark plug is the culprit. It is best practice to replace all four spark plugs.
  11. If the code remains P0304 after swapping the coil and plug, the issue is likely with the fuel injector or, less commonly, a mechanical engine problem (low compression) or a wiring issue. Further diagnosis is required.

Parts You'll Likely Need

  • Ignition Coil (OEM #90919-02258 (supersedes 90919-02252)) — This is the most frequent cause of a single-cylinder misfire on the 2ZR-FE engine due to failure from heat and age.
    Trusted brands: Denso (OEM), NGK, Delphi
    OEM price range: $90-$144
    Aftermarket price range: $30-$75
  • Iridium Spark Plug (OEM #Denso SC20HR11 (or superseded SC16HR11)) — Spark plugs are a maintenance item and can cause misfires when worn, fouled, or damaged. Using the correct plug is critical.
    Trusted brands: Denso (OEM), NGK
    OEM price range: $12-$20
    Aftermarket price range: $8-$15

Related Codes That Often Appear With This One

  • P0300 — If the misfire becomes more frequent or other cylinders start to misfire, a P0300 (Random/Multiple Misfire) may appear alongside P0304.
  • P0301, P0302, P0303 — If multiple specific cylinder misfire codes are present, it could point to a systemic issue like a failing fuel pump, clogged catalytic converter, or multiple failed coils.

Technical Service Bulletins (TSBs) & Recalls

  • T-SB-0087-09: Describes a fix for a cold-start rattle from a faulty VVT gear assembly in 2009 Corolla/Matrix models, an issue separate from but relevant to overall engine health.
  • T-SB-0148-19: A manufacturer bulletin for other Toyota models that outlines repair procedures for misfire codes P0301 through P0306, including P0304.
  • T-SB-0072-19: Notes that driveability concerns and DTC P0304 can be caused by corrosion or water in the ECM connector, leading to low fuel pressure.

Platform-Specific Known Issues

  • While the 2009-2019 Corolla with the 2ZR-FE is not covered, it's worth noting that newer Corollas (2019+) with M20A-FKS engines have a Technical Service Bulletin (T-SB-0010-24 Rev2) for misfires in cold temperatures caused by faulty valve lash adjusters. This is not a common issue for the vehicle in this guide.

Mechanic-Grade Diagnostic Values

  • Fuel Injector Resistance — expected: 11.6 to 12.4 Ω at 20°C (68°F). Failure: A reading outside this range indicates a faulty injector.
  • Fuel Pressure (at fuel rail) — expected: 44 to 50 psi. Failure: Pressure below this range can indicate a weak fuel pump or clogged filter. Pressure should hold steady when revving the engine.
  • Ignition Coil Primary Resistance — expected: 0.49 to 0.57 Ω. Failure: A reading outside this range indicates a faulty primary winding in the coil.
  • Ignition Coil Secondary Resistance — expected: 9.5 to 11.1 kΩ. Failure: A reading outside this range indicates a faulty secondary winding in the coil.

Hidden / Shadow Codes Worth Checking

  • Mode $06, TID $0C, CID $01-$0C: This is not a DTC, but raw data from the ECU's misfire monitor. Techstream can display misfire counts for each cylinder from the last 10 driving cycles (EWMA) and the current drive cycle. This allows a technician to see if cylinder 4 is accumulating misfires even if the count is not yet high enough to set a P0304 code and illuminate the CEL. It's invaluable for diagnosing intermittent issues. (see via Toyota Techstream software, under the 'Monitor' screen, then 'Details' for Misfire.)

Scan Tool Commands That Help

  • Toyota Techstream: Active Test: Control the Injector Cut — This function allows the technician to individually shut off fuel to each cylinder. To test cylinder 4, select it and run the test at idle. If there is little or no change in engine RPM and roughness, it confirms that cylinder 4 was not contributing power, pointing strongly to a problem with that cylinder (coil, plug, injector, or compression). If RPM drops significantly, the injector and combustion are likely occurring.
  • Toyota Techstream: Active Test: Fuel Pump / Speed — This allows you to command the fuel pump on to verify its operation and to build pressure for testing without needing to crank the engine. It's useful when diagnosing a no-start or when checking for fuel pressure issues.
  • Toyota Techstream: Utility: Check the Cylinder Compression — This utility uses the crankshaft position sensor to measure the speed of each compression stroke while cranking the engine. It provides a relative compression reading without removing the spark plugs. A cylinder with significantly lower cranking RPM than the others indicates a potential compression loss.

Wiring & Ground Locations

  • ECM Connector B, Pin B29 — At the Engine Control Module (ECM), which is typically located in the engine bay near the battery or inside the cabin.. This is the pin for the IGT4 signal, the ignition trigger for cylinder 4. A technician can back-probe this pin to check for a square wave signal from the ECM with an oscilloscope, confirming the ECM is commanding the coil to fire. The wire color is typically Yellow.
  • ECM Connector B, Pin B26-B29 (IGF) — At the Engine Control Module (ECM).. This is the Ignition Confirmation (IGF) signal, a shared feedback wire from all ignition coils to the ECM. If the IGF signal is lost after the IGT command is sent, the ECM knows the coil failed to fire and can set a misfire code. A break in this wire can cause misfire codes.
  • Cylinder 4 Injector Wires — At the fuel injector for cylinder 4.. The two wires for the injector can be tested for a pulse signal from the ECM using a noid light or oscilloscope. This confirms the ECM is commanding the injector to open. A lack of signal points to a wiring or ECM driver issue.

Real Owner Repair Stories

  • Reddit user on r/MechanicAdvice (2009 Scion xD, 107,000 miles (same 2ZR-FE engine)) — Rough idle, heavy vibration at a stop, compromised acceleration, flashing check engine light.
    ❌ Tried (didn't work) Replaced spark plugs.
    ✅ What actually fixed it Replacing all four ignition coils. A shop performed a compression test showing varied results (Cyl 1: 130, Cyl 4: 175) and recommended an engine rebuild, but the owner fixed the issue by replacing the coils, saving thousands. This highlights that low compression readings can sometimes be misleading or a secondary symptom.
  • YouTube - 'The Car Care Nut' (2004 Toyota Corolla (1ZZ-FE engine, but same principle)) — Multiple misfire codes (P0300, P0301-P0304) and a lean code (P0171).
    ❌ Tried (didn't work) Initial assumption might be ignition or fuel system parts.
    ✅ What actually fixed it A leaking intake manifold gasket. This was diagnosed by spraying brake cleaner around the intake manifold runners with the engine running and listening for a change in engine RPM. This is a common failure on the 1ZZ/2ZR family and can cause a single-cylinder misfire if the leak is isolated to one runner, or random misfires if it affects the whole manifold.
  • NHTSA ODI #11665224 — An owner reported getting error code P0304, describing that the engine starts shaking and most dashboard warning lights illuminate.
  • NHTSA ODI #11623185 — A report describes a vehicle losing power where a mechanic retrieved codes P0300, P0302, P0303, and P0304, indicating multiple parts required replacement.

OEM Part Supersession History

  • 90919-0225290919-02258, and also cross-references to 90919-C2003 — Standard part revision and consolidation by the manufacturer.
    Heads up: While many aftermarket coils are available and function, owner forums frequently report premature failure or subtle performance issues with unbranded, cheap online options. Sticking with Denso (OEM) or reputable brands like NGK is highly recommended to avoid repeat failures.

Model Year Variations Within This Range

  • 2009-2012: Earlier 2ZR-FE engines are more susceptible to developing oil consumption issues due to piston ring design. This can lead to P0304 by chronically fouling the spark plug in cylinder 4. While not a guaranteed problem, it's a known pattern. A TSB was issued for the related 2ZR-FXE engine in the Prius for this issue. Owners of higher-mileage early models should be particularly alert to oil-fouled plugs as the root cause.

Diagnostic Flowchart

Other Known Issues on This Vehicle

Issues unrelated to this code that are worth knowing about as an owner of this generation:

  • Excessive Oil Consumption 🟠 Medium — More common in earlier models (2009-2011) and at higher mileage. Caused by piston ring design. Many owners report consuming 1-2 quarts between oil changes. (Ref: While no formal recall for the 2ZR-FE exists, Toyota did issue a TSB and an ECU firmware update for some early models to address the issue.)
  • VVT Cam Gear Rattle on Cold Start 🟡 Low — A brief (1-2 second) rattle upon starting the engine when cold is a well-documented issue. It's caused by a weak locking pin spring inside the VVT-i gear assembly. (Ref: T-SB-0087-09 was issued for the 2009 Corolla/Matrix, identifying a faulty camshaft timing gear assembly as the cause.)
  • Water Pump Failure 🟠 Medium — Premature water pump failure (leaking coolant) has been reported, sometimes as early as 30,000-60,000 miles, though it's not extremely widespread. It's considered a design weakness.
  • Faulty Alternator 🟡 Low — Failure of the alternator is a known possibility at higher mileage, leading to a battery light and the battery not charging.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: A used ignition coil from a low-mileage donor vehicle can be a cost-effective way to perform a 'swap test' or for a temporary repair. Given the low cost of new aftermarket coils, a used part is primarily for diagnosis, not a long-term solution.

Donor-vehicle mileage cap: roughly under 80000 miles for the part to have meaningful remaining life.

What to inspect on the donor part:

  • Check the plastic housing for cracks or signs of heat stress.
  • Ensure the rubber boot is pliable, not dry, swollen, or cracked.
  • Look for clean electrical contacts without corrosion.
  • Avoid parts from engines that show signs of heavy oil leaks or overheating.

OEM-only on this vehicle (don't cheap out):

  • While not strictly 'OEM-only', using Denso (OEM) or NGK for ignition coils and spark plugs is strongly recommended by mechanics and experienced owners to avoid the common issue of premature failure from cheaper aftermarket brands.

Aftermarket brands forum-validated for this vehicle:

  • Denso (OEM for coil and plug)
  • NGK (Coil and plug)
  • Delphi (Coil)

Brands owners have reported issues with on this vehicle:

  • Unbranded, no-name ignition coils sold on sites like eBay and Amazon. While tempting due to very low prices, they have a high failure rate and can cause diagnostic headaches.

Real Owner Stories

Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.

2014 Toyota Corolla 1.8L 2ZR-FE

Symptoms: Cylinder 4 misfire; owner had already replaced the spark plug and coil but the code persisted.

What fixed it: The community advised performing a swap test with the 'new' coil to another cylinder to verify if the new replacement part was faulty out of the box.

Source hint: Reddit r/MechanicAdvice

2010 Toyota Corolla 1.8L 2ZR-FE

Symptoms: P0304 code accompanied by strong vibrations; changing spark plugs did not resolve the issue.

What fixed it: Swapping the ignition coil from cylinder 4 to another cylinder to confirm the coil was the failure point.

Source hint: Reddit r/AskAShittyMechanic

2009 Toyota Corolla 1.8L 2ZR-FE — ~150000 miles

Symptoms: P0304 misfire that persisted even after replacing both spark plugs and ignition coils.

What fixed it: Replacing the fuel injector after ignition components were ruled out.

Source hint: Reddit r/mechanic

Frequently Asked Questions

Where is cylinder 4 located on my 2009-2019 Corolla 1.8L engine?
On the 2ZR-FE engine, cylinders are numbered 1-2-3-4 from the passenger side to the driver's side. Cylinder 4 is located on the far driver's side of the engine bay.
Which specific spark plugs should I use for my 2ZR-FE engine to fix a P0304?
It is recommended to use OEM-spec Denso Iridium plugs, specifically part numbers SC20HR11 or SC16HR11, to maintain even performance.
Does T-SB-0087-09 regarding the VVT gear rattle apply to my 2009 Corolla?
Yes, T-SB-0087-09 specifically identifies a faulty camshaft timing gear assembly that causes a cold-start rattle in 2009 Corolla and Matrix models.
Could my P0304 misfire be related to the cold temperature valve lash issue mentioned in T-SB-0010-24 Rev2?
No. That TSB applies to newer Corollas (2019+) with the M20A-FKS engine. It is not a common issue for the 2009-2019 1.8L 2ZR-FE engine covered in this guide.
Is there a specific tool needed to replace the ignition coil on my Corolla?
The ignition coil is held in place by a single 10mm bolt. You will need a 10mm socket to remove it, and the replacement can typically be done in under 10 minutes.
Can oil consumption on my high-mileage 2ZR-FE cause a P0304 code?
Yes. High-mileage 2ZR-FE engines can suffer from oil consumption due to piston ring design. This oil can foul the spark plug in cylinder 4, leading to a misfire.
09 Toyota Corolla Misfire Fix 1.8 Coil and Spark Plug Replacement
09 Toyota Corolla Misfire Fix 1.8 Coil and Spark Plug Replacement
How to Replace Coil Toyota Corolla
How to Replace Coil Toyota Corolla
2014-2019 Toyota Corolla Spark Plugs Replacement
2014-2019 Toyota Corolla Spark Plugs Replacement
How To Fix P0304 Code - Cylinder 4 Misfire Detected Diagnosis And Spark Plug Repair
How To Fix P0304 Code - Cylinder 4 Misfire Detected Diagnosis And Spark Plug Repair
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated May 30, 2026

The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.

Year Coverage
This article covers the OBD-II Code P0304 (Deep Dive) for:
  • Toyota Corolla: 20092010201120122013201420152016201720182019
In this article
🧭 Diagnostic Flowchart
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part