P0128
Coolant Thermostat (Coolant Temperature Below Thermostat Regulating Temperature)P0128 is a generic OBD-II powertrain diagnostic trouble code: Coolant Thermostat (Coolant Temperature Below Thermostat Regulating Temperature). It is logged by the engine control unit when the coolant monitor detects that a specific fault threshold has been exceeded — typically resulting in the malfunction-indicator lamp (MIL / check-engine light) being illuminated.
What P0128 means
OBD-II code P0128 is set when the powertrain control module (PCM) determines that the engine coolant temperature is not reaching the thermostat's rated regulating temperature within the expected warm-up period. Under normal conditions, the thermostat remains closed while the engine is cold, allowing coolant to heat up quickly; once the coolant reaches the thermostat's opening temperature (typically 82–95 °C depending on the vehicle), the thermostat opens to circulate coolant through the radiator. P0128 fires when the PCM sees coolant temperature remain below that threshold for longer than the manufacturer-specified time after a cold start.
The most frequent root cause is a thermostat that is stuck in the open position, allowing coolant to circulate through the radiator continuously and preventing the engine from reaching full operating temperature. A cooling fan that runs at startup and stays on, a low or degraded coolant level, or a faulty engine coolant temperature (ECT) sensor sending an incorrectly low reading can produce the same symptom. Because modern ECUs rely on coolant temperature to determine fuel trim, ignition timing, and emissions system readiness, prolonged cold-engine operation increases fuel consumption, raises tailpipe emissions, and can delay or prevent the catalyst from entering closed-loop operation.
P0128 is an SAE generic (J1979) code present across all OBD-II compliant vehicles from model year 1996 onward. It does not indicate overheating and is typically not an immediate safety emergency, but it should be diagnosed and repaired promptly to avoid reduced fuel economy, elevated emissions, and potential long-term engine wear from running excessively rich on a cold-fuel map.
Common causes
Most-frequently reported root causes when P0128 is logged.
-
1
Thermostat stuck in the open position (most common cause)
-
2
Defective or out-of-range engine coolant temperature (ECT) sensor
-
3
Electric cooling fan running continuously at startup or not cycling off
-
4
Low coolant level or heavily diluted/degraded coolant mixture
-
5
Faulty intake air temperature (IAT) sensor skewing PCM warm-up calculations
-
6
Damaged, corroded, or open-circuit wiring and connectors in the ECT sensor circuit
-
7
Incorrect thermostat installed with a lower opening temperature than OEM specification
Symptoms drivers notice
How to diagnose P0128
A typical diagnostic flow when this code is present.
-
1
Connect a scan tool and record freeze-frame data; note coolant temperature at the time the code set and compare it to the thermostat's rated opening temperature
-
2
Allow the engine to cool completely, then check coolant level at the radiator cap (not just the reservoir) and inspect for contamination, oil mixing, or a heavily diluted anti-freeze mixture
-
3
With a cold engine, start it and listen for the electric cooling fan — it should not run immediately; continuous fan operation from a cold start points to a relay or fan control fault keeping the coolant artificially cold
-
4
Use an infrared thermometer to compare upper and lower radiator hose temperatures during warm-up; if both hoses heat up at the same rate from cold, the thermostat is stuck open and not blocking flow through the radiator
-
5
Cross-check the ECT sensor reading on the scan tool against a contact thermometer or infrared reading of the coolant outlet housing — a large discrepancy indicates a faulty sensor or wiring issue
-
6
Inspect ECT sensor wiring harness and connector for corrosion, chafing, or pin-back; repair as needed, clear the code, and perform a full cold-start drive cycle
-
7
If the thermostat is confirmed stuck open, replace it with an OEM-specification unit (verify the rated opening temperature matches the factory spec for the vehicle)
Related powertrain codes
- P008F — Engine Coolant Temperature/Fuel Temperature Correlation
- P00B1 — Radiator Coolant Temperature Sensor Circuit
- P00B2 — Radiator Coolant Temperature Sensor Circuit Range/Performance
- P00B3 — Radiator Coolant Temperature Sensor Circuit Low
- P00B4 — Radiator Coolant Temperature Sensor Circuit High
- P00B5 — Radiator Coolant Temperature Sensor Circuit Intermittent/Erratic
Frequently asked questions
Is it safe to drive with a P0128 code?
Short-distance driving is generally safe because P0128 indicates the engine is running too cold rather than overheating. However, continued operation with a stuck-open thermostat causes persistently rich fueling, increased fuel consumption, elevated emissions, and can prevent the catalytic converter from reaching its efficient operating temperature. The fault should be diagnosed and repaired as soon as practical.
Can a low coolant level really trigger P0128?
Yes. If the coolant level is low, the ECT sensor may be partially exposed or surrounded by an air pocket rather than liquid coolant, causing it to report a lower temperature than the actual bulk coolant temperature. Topping up with the correct coolant mixture and re-testing is always the first step before replacing more expensive components.
How do I confirm the thermostat is stuck open rather than the sensor being faulty?
The quickest field test is to point an infrared thermometer at the upper and lower radiator hoses immediately after a cold start. A working thermostat keeps the lower hose (radiator return) cool while the upper hose heats up; if both hoses rise in temperature together from the moment you start the engine, coolant is flowing through the radiator continuously, confirming the thermostat is stuck open.
Will replacing the thermostat fix P0128 in most cases?
In the majority of P0128 cases, yes — a stuck-open thermostat is the single most common cause. Replacing the thermostat with a new OEM-specification part (ensuring the opening temperature matches the factory rating) resolves the code on most vehicles. If the code returns after thermostat replacement, the next steps are to test the ECT sensor accuracy and inspect the cooling fan control circuit.
Disabling P0128 in software
RaceTune can permanently disable P0128 — 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.
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 P0128 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