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

P0122 on 1999-2004 Subaru Legacy: Throttle Position Sensor Circuit Low Causes and Fixes

This code almost always points to a failed Throttle Position Sensor (TPS) on the throttle body. Replacing the sensor is the most common fix, costing around $60-$120 for an OEM part and is a straightforward DIY job for most owners. Careful adjustment of the new sensor is critical to prevent the code from returning.

17 minutes to read 1999-2004 Subaru Legacy
Most Likely Cause
Failed Throttle Position Sensor (TPS)
Difficulty
2/5
Est. Time
0.8 hrs
DIY Doable?
✅ Yes
Shop Labor
$110 – $220
Parts Price
$60 – $120
⚠️ Drivable, but... — Driving is possible but not recommended. You may experience stalling, poor acceleration, rough shifting, and even enter a reduced power 'limp mode', which can be a safety risk in traffic.
Key Takeaways
  • P0122 on a 1999-2004 Legacy almost always means the Throttle Position Sensor (TPS) has failed or is improperly adjusted.
  • Diagnosis is straightforward with a multimeter; check for a smooth voltage sweep from ~0.5V to ~4.5V. The closed throttle reading is critical and should be between 0.45V and 0.55V.
  • The fix is typically replacing the sensor itself (Part No. 22633AA210), not the entire throttle body.
  • Ensure the new sensor is adjusted correctly to provide about 0.5V at closed throttle to prevent the code from returning and to ensure proper transmission function.
The trouble code P0122 stands for "Throttle/Pedal Position Sensor/Switch 'A' Circuit Low Input". This means the Engine Control Module (ECM) has detected that the voltage signal from the Throttle Position Sensor (TPS) is below the normal expected range, often falling below 0.20-0.25 volts when it should be near 0.5V at idle. The TPS tells the computer how far open the throttle plate is, which is critical for managing fuel injection, ignition timing, and automatic transmission shift points. A 'low input' reading suggests the sensor is sending a voltage signal that is consistently lower than what it should be for a given throttle position, often near zero.

What's Unique About the 1999-2004 Subaru Legacy

On the third-generation Subaru Legacy with the EJ25 engine, the throttle is cable-actuated, with a separate, replaceable TPS mounted directly to the throttle body. Unlike later models with drive-by-wire systems where the entire throttle body might need replacement, this setup makes diagnosis and repair simpler and cheaper. The TPS on these models is a potentiometer known to wear out over time, creating dead spots or low voltage readings, making it a very common failure point and the first thing to check for this code.

Symptoms You May Notice

  • Check Engine Light is on
  • Hesitation or stumbling during acceleration
  • Rough or low idle, especially when in gear
  • Engine stalling, especially when coming to a stop
  • Poor or no throttle response ('dead pedal')
  • Harsh or erratic automatic transmission shifting
  • Flashing 'AT OIL TEMP' light on automatic models
  • Engine surging
  • Reduced engine power (limp mode)
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the throttle body. On this vehicle, the TPS is a separate component. Replacing the entire throttle body is unnecessary and expensive.
  • Replacing the Mass Airflow (MAF) sensor. While a bad MAF can cause some similar symptoms, it will typically set different trouble codes.
  • Assuming the new TPS is bad. Often, the issue is incorrect adjustment of the new sensor, which must be set to the correct closed-throttle voltage.

Most Likely Causes

  1. Failed Throttle Position Sensor (TPS) 🔴 High Probability → Shop Fuel Injection Throttle Body The TPS is a moving part (a potentiometer) that wears out over its resistive strip, leading to incorrect voltage readings. It's a widely reported failure item on this generation of Subaru and its platform mates.
    How to confirm: With the key on and engine off, use a multimeter to back-probe the TPS signal wire (often the white wire). The voltage should be between 0.45V and 0.55V at closed throttle and sweep smoothly up to ~4.5V at wide-open throttle. A reading stuck near 0V, or one that drops out or jumps erratically during the sweep, confirms a bad sensor.
    Typical fix: Replace the Throttle Position Sensor. This involves removing two screws, unplugging the old sensor, and installing the new one. 🎬 Watch this step-by-step TPS replacement walkthrough Adjustment is critical: rotate the new sensor until the closed-throttle voltage is within the 0.45-0.55V spec before tightening the screws. 🎬 See how to properly calibrate your new sensor
    Est. part cost: $60-$120
  2. Wiring or Connector Issue 🟡 Medium Probability Engine bay heat and vibration can cause wiring to become brittle or connectors to corrode over time, leading to a short to ground or an open circuit. A user on LegacyGT.com reported a P0122 caused by a wire on the TPS plug that had frayed down to just a few strands.
    How to confirm: Visually inspect the wiring harness and connector for the TPS for any signs of damage, chafing, or green corrosion. Wiggle the connector while monitoring live data to see if the reading changes. Check for 5V reference and good ground at the connector with a multimeter. If the sensor itself tests good, check for continuity on the signal wire between the TPS connector and the ECM.
    Typical fix: Repair the damaged section of wire or clean/replace the connector pigtail.
    Est. part cost: $5-$50
  3. Improperly Adjusted TPS ⚪ Low Probability This typically only occurs if the sensor has been recently replaced or tampered with. The mounting holes are slotted, allowing for adjustment. Setting it incorrectly is a common mistake.
    How to confirm: Check the closed-throttle voltage. If it's significantly below the specified 0.45-0.55V range (e.g., 0.3V), it is adjusted incorrectly and can trigger a P0122 code. If adjusted too high, it may cause a high idle instead.
    Est. part cost: $0

