P0121 Code: Throttle/Pedal Position Sensor A Circuit Range/Performance
The throttle position reading is electrically valid but doesn't agree with engine load, airflow or rpm.
At a glance
Severity: Moderate
- Meaning
- Throttle/Pedal Position Sensor A Circuit Range/Performance
- System
- Fuel & Air Metering · Powertrain
- Safe to drive?
- With caution
- Typical repair cost
- $20–$850
- DIY difficulty
- Moderate
With P0121 the wiring is usually not the problem: the throttle position signal stays inside its normal voltage window, but the PCM's cross-checks say it can't be right. The PCM compares throttle angle with what the MAF or MAP sensor reports and with engine speed. Say the TPS claims 3% at 2,500 rpm while airflow says the engine is under heavy load, or the signal doesn't move when load clearly changes; that mismatch sets the code. The fault can sit on either side of the comparison, so a worn or loose TPS is only one suspect. An unmetered air leak, a skewed MAF or MAP sensor, a throttle plate that no longer closes to its learned position or a worn throttle shaft can all make an honest TPS look guilty.
Can I keep driving? Usually drivable with care. Expect flat acceleration, rough idle or a limp mode that caps engine speed on drive-by-wire cars; avoid highway merges and passing until it is sorted out.
How to read P0121
- P Powertrain
- 0 Generic (SAE)
- 1 Fuel & air metering
- 21 Specific fault
Symptoms
- Check engine light, sometimes with reduced-power mode on electronic throttles
- Weak or delayed response when you press the pedal
- Idle too high or too low for conditions, especially after a restart
- Occasional surge or stumble at steady cruise
- Late, soft or erratic shifting on automatics
- Throttle percentage in live data that doesn't return to the same value at idle
Possible causes
Ranked by how often each cause is behind this code (editorial estimate).
- TPS drifted or worn so its output no longer matches actual throttle angle
- Intake air leak after the throttle (cracked hose, PCV, gasket) making load high at a small throttle angle
- MAF or MAP sensor reporting wrong airflow, so the comparison fails
- Throttle plate not closing to its learned position: heavy carbon, tampered idle stop screw or sticking cable
- TPS loose on its mounts or misaligned on the throttle shaft after replacement
- Worn throttle shaft bushings letting the plate wobble on high-mileage throttle bodies
Diagnosis step by step
Compare throttle angle with load in live data
Display throttle position, MAF (g/s) or MAP, rpm and calculated load together. At a warm idle, throttle should sit at a low, steady value and MAP should show strong vacuum, roughly 17 to 21 inHg. Snap the throttle; all values should rise together without one lagging. Whichever PID doesn't follow the others is your main suspect.
Tools: OBD-II scanner
Check the closed-throttle value against spec
Key on, engine off, note the throttle percentage or voltage fully closed. Compare with the service data and with what the PCM learned. A value higher than normal suggests the plate is being held open by carbon, a misadjusted stop screw or a binding cable; lower than normal points to a drifted sensor.
Tools: OBD-II scanner, Multimeter
Smoke-test the intake for unmetered air
An air leak behind the throttle lets the engine breathe more than the throttle angle suggests. Feed smoke into the intake with the engine off and look for it escaping at hoses, the PCV system, the brake booster line and intake gaskets. High positive fuel trims at idle back this up.
Tools: Smoke machine
Inspect the sensor mounting and throttle shaft
Make sure the TPS screws are tight and the sensor is engaged with the flat on the throttle shaft. Then grip the throttle shaft and try to move it side to side; any noticeable play lets the plate move independently of the sensor and upsets both idle and the correlation test.
Tools: Screwdriver, Flashlight
Verify the airflow sensor
If throttle position looks sensible but MAF or MAP reads odd, test that sensor instead. A dirty MAF under-reports airflow, which can make the TPS look implausibly high. Clean the MAF element with dedicated cleaner only, and compare MAP key-on engine-off with barometric pressure.
Tools: OBD-II scanner
Clean, repair and relearn
Fix the leak or sensor you found, clean the throttle bore if carbon is heavy, then run the idle or throttle relearn for that vehicle. Clear the code and drive through idle, light cruise and a firm acceleration to let the PCM rerun the comparison.
Tools: OBD-II scanner, Soft brush
Where the parts are
- 1MAF sensor
- 2Turbocharger
- 3Throttle body
- 4Intake manifold
- 5Fuel injector
- 6EGR valve
- 7Fuel pump
- 8Thermostat
Repair options & costs
| Repair | DIY? | Estimated cost |
|---|---|---|
| Clean throttle body and perform relearn | Yes | $80–$200 |
| Repair intake vacuum leak | Yes | $50–$350 |
| Replace throttle position sensor (cable throttle) | Yes | $90–$260 |
| Clean or replace MAF sensor | Yes | $20–$380 |
| Replace electronic throttle body | No | $300–$850 |
Rough US estimates for parts and labor; shop rates vary by region. Not a quote.
Notes by brand
Field data
| Chevrolet | 8 | ||
|---|---|---|---|
| Toyota | 4 | Corolla, Camry Hybrid, Yaris Liftback | |
| GMC | 2 | Envoy Xl, Yukon Xl | |
| Jeep | 2 | Compass, Patriot |
Source: NHTSA Complaints API (US government open data), analyzed by DTC mention.
Emissions / smog test impact
Will fail
P0121 keeps the check engine light on, which is an automatic fail on an OBD-II emissions test. A related vacuum leak can also upset fuel trims and keep monitors from completing, so fix the root cause rather than just clearing the code.
Frequently asked questions
If the TPS isn't necessarily bad, why does the code name it?
The code is named after the input the PCM flags, not the part that failed. It only knows two readings disagree; a leak or a bad airflow sensor makes an accurate TPS look wrong. That's why testing MAF, MAP and intake leaks is part of diagnosing P0121.
I adjusted the idle screw to raise the idle and now have P0121. Related?
Very likely. Turning the throttle stop screw opens the plate beyond the position the PCM expects at idle. The TPS then reads higher than learned, and on many vehicles that alone sets the code. Return the screw to its original setting and do a relearn.
Will cleaning the throttle body fix it?
It fixes the cases caused by carbon holding the plate off its stop or disturbing idle airflow. Afterwards the PCM must relearn the closed position, or idle may be poor for a while. If the code comes back after cleaning, move on to the sensor, the shaft or a leak.
Can a worn throttle shaft really cause this?
Yes, on high-mileage throttle bodies. The bushings wear and the plate can shift slightly without the sensor seeing it, while air also leaks past the shaft. The result is an idle and a TPS reading that don't match; the cure is a new throttle body.