Car & driving · Free
P0128: coolant temperature below thermostat regulating temperature
P0128 means the engine took too long to reach its normal operating temperature. In most cases the thermostat is stuck open and lets coolant through the radiator all the time. It is not urgent, but a cold engine uses more fuel and wears faster.
- No account
- Runs on your device
- Phone & desktop
Check your car for P0128
Runs on your device

Connect your OBD2 adapter
- Plug the adapter into the OBD2 port – usually under the steering wheel, near the pedals.
- Switch the ignition on, or start the engine.
- Bluetooth adapter? Turn Bluetooth on. Nothing else to set up.
This browser cannot talk to OBD adapters. Use Chrome or Edge on Android, Windows or Mac – on iPhone, the free Bluefy browser works with Bluetooth LE adapters. The demo car works everywhere.
Wi-Fi adapters cannot work in a browser; Bluetooth LE, classic Bluetooth (on a computer) and USB adapters can.
Your car data stays on your device. The page talks to the adapter directly; codes, VIN and values are never uploaded.
Never use it while you drive. Set things up before you set off, or let a passenger handle the phone. Standard OBD2 reads engine and emissions data; ABS, airbag and coding need workshop equipment.
What P0128 means
The thermostat keeps the coolant away from the radiator until the engine is warm, so it heats up quickly, and then holds it at its working temperature, usually somewhere between 85 and 105 °C. The engine computer knows how long warming up should take, based on the outside temperature and how the car is driven.
If the coolant temperature stays below the expected value for too long, the computer stores P0128. It matters to the computer itself too: some self-tests and the full fuel control only start once the engine is warm.
Symptoms of P0128
- The temperature gauge rises slowly or stays below its usual position, especially on the motorway.
- Lukewarm heating in winter.
- Higher fuel consumption, because a cold engine runs richer.
- Self-tests in Inspection that never complete.
Causes of P0128, cheapest first
Work down the list in order: the first checks cost little or nothing, the last ones are jobs for a workshop.
Low coolant level
With too little coolant, the sensor can sit in an air pocket and read wrongly. Check the level in the expansion tank with the engine cold and top it up with the right coolant.
A thermostat stuck open
By far the most common cause. If the upper radiator hose turns warm within a few minutes of a cold start, coolant is already flowing to the radiator. A new thermostat with the correct opening temperature fixes it.
A coolant temperature sensor that reads low
Compare it with the intake air temperature after the car has stood overnight: both should show almost the same value. A sensor that reads several degrees low or jumps around should be replaced.
A cooling fan that runs all the time
A stuck fan relay or faulty fan control keeps cooling the engine even when it is cold. Listen whether the fan runs right after a cold start.
Very cold weather and short trips
In freezing weather, long idling or long downhill stretches can set the code on some cars without a fault. If it also appears in mild weather, look at the thermostat.
Can you drive with P0128?
Safe to drive, fix it within weeks. A slightly cold engine is not dangerous, but it burns more fuel, collects more deposits and keeps some self-tests from running. Replace the thermostat within the next few weeks; in winter you also get your heating back.
Check P0128 with OBD Studio
Connect your adapter above, or try the demo car, then:
- Start the car cold, open Live data and graph Coolant temperature during the first 15 minutes of driving. A healthy engine climbs steadily and then stays in a narrow band.
- If the temperature climbs and then sinks again on the motorway, or never passes about 75 °C, the thermostat opens too early.
- Before the first start of the day, compare Coolant temperature with Intake air temperature: they should match within a few degrees.
- After the repair, clear the code and check that the warm-up curve now reaches its normal level.
More fault code guides
Each of these codes has its own page with causes ranked by cost and the checks that go with them.
- P0420Catalyst efficiency below threshold
- P0171System too lean
- P0300Random or multiple misfire
- P0455EVAP system large leak
- P0442EVAP system small leak
- P0172System too rich
- P0401EGR flow too low
- P0101Air flow sensor implausible
- P0135Front O2 sensor heater
- P0016Crankshaft and camshaft out of step
- P0011Intake camshaft timing over-advanced
- P0141Rear O2 sensor heater
- P0113Intake air temperature sensor high
- P0457Fuel cap loose or missing
- P0299Turbo underboost
- P0700Transmission control system fault
- P0087Fuel rail pressure too low
- P0562System voltage low
- U0100Lost communication with engine computer
More OBD Studio pages
Frequently asked questions
Is P0128 always the thermostat?
Most of the time, yes. Check the coolant level first and compare the coolant sensor with the intake air temperature on a cold engine; if both look right, the thermostat is the likely cause.
Can I drive with P0128?
Yes. The engine will not overheat because of this code: it is too cold, not too hot. Fix it within a few weeks to bring fuel use and heating back to normal.
Why does P0128 appear mostly in winter?
In cold weather a thermostat that opens too early has more effect, because the cold air cools the radiator so well that the engine never warms up fully.
Can I read P0128 without going to a workshop?
Yes. With any ELM327-compatible Bluetooth LE or USB adapter, OBD Studio on this page reads P0128 and every other stored code for free, shows the freeze frame and clears the code after the repair. Nothing to install, no account.