Rare But Worth Checking

  • Faulty Engine Control Module (ECM): This is extremely rare. The ECM should only be considered after all other possibilities, including the sensor and all wiring, have been definitively ruled out.
  • Dirty or Sticking Throttle Body: → Shop Fuel Injection Throttle Body While less common for causing a *low voltage* code, heavy carbon buildup can prevent the throttle plate from closing completely, affecting the TPS's baseline reading or causing erratic operation that could be misinterpreted by the ECU.

Diagnosis Steps

  1. Confirm the P0122 code is present using an OBD-II scanner.
  2. Using the scanner's live data function, observe the 'Throttle Position' percentage or voltage. It will likely be stuck at or near 0%, even when pressing the gas pedal.
  3. Visually inspect the TPS connector and its wiring harness for any obvious damage, corrosion, or loose connections. Pay close attention to where the wires enter the plug.
  4. Turn the ignition to 'ON' (engine off). Using a multimeter, back-probe the TPS connector to verify it is receiving a 5V reference voltage and has a solid ground connection.
  5. Back-probe the signal wire. At closed throttle, the voltage should be between 0.45V and 0.55V.
  6. Slowly press the accelerator pedal to the floor. The voltage should increase smoothly and linearly to about 4.5V. Any dropouts, spikes, or failure to change indicates a faulty TPS.
  7. If the sensor tests good but the code persists, check for continuity and shorts in the wiring harness between the TPS connector and the ECM.
  8. If a new sensor has been installed, double-check the adjustment. A user on YouTube noted that having the adjustment slightly off caused either a high idle or prevented the transmission from shifting properly, highlighting the sensitivity.
  9. If the sensor and wiring are confirmed to be good, the final and least likely cause is a faulty ECM.

