P0120

Throttle Position Sensor/Switch A Circuit Malfunction

P0120 is a generic OBD-II powertrain diagnostic trouble code: Throttle Position Sensor/Switch A Circuit Malfunction. It is logged by the engine control unit when the throttle monitor detects that a specific fault threshold has been exceeded — typically resulting in the malfunction-indicator lamp (MIL / check-engine light) being illuminated.

Code
P0120
Group
Powertrain
System
Throttle
Severity
high
Need P0120 disabled?
RaceTune permanently disables any OBD-II trouble code on supported ECUs — for motorsport, off-road, and export use.

What P0120 means

P0120 is a generic OBD-II powertrain code that indicates the Engine Control Module (ECM) or Powertrain Control Module (PCM) has detected an abnormal voltage signal from the Throttle Position Sensor (TPS) circuit A, or from the Accelerator Pedal Position (APP) sensor on drive-by-wire systems. The sensor is responsible for reporting the exact angle of the throttle plate to the ECM so it can calculate the correct air–fuel mixture and ignition timing.

The code is set when the TPS circuit A output voltage drops below approximately 0.2 V or rises above approximately 4.5 V, outside the sensor's normal 0.5–4.5 V operating window, or when the signal chatters erratically compared to the TPS B circuit. Because the ECM cannot determine actual throttle position, it typically activates a fail-safe (limp-home) mode, limiting engine power to protect drivetrain components.

P0120 is considered a moderate-to-high severity fault. While the vehicle may still be driveable in reduced-power mode, erratic throttle response or unexpected stalling creates a genuine road-safety risk. Prompt diagnosis is strongly recommended. Related codes P0121, P0122, and P0123 often appear alongside P0120 and can help narrow down whether the fault is a range/performance issue, a low-voltage condition, or a high-voltage condition respectively.

On electronic throttle body (ETB) vehicles, the ECM compares TPS A and TPS B signals continuously. A discrepancy between the two sensors — even if each is individually within range — can also trigger P0120. Always scan for companion codes before replacing parts, as a wiring fault upstream of the sensor is the most commonly overlooked root cause.

Common causes

Most-frequently reported root causes when P0120 is logged.

  • 1
    Faulty or worn throttle position sensor
  • 2
    Corroded, damaged, or shorted wiring harness to the TPS
  • 3
    Poor connector pin contact at the TPS or ECM
  • 4
    Carbon/dirt buildup on the throttle body altering sensor mechanics
  • 5
    Faulty accelerator pedal position sensor (drive-by-wire systems)
  • 6
    Open or short circuit in the TPS reference voltage or ground wire
  • 7
    Water or moisture intrusion into the TPS connector
  • 8
    Failed or damaged electronic throttle body assembly
  • 9
    ECM/PCM fault (rare, only after all other causes are excluded)

Symptoms drivers notice

Check Engine Light (MIL) illuminated
Vehicle enters limp-home / reduced power mode
Erratic, jerky, or unresponsive throttle
Engine hesitation or stumble on acceleration
Unstable or fluctuating idle
Unexpected engine stalling
Poor fuel economy
Transmission shifting issues on automatic gearboxes

How to diagnose P0120

A typical diagnostic flow when this code is present.

  1. 1
    Connect an OBD-II scanner, record all stored codes, and note any freeze-frame data to identify conditions when the fault was set.
  2. 2
    Visually inspect the TPS connector and wiring harness for corrosion, damaged insulation, bent pins, or chafing against engine components.
  3. 3
    With the ignition ON (engine off), measure TPS signal voltage at the sensor connector using a multimeter; it should read approximately 0.5 V at closed throttle and rise smoothly to ~4.5 V at wide-open throttle.
  4. 4
    Wiggle-test the wiring harness and connector while monitoring live TPS voltage on the scanner — any voltage spike or drop indicates an intermittent wiring fault.
  5. 5
    Inspect the throttle body for excessive carbon buildup around the throttle plate and clean if necessary; retest after cleaning.
  6. 6
    If wiring and throttle body are sound, test TPS reference voltage (5 V) and ground continuity back to the ECM.
  7. 7
    Replace the TPS (or throttle body assembly on integral-sensor units) if sensor output remains erratic after confirming wiring integrity.
  8. 8
    Clear codes, perform a drive cycle, and verify the repair with a live data scan.

Related powertrain codes

Frequently asked questions

Can I drive with a P0120 code?

Short distances in limp mode may be possible, but it is not recommended. The vehicle may stall unexpectedly or accelerate erratically, creating a safety hazard. Have it inspected as soon as possible.

Will cleaning the throttle body fix P0120?

Sometimes. Heavy carbon deposits can mechanically bind the throttle plate and distort sensor readings. Cleaning is a low-cost first step, but if the sensor itself has worn or the wiring is damaged, cleaning alone will not resolve the fault.

Does P0120 always mean the TPS needs replacing?

No. The code points to a circuit fault, not necessarily a failed sensor. Corroded connectors or damaged wiring are equally common causes. Always inspect and test the circuit first before replacing the sensor.

Why did P0120 come back after I replaced the TPS?

A returning code usually indicates a wiring or connector fault that was not repaired, or — less commonly — an incompatible aftermarket sensor. Recheck connector integrity and verify the reference voltage and ground signals reach the new sensor.

Is P0120 the same as P0121, P0122, or P0123?

They are related but distinct. P0120 is a general circuit malfunction. P0121 indicates a range/performance issue, P0122 flags a low-voltage (below threshold) condition, and P0123 flags a high-voltage (above threshold) condition. All affect the same TPS A circuit.

Disabling P0120 in software

RaceTune can permanently disable P0120 — and any other OBD-II diagnostic trouble code — on every ECU family we support. The monitor is disabled inside the ECU itself, so the fault stops being logged: the warning light stays off and the engine never enters limp mode for this code. The change is tied to your exact software version.

Permanent
The monitor is disabled in the ECU itself — not just cleared. It cannot return.
Tailored to your file
Each patch is matched to your specific software version — never a one-size-fits-all file.
Reversible
The original file is always preserved. Reflash the stock to return the ECU to factory state.

Software modifications affect emissions compliance and are not road-legal in many jurisdictions. RaceTune service files are intended for motorsport, off-road, and export use.

Got P0120 in your scan?

Upload your ECU file — we'll identify the exact software version and confirm whether a disable is available for your car.

Upload your file