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

P0507 on 2002-2011 Subaru Impreza 2.5L: High Idle Causes and Fixes

Code P0507 on a 2002-2011 Subaru Impreza means the engine is idling higher than the computer expects, typically 200+ RPM over target. The most common cause is either a dirty Idle Air Control (IAC) valve on 2002-2005 models or a dirty electronic throttle body on 2005-2011 models. A simple cleaning and an idle relearn procedure often resolves the issue. Vacuum leaks are the next most likely culprit.

21 minutes to read 2002-2011 Subaru Impreza
Most Likely Cause
Dirty or Sticking Idle Air Control (IAC) Valve
Difficulty
2/5
Est. Time
1.2 hrs
DIY Doable?
✅ Yes
Shop Labor
$75 – $550
Parts Price
$10 – $350
⚠️ Drivable, but... — Yes, but it's not recommended for extended periods. A high idle can make the car lurch in gear, increase braking distance, reduce fuel economy, and potentially mask other issues. It can be unpredictable and unsafe in stop-and-go traffic.
Key Takeaways
  • P0507 means your Impreza's idle is too high.
  • First, determine if you have an older model with an Idle Air Control (IAC) valve or a newer one with an Electronic Throttle Body (ETB).
  • For early models (pre-~2005), the most likely fix is cleaning or replacing the IAC valve.
  • For later models (~2005+), the most likely fix is cleaning the Electronic Throttle Body.
  • Always check for cracked vacuum hoses, especially the PCV hose, and perform an idle relearn procedure after any repair.
The trouble code P0507, defined as "Idle Control System RPM Higher than Expected," indicates that your Subaru's Engine Control Unit (ECU) has detected an engine idle speed that is consistently higher than its pre-set target (usually by 200 RPM or more) for a specific amount of time. The ECU is actively trying to lower the idle speed by adjusting airflow but is unable to, suggesting an uncommanded source of air is entering the engine or a component that controls airflow is stuck or dirty.

What's Unique About the 2002-2011 Subaru Impreza

The 2002-2011 Impreza range spans two key generations with different idle control systems. Early models (GD/GG chassis, approx. 2002-2005) use a mechanical throttle cable with a separate Idle Air Control (IAC) valve mounted on the throttle body. Later models (GE/GH/GR chassis, approx. 2005-2011) use an Electronic Throttle Body (ETB), also known as Drive-by-Wire, which integrates idle control into the main throttle assembly. Knowing which system your car has is the first step, as the most likely faulty part is different between the two.

Generation note: This range covers the second (GD/GG, 2002-2007) and third (GE/GH/GR, 2008-2011) generations of the Impreza. The key difference for this code is the switch from a cable-actuated throttle with a separate Idle Air Control (IAC) valve to a fully Electronic Throttle Body (ETB) around the 2005 model year. Diagnosis and parts differ significantly between these two systems. Always verify your specific model's setup.

Symptoms You May Notice

  • Check Engine Light is on
  • Flashing 'Cruise' light on the dashboard (a common Subaru indicator for any engine fault)
  • Engine idling noticeably higher than normal (e.g., 1000-1500 RPM instead of the usual ~750 RPM)
  • Vehicle may feel like it's 'pushing' or lurching forward when stopped in gear
  • Rough or 'hunting' unstable idle, where RPMs fluctuate up and down
  • Increased fuel consumption
  • When slowing down with the clutch depressed, RPMs may hang high before dropping, or drop low and then surge back up to a high idle.
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the Mass Airflow (MAF) sensor. While a dirty MAF can cause performance issues, it's not a primary cause for a consistently high idle with a P0507 code. Cleaning it is fine, but replacement is usually unnecessary for this specific code.
  • Replacing O2 sensors. O2 sensors report on the air/fuel mixture but do not directly control the idle speed. A faulty O2 sensor will typically set its own specific trouble code.
  • Assuming the ECU is bad. ECU failure is extremely rare and should only be considered after all other possibilities have been exhaustively ruled out.