Parts You'll Likely Need

  • Throttle Position Sensor (TPS) (OEM #22633AA210) — This is the most common failure point for the P0122 code on this vehicle due to internal wear. The OEM part number 22633AA210 supersedes the older 22633AA140. Note that some models may use 22633AA151, so verifying by VIN is recommended.
    Trusted brands: Subaru (Genuine), Denso, Hitachi
    OEM price range: $80-$120
    Aftermarket price range: $40-$70

Related Codes That Often Appear With This One

  • P1700 — On automatic transmission Subarus, P1700 is a generic code indicating a throttle position sensor fault that is affecting the Transmission Control Module (TCM). The TCM uses TPS data to control shift points and line pressure. A bad TPS signal causes this code and harsh shifting.
  • 🎬 Watch how to diagnose the AT OIL TEMP light

Technical Service Bulletins (TSBs) & Recalls

  • No specific TSBs were found directly addressing P0122 on this platform. Subaru's technical information system (STIS) is the primary source for official bulletins, but public access is limited.

Platform-Specific Known Issues

  • A real-world repair story from a 2003 Legacy owner on 2CarPros.com highlights the importance of adjustment. After replacing the TPS, they got P0122 and P1700 codes, with the idle dropping to 500 RPM in gear causing the transmission to 'hammer'. This was resolved by correctly adjusting the sensor with a multimeter.
  • A YouTube video by an owner of a 1999 Legacy demonstrates the adjustment sensitivity. They note that with the sensor rotated slightly one way, you get a high idle. Rotated the other way, you get a good idle but the 'AT OIL TEMP' light comes on and the car won't shift properly. The sweet spot is in the middle of the adjustment slots.

Mechanic-Grade Diagnostic Values

  • TPS Resistance — expected: 1-10 kΩ (general specification). Failure: A reading outside of the 1-10 kΩ range, or an open/infinite reading, indicates a faulty sensor.
  • TPS Resistance (4-pin older models) — expected: Between pins 3 and 4: 3.0 - 7.0 kΩ. Failure: A reading outside this range indicates a faulty sensor.
  • TPS Signal Voltage (Key On, Engine Off) — expected: 0.45V - 0.55V at closed throttle, sweeping smoothly to ~4.5V at wide-open throttle.. Failure: Voltage below ~0.20V, stuck at 0V, or erratic jumps/drops during sweep.
  • TPS Reference Voltage at Connector — expected: 5.0V. Failure: Significantly lower or no voltage indicates a wiring or ECM issue, not a sensor failure.

Scan Tool Commands That Help

  • Subaru Select Monitor (SSM): Current Data Display & Save — To observe live data from the Throttle Position Sensor, Engine Speed, and other relevant parameters to confirm the sensor's output is incorrect or erratic compared to other engine data points. This is the dealer-level method for diagnosis.
  • Subaru Select Monitor (SSM): Diagnostic Code(s) Display — To read both current and memorized diagnostic trouble codes from the Engine Control Module (ECM) and Transmission Control Module (TCM). This can reveal related transmission codes (like P1700) that are triggered by the TPS fault.

Wiring & Ground Locations

  • GB-3 — Located on the left side of the firewall in the engine compartment.. This is a primary grounding point for multiple engine bay components. A corroded or loose connection here can cause various sensor reading issues, including a low voltage signal from the TPS.
  • GE — Located on the right rear of the engine block.. This is a main engine block ground. The TPS circuit relies on a solid engine ground reference. A poor connection here can introduce voltage offsets and trigger faults like P0122.
  • TPS Connector — On the side of the throttle body, where the intake air hose connects.. The 3-pin connector provides power, ground, and signal return for the sensor. The pins can corrode, and the wires entering the connector can fray from vibration and heat, causing an open or short in the signal circuit.
  • ECM (Engine Control Module) — Located in the passenger side footwell, under the carpet/kick panel.. This is the destination for the TPS signal wire. A continuity test from the TPS connector to the corresponding pin at the ECM connector is the final step to rule out a wiring break.

Real Owner Repair Stories

  • Reddit user post (Subaru with Automatic Transmission) — Flashing 'AT OIL TEMP' light and harsh, terrible shifting, especially in stop-start traffic.
    ❌ Tried (didn't work) Waiting overnight (symptoms would temporarily disappear)
    ✅ What actually fixed it The issue was diagnosed as a faulty lock-up duty solenoid in the transmission valve body, which was causing the transmission to overheat and triggering the warning light. This highlights that TPS-like symptoms can sometimes originate from the transmission itself.
  • YouTube video by 'Pera' (Subaru after an engine swap) — Immediately after an engine swap, the 'AT OIL TEMP' light was flashing constantly.
    ❌ Tried (didn't work) Checking all wiring circuits and continuity between the sensor and modules.
    ✅ What actually fixed it The transmission oil pan had been slightly bent upwards when using a jack during the engine swap. This caused the internal Automatic Transmission Fluid (ATF) temperature sensor to ground out against the pan, causing a malfunction and triggering the light. Replacing the pan and gasket resolved the issue. This is a critical edge case for anyone who has recently had the engine or transmission out.

OEM Part Supersession History

  • 22633AA14022633AA210 — Standard part revision and consolidation by Subaru.
    Heads up: 22633AA210 is the correct and current part for most vehicles in this range that originally used 22633AA140. They are interchangeable.

Model Year Variations Within This Range

  • 1999-2004: While most models in this range use a 3-wire TPS, some very early models (or those with engine swaps from older generations like the 2.2L) might have a 4-pin connector on the harness, even if the sensor itself only uses 3 pins. It is crucial to order a replacement sensor based on the pin count of the actual sensor being replaced, not just the connector it plugs into.

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 🔴 High — Very common, typically between 80,000 and 150,000 miles. Affects SOHC EJ25 engines (EJ251, EJ252, EJ253) from 1999-2004, usually as external oil and/or coolant leaks.
  • Automatic Transmission Torque Bind 🟠 Medium — Common on higher-mileage vehicles, especially if fluid has been neglected or tires are mismatched. Causes shuddering/hopping on tight turns.
  • Premature Wheel Bearing Failure 🟠 Medium — Rear wheel bearings are known to fail more often than fronts, sometimes before 100,000 miles. Symptoms include a grinding or humming noise that changes with speed.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: A used OEM (Subaru/Hitachi) TPS from a low-mileage donor car can be a cost-effective option, as the OEM sensor is generally more reliable than budget aftermarket alternatives. Given the low cost of a new quality aftermarket part, a used part is only recommended if on a very tight budget and a known-good OEM unit is available.

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

What to inspect on the donor part:

  • Verify the donor vehicle's mileage if possible.
  • Inspect the connector housing for cracks or brittleness.
  • Check the mounting holes for signs of being stripped or excessively tampered with.
  • Ask to test the resistance sweep with a multimeter before purchase if possible.

Aftermarket brands forum-validated for this vehicle:

  • Hitachi (OEM supplier)
  • Denso
  • Standard Motor Products (SMP)
  • NGK/NTK

Brands owners have reported issues with on this vehicle:

  • Unbranded, 'white box' sensors from online marketplaces are a gamble. They may fail prematurely or have incorrect voltage ranges, causing the code to return even after replacement.

Real Owner Stories

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

2003 Subaru Legacy EJ25

Symptoms: After removing and reinstalling the TPS, the owner experienced P0122 and P1700 codes, an idle dropping to 500 RPM while in gear, and the transmission 'hammering'.

What fixed it: Correctly adjusting the sensor using a multimeter to reach the proper voltage specification.

Source hint: 2CarPros.com: A 2003 Legacy owner posted about getting P0122 and P1700 immediately after taking the TPS off and putting it back on.

1997 Subaru Legacy

Symptoms: The vehicle triggered a P0122 code due to a wiring failure near the sensor.

What fixed it: Replacing the TPS connector pigtail after finding a wire frayed down to just a few strands.

Source hint: LegacyGT.com: A user with a '97 Legacy experienced P0122 after finding a frayed wire on the TPS connector and replacing the pigtail.

1999 Subaru Legacy EJ25

Symptoms: High idle when rotated one way; 'AT OIL TEMP' light and shifting failure when rotated the other way.

What fixed it: Finding the 'sweet spot' in the middle of the adjustment slots to balance idle quality and transmission function.

Source hint: A YouTube video by an owner of a 1999 Legacy demonstrates the adjustment sensitivity.

Subaru Legacy EJ25

Symptoms: Hesitation issues and poor throttle response; testing revealed a low TPS voltage of 0.3v.

What fixed it: Adjusting the TPS voltage to 0.53v, which improved throttle response.

Source hint: ScoobyNet.com: A forum discussion details an owner chasing a hesitation issue, finding their TPS voltage was low (0.3v).

Frequently Asked Questions

What is the specific voltage range I should look for when adjusting the TPS on my 1999-2004 Subaru Legacy?
The closed-throttle voltage should be between 0.45V and 0.55V (ideally 0.5V). At wide-open throttle, the voltage should sweep smoothly up to approximately 4.5V.
My automatic Legacy has a flashing 'AT OIL TEMP' light and won't shift right; could this be the TPS?
Yes. On automatic models, a faulty or improperly adjusted TPS can cause the 'AT OIL TEMP' light to flash and lead to harsh or erratic shifting, or even prevent the transmission from shifting properly.
Is there a specific Subaru part number for the replacement sensor?
Yes, the TPS sensor used for this generation of EJ25 engines is part number 22633AA210.
I just replaced the sensor but now my idle is at 500 RPM and the transmission 'hammers' into gear. What did I do wrong?
The sensor is likely improperly adjusted. The mounting holes are slotted; if the voltage is too low (e.g., 0.3V), it can cause a low idle and severe shifting issues. You must rotate the sensor to the correct voltage spec before tightening.
Are there any TSBs for P0122 on the 1999-2004 Legacy?
No specific Technical Service Bulletins (TSBs) were found directly addressing P0122 for this platform in the available technical information.
Can a wiring issue cause P0122 even if the sensor is new?
Yes. Engine bay heat can make wiring brittle. Specifically, owners have reported frayed wires at the TPS plug or corrosion within the connector pigtail that triggers the code.
Replace TPS on 1999 Subaru Legacy
Replace TPS on 1999 Subaru Legacy
How to Properly Calibrate Throttle Position Sensor Subaru EJ25: VW Subaru Conversion Tech Tip 007
How to Properly Calibrate Throttle Position Sensor Subaru EJ25: VW Subaru Conversion Tech Tip 007
Subaru Legacy Throttle Position Sensor (TPS) for code 31 diagnostics
Subaru Legacy Throttle Position Sensor (TPS) for code 31 diagnostics
AT OIL TEMP LIGHT FIXED!! Subaru - Auto Transmission Diagnostic Help
AT OIL TEMP LIGHT FIXED!! Subaru - Auto Transmission Diagnostic Help
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 P0122 (Deep Dive) for:
  • Subaru Legacy: 199920002001200220032004
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