P0128 on a Subaru

Quick answer

On Subaru models with documented external head gasket seepage on the EJ25 engine, slow coolant warm-up and a resulting P0128 can be a secondary symptom of gradual coolant loss rather than a purely thermostat-only failure.

Severity 2 of 4. Yes, while you arrange a repair.

Fix soon · Safe to keep driving

P0128 on a Subaru, at a glance
CodeP0128
Standard nameCoolant Thermostat (Coolant Temperature Below Regulating Temperature)
MakeSubaru
SeverityFix soon (2 of 4)
Safe to driveYes, while you arrange a repair
Tool neededScanner with live data
Reads P0128: live data and freeze frame

TOPDON TopScan Lite OBD2 Scanner, Bidirectional Scan Tool, 8 Resets & AI

Adds live sensor streams and freeze frame, which is what turns a code into a diagnosis rather than a guess.

$51.99Check pricePrices change often

Coverage varies by tool and by model year, so check a specific tool against a specific vehicle before buying.

What is different about P0128 on a Subaru?

The same EJ25 head gasket history documented elsewhere on this site for catalyst-related codes can also show up as a slow-warm-up complaint tied to P0128.

Patterns documented on Subaru vehicles

Head gasket seepage lowering coolant level: On some generations of the EJ25 engine documented for external head gasket seepage, gradual coolant loss can affect how quickly the engine appears to reach operating temperature, contributing to a P0128 reading alongside other head gasket symptoms.

Thermostat wear following high mileage: Standard age-related thermostat wear is also documented separately on Subaru boxer engines and should be checked as a more straightforward cause before assuming a head gasket issue.

What to check first on a Subaru

The order below narrows the generic P0128 list down to what is worth checking first on this make. It is a starting order, not a diagnosis: patterns are generation specific and a vehicle outside those generations may have none of them.

Check in this order

  • Check coolant level and look for signs of external head gasket seepage on EJ25-equipped models
  • Inspect the thermostat for a straightforward stuck-open condition first
  • Check actual engine warm-up time against expected time for the model
  • Address any head gasket seepage before assuming a thermostat-only fix will resolve the code

The generic picture behind P0128

The computer expects coolant temperature to reach and hold near the thermostat regulating point within a certain time and driving pattern. This code sets when the engine coolant stays below that point for too long, which almost always means the thermostat is stuck open or missing.

Everything on the main P0128 page still applies here. This page narrows the cause list to the patterns documented on Subaru vehicles, it does not replace the underlying definition.

The generic version of this code

Tools that can diagnose P0128

Adds live sensor streams and freeze frame, which is what turns a code into a diagnosis rather than a guess.

Common questions

Can a Subaru head gasket leak cause a slow warm-up code?

On some generations of the EJ25 engine documented for external head gasket seepage, gradual coolant loss over time can affect how quickly the engine reaches expected operating temperature, which can contribute to a P0128 code alongside more direct head gasket symptoms.

Should I replace the thermostat first or check for a head gasket leak first?

It is reasonable to check the thermostat first since it is the more common and less costly cause generally, but on EJ25-equipped Subaru models with any documented signs of external coolant seepage, checking for a head gasket leak alongside the thermostat is worthwhile before assuming a thermostat replacement alone will fix the code.