OBD-II trouble code
P0128: Coolant Temperature Below Thermostat Regulating Temperature
The engine isn't reaching its normal operating temperature in the expected amount of time. The most common cause is a stuck-open thermostat. The car is drivable, but fuel economy and emissions will suffer.
Quick facts
- System
- Powertrain
- Category
- Cooling System
- Severity
- Low severity
- Drivable
- Usually safe to drive short-term
- Repair cost range
- $150 – $600
- DIY difficulty
- Intermediate DIY
What does P0128 mean?
Modern engines are designed to run at a regulated operating temperature, typically around 195°F to 220°F, controlled by a thermostat that closes when the engine is cold and opens as it warms up. The engine control module (ECM) monitors the engine coolant temperature (ECT) sensor and expects to see the coolant climb to the thermostat's regulating temperature within a specific time and distance based on outside air temperature.
When that warm-up condition is not met, the ECM sets P0128. The most likely culprit is a thermostat that has failed in the open position, allowing coolant to circulate freely and never reach the target temperature. A failed ECT sensor or extremely cold ambient driving conditions on short trips can also trigger the code.
P0128 is not a safety code and does not cause overheating — it indicates the opposite problem. However, an engine that runs cold uses more fuel, produces more emissions, wears faster, and provides poor heater output in cold weather, so the fix is worth doing.
Common causes
- Thermostat stuck open (the most common cause by a wide margin)
- Faulty engine coolant temperature (ECT) sensor reporting a low reading
- Faulty intake air temperature (IAT) sensor used in the warm-up calculation
- Low coolant level allowing air to circulate and slow warm-up
- Very cold ambient temperatures combined with short trips before warm-up completes
- Recent thermostat replacement with the wrong temperature rating
Symptoms
- Check engine light is on
- Heater takes a long time to produce warm air
- Temperature gauge reads lower than normal or never reaches the middle
- Reduced fuel economy
- Slightly rough running until warm in extreme cases
Diagnostic steps
- 1.Check the coolant level and condition. Top off if low, and re-test after driving a full warm-up cycle.
- 2.Use a scan tool to watch the ECT reading from cold start through a full drive. It should climb steadily and stabilize around the thermostat rating.
- 3.Compare the ECT and IAT readings at cold start. They should be similar; a large discrepancy points to a faulty sensor.
- 4.Feel the upper radiator hose during warm-up — it should warm noticeably once the thermostat opens. A hose that warms gradually from idle suggests a stuck-open thermostat.
- 5.If the thermostat is original or near its service interval and the symptoms match, replacing the thermostat usually resolves P0128 on the first try.
Repair cost
$150 – $600
Thermostat replacement is the most common fix and typically runs $150 to $400 in parts and labor on mainstream vehicles. Coolant temperature sensor replacement is $100 to $250. European or longitudinal-mounted engines with hard-to-reach thermostats can climb past $500.
Estimate your repair
Run the numbers for your vehicle
Open the Repair Cost Estimator with check engine light diagnosis preselected. Adjust labor rate and vehicle category to fit your situation.
Related repairs
DIY vs shop
This is an intermediate DIY job. It usually involves diagnostic steps, specialty parts, and some careful work in tight spaces. If you have the tools and a service manual or trustworthy video for your specific vehicle, it is achievable in a weekend. Otherwise, a competent independent shop will be faster.