P0128: Coolant Thermostat (Coolant Temperature Below Thermostat Regulating Temperature)

P0128 means Coolant Thermostat (Coolant Temperature Below Thermostat Regulating Temperature). The engine is taking too long to reach normal operating temperature, or does not reach it at all. The coolant temperature stayed below the thermostat's regulating temperature for longer than expected. The most common cause is a thermostat stuck open.

P0128 is almost always a thermostat stuck partially open. It mainly costs fuel economy and cabin heat, but it is cheap to fix compared with most codes.

CodeP0128
SystemCooling system
SeverityLow
TypeGeneric powertrain

Can I keep driving? Safe to drive short-term, but have it checked to avoid failed emissions or worse fuel economy.

Common symptoms

  • Check engine light on
  • Temperature gauge reads lower than normal
  • Heater blows lukewarm air
  • Worse fuel economy

Possible causes

  • Thermostat stuck open or opening too early
  • Faulty coolant temperature sensor
  • Low coolant level
  • Cooling fan running all the time

How to diagnose P0128

  1. Check coolant level.
  2. Watch coolant temperature on a scan tool during warm-up: it should rise steadily to the normal operating range.
  3. Feel the upper radiator hose: if it warms up at the same time as the engine, the thermostat is likely open too early.
  4. Replace the thermostat with the correct temperature rating.

What the code means, digit by digit

PPowertrain0Generic (SAE) code1Sub-system28Specific fault

Generic codes have the same definition on every OBD-II vehicle (petrol cars from model year 1996 in the US, 2001 in the EU; diesels later). Manufacturers can add their own enhanced codes; those are not listed here.

Symptoms linked to P0128

Related codes

General guidance only. Fault codes describe what the engine computer saw, not which part failed: confirm with testing before replacing parts, and follow the vehicle's service information.