Most Likely Causes

  1. Dirty or Sticking Idle Air Control (IAC) Valve 🔴 High Probability → Shop Idle Air Control Valve Applies to early models (approx. 2002-2005) with a cable throttle. Carbon and oil vapor from the crankcase ventilation system can build up inside the IAC valve, causing the plunger to stick partially open, allowing excess air to bypass the throttle plate.
    How to confirm: Remove the IAC valve from the throttle body (typically held by two screws). Inspect it for heavy black carbon buildup. The internal rotary valve or plunger should move without resistance.
    Typical fix: Thoroughly clean the IAC valve and the port on the throttle body with throttle body cleaner and a soft brush. Do not use 🎬 Watch: How to clean the IAC valve on early models. carburetor cleaner. If cleaning doesn't work, or if the valve is electrically faulty, it must be replaced. Always replace the specific IAC valve gasket to prevent leaks.
    Est. part cost: $5-$15 for a gasket, $200-$350 for an OEM valve.
  2. Dirty Electronic Throttle Body (ETB) 🔴 High Probability → Shop Fuel Injection Throttle Body Applies to later models (approx. 2005-2011) with Drive-by-Wire. A ring of carbon buildup around the edges of the throttle plate can prevent it from closing completely at idle. This tiny gap allows unmetered air to leak past, causing the ECU to register a high idle.
    How to confirm: Remove the air intake duct from the throttle body and visually inspect the throttle plate and bore for a ring of black carbon buildup. The buildup is often most significant on the back side of the plate.
    Typical fix: With the engine off and key in the ON position (or with an assistant lightly pressing the gas pedal), carefully clean the throttle plate and bore using a dedicated throttle body cleaner and a soft, lint-free cloth. Do not force the throttle plate open manually, as this can damage the delicate internal gears. Replace the throttle body gasket. An idle relearn procedure is mandatory after cleaning.
    Est. part cost: $10-$20 for a gasket.
  3. Vacuum Leak 🟡 Medium Probability Aging rubber vacuum hoses, intake manifold gaskets, or the PCV (Positive Crankcase Ventilation) system hoses can crack, become brittle, and leak, allowing unmetered air into the engine after the mass airflow sensor. This extra air leans out the mixture and causes the idle speed to increase as the ECU tries to compensate.
    How to confirm: A smoke test is the most effective method. Alternatively, 🎬 See how to perform a smoke test for vacuum leaks. with the engine running, carefully listen for hissing sounds around the intake manifold. You can also spray short bursts of brake cleaner or unlit propane around vacuum lines and gasket seals; a noticeable change in engine idle indicates a leak at that spot.
    Typical fix: Replace the cracked hose, leaking gasket, or faulty component. Common culprits are the PCV valve hose, brake booster hose, and the small vacuum lines connected to the intake manifold.
    Est. part cost: $10-$100 depending on the source of the leak.
  4. Faulty or Stuck PCV Valve ⚪ Low Probability → Shop PCV Valve The PCV valve is designed to regulate crankcase pressure, but if it gets stuck in the open position, it effectively acts as a constant vacuum leak, leading to a high idle. This is a cheap and simple part that is often overlooked.
    How to confirm: Remove the PCV valve (location varies but it's typically threaded into the block or a valve cover) and shake it. If it rattles, it is likely functioning. If it is silent or feels gummy, it's stuck. You can also check for strong, constant suction at the valve with the engine idling.
    Typical fix: Replacement of the PCV valve is simple and inexpensive. It is often recommended as preventative maintenance.
    Est. part cost: $15-$30.

Rare But Worth Checking

Diagnosis Steps

  1. Identify your system: Determine if your Impreza has a cable throttle with an IAC valve (pre-~2005) or an Electronic Throttle Body (~2005+). This dictates your primary inspection point.
  2. Check for Vacuum Leaks: Perform a thorough visual inspection of all vacuum hoses connected to the intake manifold, especially the PCV hose and brake booster line. Look for cracks, loose fittings, or collapsed sections. For a definitive diagnosis, perform a smoke test.
  3. Inspect and Clean the Idle Control Component: If you have an IAC valve, remove it, clean it and the throttle body port thoroughly with appropriate cleaner, and install a new gasket. If you have an ETB, clean the throttle plate and bore, and replace the gasket.
  4. Inspect the PCV System: Locate and inspect the PCV valve. If it's old, oily, or doesn't rattle when shaken, replace it. It's an inexpensive and easy step.
  5. Perform an Idle Relearn Procedure: This step is CRITICAL, especially after cleaning an ETB or disconnecting the battery. The ECU needs to recalibrate its baseline for the now-cleaner throttle position. Skipping this can result in the high idle persisting even after the fix.
  6. Detailed Idle Relearn Steps: While procedures can vary slightly, a commonly successful method is: 🎬 Watch this walkthrough of the Subaru idle relearn procedure. a. Turn off all accessories (A/C, radio, lights). b. Disconnect the negative battery terminal for at least 30 minutes to fully reset the ECU. c. Reconnect the battery. d. Turn the key to the 'ON' position (do not start the engine) and wait 15-20 seconds. You may hear the throttle body buzz as it finds its home position. e. Start the engine and let it idle with NO throttle input and NO accessories on for a full 10 minutes. The idle may fluctuate; this is normal. f. Turn the engine off and wait at least 20 seconds. g. Turn the key to 'ON' again for 15-20 seconds. h. Restart the engine and let it idle for another 5 minutes. i. The relearn should be complete. Take the car for a drive to confirm normal operation.

Parts You'll Likely Need

  • Idle Air Control Valve (IAC) (OEM #22650AA182) — This is the most common failure point for P0507 on early models (approx. 2002-2005) with a cable-actuated throttle. It gets stuck due to carbon buildup. Cleaning often works, but replacement is sometimes necessary.
    Trusted brands: Subaru (OEM), Standard Motor Products (AC524), Duralast (AC4257)
    OEM price range: $250-$350
    Aftermarket price range: $50-$150
  • Throttle Body Gasket (for ETB models) (OEM #16175AA243)

Related Codes That Often Appear With This One

  • P1507 — This is a Subaru-specific code for 'Idle Control System Malfunction (Fail-Safe)'. It often appears alongside P0507, indicating the ECU has detected a persistent fault and has reverted to a fixed, high-idle mode as a protective measure to prevent stalling.

Technical Service Bulletins (TSBs) & Recalls

  • Subaru TechTIPS Newsletter (March 2020): Mentions that on some engines, incorrectly routing two specific vacuum hoses near the timing cover after service can lead to a P0507 code.

Platform-Specific Known Issues

  • Owner Story (NASIOC forum): A user with a 2004 WRX (cable throttle) reported a P0507 code with an idle stuck at 1500 RPM. After unsuccessfully trying a vacuum leak test, they removed and cleaned a heavily carboned IAC valve. After reinstalling with a new gasket and performing an idle relearn, the idle returned to a steady 750 RPM.
  • Owner Story (Reddit r/subaru): A 2007 Impreza 2.5i owner (ETB) fixed their P0507 by cleaning the throttle body. They noted that the car idled even higher immediately after cleaning until they disconnected the battery for 30 minutes and performed the full multi-step idle relearn procedure, which finally solved the problem.
  • Repair Experience (Polish Impreza Forum): A user documented their struggle with P0507, first cleaning the IAC valve with little success. They eventually replaced the IAC valve gasket which they suspected was leaking after the initial cleaning, which resolved the high idle. This highlights the importance of always using a new gasket.

Mechanic-Grade Diagnostic Values

  • Idle Air Control (IAC) Valve Solenoid Resistance (Cable-throttle models) — expected: ~9-10 Ohms between the center pin and each of the two outer pins.. Failure: An open circuit (infinite resistance) or a reading significantly outside the 9-10 Ohm range indicates a faulty solenoid coil.
  • Electronic Throttle Control Sensor 1 Voltage (Key On, Engine Off) — expected: Approx. 0.64-0.72V at closed throttle, sweeping to ~3.96V at wide-open throttle.. Failure: Voltage is erratic, has dead spots, or does not sweep smoothly.
  • Electronic Throttle Control Sensor 2 Voltage (Key On, Engine Off) — expected: Approx. 1.51-1.58V at closed throttle, sweeping to ~4.17V at wide-open throttle.. Failure: Voltage does not correlate with Sensor 1, is erratic, or has dead spots.

Scan Tool Commands That Help

  • Subaru Select Monitor (SSM) or equivalent professional scanner: Idle Air Volume Learn — This function is used to command the ECU to relearn the idle characteristics. It is essential after replacing or cleaning the electronic throttle body or IAC valve, or after resetting the ECU. It can sometimes resolve a high idle when a manual relearn procedure is ineffective.

Wiring & Ground Locations

  • Electronic Throttle Control Relay — On 2006 Impreza models, this relay (designated B309 in some manuals) is located in the passenger side kick panel area, often requiring glove box removal for easier access.. A faulty relay can cause various throttle-related codes and erratic behavior, although it more commonly causes low voltage codes (like P2102), it can be a point of failure in the overall throttle control system.
  • Engine Ground Straps — Key grounds are located from the negative battery terminal to the chassis, from the chassis to the transmission case, and on the intake manifold.. Poor grounding can cause erratic sensor readings. The ECU relies on a stable ground reference for all its sensors, including the throttle position sensor and IAC valve. A corroded or loose ground can cause voltage offsets that lead the ECU to misinterpret sensor data, potentially contributing to idle control problems.
  • Throttle Body Connector (ETB models) — The 6-pin connector directly on the electronic throttle body.. This is the primary connection for all throttle control. A common pinout includes two pins for the motor, a 5V reference, a sensor ground, and two signal wires for the dual throttle position sensors. Corrosion or loose pins here will directly cause throttle-related codes.

Real Owner Repair Stories

  • YouTube channel 'Bearded Brothers' (2016 Subaru WRX (newer model, but demonstrates a relevant principle)) — Engine idling very high, surging between 2,000-3,000 RPM, and throwing a high-idle code (P0507) after a new engine was installed.
    ❌ Tried (didn't work) A smoke test was performed and found no significant vacuum leaks., The throttle body was inspected., The EGR valve was unplugged to test for changes.
    ✅ What actually fixed it Two vacuum lines for the blow-off valve were found to be swapped (reversed). After correcting the hose routing, the idle immediately dropped to a normal 700-800 RPM and the code was resolved.
  • Subaru Legacy International forum user (1999 Subaru Outback 2.5L 5-speed manual) — Intermittent P0507 code, severe hesitation on acceleration, no passing power. Pumping the brake pedal at idle would sometimes cause RPMs to increase.
    ❌ Tried (didn't work) Spraying brake cleaner on vacuum lines did not reveal a leak., Cleaning the PCV valve.
    ✅ What actually fixed it The user noted the MAF sensor connector pigtail was broken and did not lock in place. A poor connection at the MAF sensor was causing erratic behavior. While not a definitive 'fix' post, the strong evidence points to the faulty MAF connection being the root cause of the idle and drivability issues.

"I Checked Everything" — The Actual Cause

  • In one documented case on a WRX, a smoke test revealed no significant leaks, but the P0507 and extreme high idle persisted. The actual cause was found to be two vacuum hoses for the blow-off valve that had been swapped after recent engine work. Correcting the hose routing fixed the issue instantly. This highlights the importance of verifying vacuum line routing against a diagram after any major service, as a smoke test won't catch misrouted lines that are properly sealed.

OEM Part Supersession History

  • 22650AA18122650AA182 — Standard part revision by the manufacturer.
    Heads up: The parts are interchangeable. 22650AA182 is the current replacement for 22650AA181.
  • 32008AA18032008AA181 — Standard part revision for the neutral position switch.
    Heads up: The parts are interchangeable.

Model Year Variations Within This Range

  • 2002-2004 vs 2005+: The Neutral Position Switch (NPS) logic changed around the 2005 model year. Pre-2005 models use a switch that is 'open' when in neutral. 2005+ models use a switch that is 'closed' (grounded) when in neutral. Using the wrong switch for your ECU's year will cause the computer to apply the wrong idle and fuel maps (e.g., thinking it's in gear when it's in neutral), which can cause idle problems and other issues like disabled cruise control.

Diagnostic Flowchart

Other Known Issues on This Vehicle

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

  • Head Gasket Failure (Naturally Aspirated EJ25) 🔴 High — Very common, typically between 80,000-150,000 miles. Affects most N/A EJ25 engines from 1999-2011. The original single-layer gaskets are prone to leaking oil externally (usually from the driver's side) or coolant internally.
  • Wheel Bearing Failure 🟠 Medium — Common failure item, often needing replacement around 100,000 miles, but premature failures are widely reported. Symptoms include a grinding or roaring noise that changes with vehicle speed. Both earlier press-in bearings and later bolt-on hub assemblies are affected. (Ref: Subaru has issued warranty extensions for wheel bearings on some models in the past.)
  • Timing Belt Maintenance 🔴 High — This is a critical maintenance item, not a failure. The belt, tensioner, and idlers must be replaced every 105,000 miles or 105 months. The EJ25 is an interference engine, meaning if the belt snaps, catastrophic engine damage will occur.
  • AVCS Solenoid/Filter Issues 🟡 Low — On models equipped with AVCS (Active Valve Control System, ~2006+), the banjo bolts for the oil feed lines contain small mesh filters. These filters can clog with debris from infrequent oil changes, starving the AVCS gear of oil pressure. This leads to rough idle, poor performance, and codes like P0021. Many owners proactively remove the filters during a timing belt service.
  • Excessive Oil Consumption 🟠 Medium — Some EJ25 engines are known to consume oil between changes. This can be caused by leaking piston rings or other internal issues. Owners are advised to check oil levels frequently, as low oil can accelerate wear on all engine components.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: For this repair, a used Electronic Throttle Body (ETB) from a reputable salvage yard can be a cost-effective option, as the failure is often electronic and not wear-based. A used IAC valve is riskier due to carbon buildup, but can be an option if it's from a low-mileage donor and can be thoroughly cleaned before installation. Structural components like intake hoses are also good candidates for used parts if they are free of cracks.

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

What to inspect on the donor part:

  • For an ETB, check for smooth movement of the throttle plate (if it can be moved) and ensure the connector pins are clean and straight.
  • For an IAC valve, inspect the port for excessive, caked-on carbon that might be impossible to fully remove.
  • For any used part, check for signs of the donor vehicle being in a flood or fire.
  • Verify the part number on the used component matches your original part, especially for the throttle body and IAC valve.

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

  • Neutral Position Switch: Aftermarket versions of this switch have a higher failure rate. Given its impact on ECU logic, sticking with a genuine Subaru part (OEM) is strongly recommended.

Brands owners have reported issues with on this vehicle:

  • Unbranded, 'white-box' IAC valves and electronic throttle bodies from online marketplaces should be avoided. They often have high defect rates, poor calibration, and can fail shortly after installation.

Real Owner Stories

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

2004 Subaru Impreza WRX (EJ25/Cable Throttle)

Symptoms: Idle stuck at 1500 RPM; unsuccessful vacuum leak test.

What fixed it: Removed and cleaned a heavily carboned IAC valve, reinstalled with a new gasket, and performed an idle relearn.

Source hint: NASIOC forum - 'P0507, Idle Air Control System RPM Higher Than Expected'

2007 Subaru Impreza 2.5i (ETB)

Symptoms: P0507 code; car idled even higher immediately after cleaning the throttle body.

What fixed it: Disconnected the battery for 30 minutes and performed the full multi-step idle relearn procedure.

Source hint: Reddit r/subaru

2006 Subaru Impreza (ETB)

Symptoms: P0507 Idle too high.

What fixed it: Cleaning the throttle body and performing the relearn procedure.

Source hint: DirtyImpreza.com - 'P0507 Idle too high'

Subaru Impreza (Cable Throttle)

Symptoms: High idle persisted after initial cleaning of the IAC valve.

What fixed it: Replaced the IAC valve gasket which was suspected of leaking after the initial cleaning.

Source hint: Repair Experience (Polish Impreza Forum)

Subaru WRX (Aftermarket AOS)

Symptoms: High idle issue; P0507.

What fixed it: Traced the fault to a failed check valve in an aftermarket Air/Oil Separator (AOS) PCV line.

Source hint: Reddit r/WRX - 'High Idle issue. P0507'

Frequently Asked Questions

My 2004 WRX has a cable throttle; what is the most likely cause for a P0507 high idle?
On early models (2002-2005) with a cable throttle, the Idle Air Control (IAC) valve is prone to sticking due to carbon and oil vapor buildup. Cleaning the valve and replacing the gasket often resolves the issue.
I have a 2007 Impreza with Drive-by-Wire. Do I still have an IAC valve to clean?
No, later models (approx. 2005-2011) use an Electronic Throttle Body (ETB) instead of a separate IAC valve. High idle is typically caused by carbon buildup around the throttle plate edges.
Is there a specific Subaru TSB regarding vacuum hose routing and P0507?
Yes, the Subaru TechTIPS Newsletter (March 2020) notes that incorrectly routing two specific vacuum hoses near the timing cover after service can trigger a P0507 code.
Why is my Subaru's 'Cruise' light flashing along with the Check Engine Light?
A flashing 'Cruise' light is a common Subaru dashboard indicator that accompanies almost any engine fault code, including P0507, and does not necessarily indicate a cruise control failure.
Do I need to perform any special procedure after cleaning my Impreza's throttle body?
Yes, an idle relearn procedure is mandatory. This involves disconnecting the battery for 30 minutes and following a specific idling sequence to allow the ECU to recalibrate the throttle position.
Can a faulty PCV valve cause a high idle on the EJ25 engine?
Yes, if the PCV valve is stuck open, it acts as a constant vacuum leak. It is a low-cost part ($15-$30) that should rattle when shaken; if it doesn't, it needs replacement.
IAC cleaning on 02-07 WRX ej20
IAC cleaning on 02-07 WRX ej20
Subaru Throttle Service / Fuel Filter Replacement - How To
Subaru Throttle Service / Fuel Filter Replacement - How To
Subaru Idle Relearn Procedure
Subaru Idle Relearn Procedure
How to SMOKE TEST a Subaru WRX STI for VACCUM LEAKS!
How to SMOKE TEST a Subaru WRX STI for VACCUM LEAKS!
Subaru RS smoke test looking for vacuum leak part 2
Subaru RS smoke test looking for vacuum leak part 2
Trapping Your Gas – Replacing the PCV Valve on a Subaru EJ251 Engine
Trapping Your Gas – Replacing the PCV Valve on a Subaru EJ251 Engine
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 P0507 (Deep Dive) for:
  • Subaru Impreza: 2002200320042005200620072008200920102011
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