P0128 Engine Not Warming Up (Thermostat)
Drive normally - check soon
The engine takes too long to warm up, or never gets fully warm. A thermostat stuck open is the usual cause. Safe to drive, but fix it: a cold engine uses more fuel and gives weak cabin heat.
- Safe to drive?
- Yes
- Typical cost at a shop
- $499-$716 RepairPal national averages, parts and labor
- Emissions test
- Yes, while the check engine light is on, most OBD emissions tests fail the car.
- Carmaker bulletins
- 2 notes with links
What it means
The computer expects the coolant to reach a set temperature within a set time after a cold start. P0128 means it did not. The usual reason is a thermostat that stays open, so coolant flows through the radiator all the time and the engine cannot warm up.
The technical version
The thermostat monitor models how fast coolant should warm from the start temperature, given airflow and load. If the coolant sensor stays below the thermostat regulating temperature for longer than the model allows, P0128 sets. Cold weather and long idles make a weak thermostat easier to catch.
Official name: Coolant Thermostat Malfunction.
Symptoms
- Weak or slow cabin heat in cold weather.
- The temperature gauge reads low or drops on the highway.
- Worse fuel economy.
- Often no other sign.
Causes, most likely first
| Cause | How likely | How to tell |
|---|---|---|
| A thermostat stuck open or opening too early | most common | Coolant stops rising well below normal and drops at highway speed. |
| A coolant temperature sensor that reads low | less common | After the car sits overnight, coolant and intake air temperature should read nearly the same. A big gap points to the sensor. |
| Low coolant | less common | The level is below the mark, or the sensor reads erratically. |
| A cooling fan that runs all the time | rare | The fan runs on a cold engine. |
| A known software issue on some models | rare | Check the make notes below: at least one carmaker fixes P0128 with a software update. |
How likely is our ranking from repair data and common practice, not a published rate.
What the live data shows
Watch coolant temperature from a cold start. A healthy engine climbs steadily to its normal range and stays there. With a stuck-open thermostat it stops rising early, and it falls when you drive at highway speed because more air flows through the radiator. After a cold soak, coolant and intake air temperature should read about the same.
What to check first, in order
-
Check the coolant level with the engine cold.
Low coolant can fool the sensor.
What the data shows: No reading needed.
Cost: free
-
Compare coolant and intake air temperature after the car sits overnight.
It tells a bad sensor from a bad thermostat.
What the data shows: Both should be close to outside temperature.
Cost: no cost if you have a scanner
-
Watch coolant temperature on a 15-minute drive with some highway.
This shows the stuck-open pattern.
What the data shows: A plateau below normal, and a drop at speed.
Cost: no cost if you have a scanner
-
Check the make notes for a software fix.
Some cars have a bulletin for this code.
What the data shows: No reading needed.
Cost: free
-
Replace the thermostat.
It is the usual fix.
What the data shows: Afterwards, coolant should reach and hold normal temperature.
Cost: $616-$716 at a shop (Thermostat replacement, RepairPal)
Is it safe to drive?
Drive normally - check soon
Yes. The engine runs cool, not hot.
Nothing about P0128 will strand you or break something overnight. But a cold engine uses more fuel, wears faster, gives weak heat in winter, and keeps the light on, where it can hide a new fault. Put a thermostat on the to-do list.
Stop driving and get help if
- The gauge goes high instead of low: that is overheating, a different and urgent problem.
- Coolant is leaking.
What it costs
| Repair | Typical cost |
|---|---|
| Coolant temperature sensor replacementRepairPal, updated September 3, 2026 | $499-$585 |
| Thermostat replacementRepairPal, updated September 3, 2026 | $616-$716 |
National averages for the full job at a shop, parts and labor, from RepairPal (updated September 3, 2026). Your price depends on the car and the area. Many of the first checks on this page cost nothing with a scanner. Thermostat replacement was CarMD's number 9 check engine repair in 2025, at an average of $324. CarMD averages come from a different method (repairs reported by its users), so they can sit below RepairPal's shop estimates.
Sources for the notes: CarMD 2026 Vehicle Health Index (press release, April 22, 2026).
Can I clear it? Will it come back?
The thermostat monitor needs a cold start to run. After the repair, clear the code, let the car sit overnight and drive. The code should not return.
Will it fail an emissions test?
Yes, while the check engine light is on, most OBD emissions tests fail the car.
Carmaker notes
Service bulletins and warranty extensions that name this code. Ask a dealer to check your VIN.
-
Toyota 2010-2011 Camry, 2AR-FE engine, automatic
Toyota bulletin T-SB-0045-13 (March 2013) covers the check engine light with P0128 on these cars. The fix is an engine computer software update, not a thermostat.
Toyota T-SB-0045-13 via NHTSA static.nhtsa.gov
-
Hyundai certain 2019 Elantra 2.0L
Hyundai bulletin 20-EM-002H (July 2020) replaces the thermostat for P0128 and P2181.
Hyundai TSB 20-EM-002H via NHTSA static.nhtsa.gov
Related codes
Also related, no guide yet: P0125, P0118.

How Obie handles P0128
Obie watches coolant and intake air temperature from a cold start and tells you whether the pattern looks like a thermostat or a sensor. Obie is part of ScanMyCar Pro. Codes and live sensors are free.
Questions people ask
Is P0128 always the thermostat?
Usually, but check the coolant level and the coolant sensor first, and look for a software bulletin for your car.
Can I drive with P0128?
Yes. It is not urgent, but fix it for fuel economy and heat.
Will P0128 clear by itself?
The light can go out if the engine warms up normally on later drives, for example in warm weather. The weak thermostat is still there.
Sources
- RepairPal: P0128 code page repairpal.com
- RepairPal: Coolant temperature sensor replacement (updated September 3, 2026) repairpal.com
- RepairPal: Thermostat replacement (updated September 3, 2026) repairpal.com
- CarMD 2026 Vehicle Health Index (press release, April 22, 2026) prnewswire.com
- Toyota T-SB-0045-13 via NHTSA static.nhtsa.gov
- Hyundai TSB 20-EM-002H via NHTSA static.nhtsa.gov
- Texas DPS emissions testing FAQ dps.texas.gov
- Arizona myazcar.com: OBD and the check engine light myazcar.com
A guide, not a diagnosis. This page describes what P0128 generally means across OBD2 cars. What is actually wrong with your car depends on its live data and its history, and any repair decision deserves a proper diagnosis, whether that is you with a scanner or a professional with a lift.