P0128 — Coolant Thermostat Below Regulating Temperature (L5P Duramax)

P0128 is a generic thermostat rationality / low coolant temperature code. On the L5P Duramax (2017–present 6.6L) it typically presents as a mechanical…

Updated September 2, 2026

What it means

Engine coolant does not reach the expected operating temperature in the expected time. The ECM monitors ECT rise vs. time/load and sets P0128 when the engine stays below regulating temperature. On this platform the thermostat is a conventional mechanical wax element.1

Most likely causes

  1. Thermostat stuck open / slow to close (mechanical wax thermostat failure) — The L5P uses a conventional mechanical wax-element thermostat. A stuck-open or slow-closing thermostat prevents the engine from reaching regulating temperature in the expected time, which is the classic trigger for P0128 on this platform.12
  2. Low coolant level or air pocket in cooling system — Insufficient coolant or trapped air reduces heat transfer and delays warm-up, causing the ECM to see coolant temperature staying below regulating temperature. NHTSA complaints note low-coolant messages with actual level fine, pointing to sensor/level sensing issues that can mimic warm-up problems.132
  3. Engine coolant temperature (ECT) sensor inaccurate or circuit fault — A biased-low ECT reading or wiring fault makes the ECM think the engine is colder than actual, setting P0128. The code is also described as a thermostat rationality / ECT sensor / wiring issue on the L5P.12
  4. Extended idle / very light load in cold ambient conditions — Prolonged idle or very light load in cold weather can keep coolant below regulating temperature long enough for the rationality monitor to set P0128. This is a generic contributing condition for the low-temperature rationality test.1

How to diagnose

  1. Verify freeze-frame / live data: confirm ECT rise rate is slow and engine reaches < regulating temp under normal driving. Compare ECT to ambient on cold start.
  2. Inspect coolant level and condition; check for external leaks, proper fill, and signs of air ingestion. NHTSA reports show low-coolant messages with level actually fine, so verify level sensor operation if equipped.
  3. Command a warm-up drive with scan tool monitoring ECT vs. time; a healthy L5P should reach regulating temperature within the expected window. A persistently low ECT points to thermostat or sensor.
  4. Check ECT sensor rationality: compare ECT to intake air temperature on a cold soak (should be close) and to a calibrated thermometer at operating temperature. Inspect ECT connector and wiring for corrosion/loose pins.
  5. If ECT reads plausible but warm-up is slow, evaluate thermostat function via monitored warm-up profile and cooling system integrity (no excessive radiator airflow bypass, proper coolant concentration).

Parts and tools you may need

Rough cost and difficulty

Parts and labor vary by region and shop. Thermostat replacement and ECT sensor are common service items; diagnostic time is typically 0.5–1.0 hr plus road test.

When to see a pro

If ECT readings are erratic, wiring damage is suspected, or the thermostat needs replacement, have a qualified diesel technician perform pinpoint tests and repairs. Do not attempt high-pressure cooling system service without proper training and safety equipment. If the vehicle exhibits overheating, coolant loss, or enters limp mode, stop driving and seek immediate professional service.

Sources

Watch a repair

Third-party videos, not ours — for illustration. Confirm anything against the factory service information for your truck.

Really?? A 2020 6.7 P0128 | Drain your coolant & fix NOW! #diy #mechanic — PowerStroke Tech Talk w/ARod · 6K views

P0128 Code on 2018 Ford F350 Super Duty 6.7 PowerStroke - DIY Thermostat & ECT Sensor Replacement — Humble Home Mechanic · 5K views

6.7 powerstroke thermostat replacement — FatherDaughterCardRips · 63K views