P0128 on 2016-2023 Mazda CX-9: Coolant Temperature and Thermostat Guide
The P0128 code on a 2016-2023 Mazda CX-9 almost always means the engine thermostat is stuck open and needs to be replaced. This is a common failure item. Expect to pay between $40-$100 for an aftermarket part or $100-$150 for an OEM part. It is a manageable DIY job for those comfortable with draining and refilling coolant.
- P0128 on your CX-9 means the engine is warming up too slowly.
- The most probable cause by a wide margin is a thermostat that is stuck in the open position.
- Before replacing parts, check your coolant level. On 2016-2020 models, be aware of a known issue with cylinder head leaks causing coolant loss.
- Replacing the thermostat is a moderately easy DIY job that also requires draining and refilling the coolant.
- Ignoring this code will lead to poor fuel economy, poor heater performance, and potential long-term engine wear.
What's Unique About the 2016-2023 Mazda CX-9
For the 2016-2023 Mazda CX-9, the P0128 code is most frequently a straightforward thermostat failure. However, it's critical to first rule out a known issue with this engine: a coolant leak from a cracked cylinder head, which primarily affects 2016-2020 models. While a coolant leak can cause various temperature-related issues, P0128 specifically points to the engine warming up too slowly, which is classic behavior for a thermostat that is stuck open. It's important to note that a different code, P0126, is used for a similar issue on non-turbo Skyactiv engines, which have a more complex coolant control valve; the 2.5T engine in the CX-9 uses a traditional thermostat, making P0128 diagnosis more direct.
Symptoms You May Notice
- Check Engine Light is on
- Engine temperature gauge reads lower than normal or fluctuates, especially dropping at highway speeds
- Heater blows lukewarm or cool air, especially in cold weather.
- Reduced fuel economy.
- Engine takes an unusually long time to warm up.
- Replacing the Engine Coolant Temperature (ECT) sensor when the thermostat is the actual cause. The thermostat is a mechanical part that is far more likely to fail than the electronic sensor.
- Ignoring the P0128 code because the car seems to drive fine. This can lead to poor fuel economy, increased engine wear, and failed emissions tests.
Most Likely Causes
- Engine Thermostat Stuck Open 🔴 High Probability → Shop Integrated Thermostat Housing Assembly Thermostats are a common wear item designed to fail in the open position to prevent overheating. This is the most frequent cause for P0128 on most vehicles, including the CX-9. Aftermarket parts can sometimes fail prematurely or have different designs, leading to a repeat of the code or other cooling issues.
How to confirm: Use an OBD-II scanner to monitor live coolant temperature data. If the temperature struggles to reach ~190-200°F (88-93°C) or drops significantly at highway speeds, the thermostat is likely stuck open. You can also physically remove and test the thermostat in hot water to see if it opens and closes correctly.
Typical fix: Replace the engine coolant thermostat and gasket. Refill and bleed the cooling system with the correct type of coolant. The thermostat is located on the driver's side of the engine, and access requires removing the air intake ducting.
Est. part cost: $40-$150 - Low Engine Coolant Level 🟡 Medium Probability The 2.5L Skyactiv-G Turbo engine in 2016-2020 models is known for a potential coolant leak from the cylinder head. A low coolant level can introduce air pockets into the system, causing inaccurate readings at the ECT sensor or preventing the system from reaching temperature correctly.
How to confirm: Visually inspect the coolant reservoir and radiator (when the engine is cold). Check for signs of external leaks, particularly a sweet smell or green/blue residue around the exhaust manifold area on the back of the engine. A pressure test of the cooling system is the definitive way to find a leak.
Typical fix: Top off the coolant and monitor the level. If it drops again, find and repair the leak. If the cylinder head is cracked, this is a major repair that may be covered under Mazda's warranty extension related to TSB 01-002/23a.
Est. part cost: $20-$40 for coolant, potentially much higher if a leak repair is needed. - Faulty Engine Coolant Temperature (ECT) Sensor ⚪ Low Probability → Shop Engine Coolant Temperature Sensor While less common than a thermostat failure, sensors can fail over time by sending inaccurate readings to the PCM. An owner on Mazdas247 noted they were planning to replace their ECT sensor along with the thermostat as a preventative measure at high mileage.
How to confirm: With the engine cold after sitting overnight, use a scan tool to compare the ECT sensor reading to the Intake Air Temperature (IAT) sensor reading. They should be within a few degrees of each other. If the ECT reading is skewed, the sensor is likely faulty. You can also test the sensor's resistance with a multimeter; it should be around 2.2k-3.0kΩ at room temperature (20°C/68°F).
Typical fix: Replace the ECT sensor.
Est. part cost: $30-$80
Rare But Worth Checking
- Cooling Fan Stuck On: → Shop Engine Cooling Fan Blade If the electric cooling fan runs constantly, even when the engine is cold, it can prevent the engine from warming up properly. This is usually caused by a failed fan control module or a short in the wiring. A manufacturer service bulletin for other Mazda models, TSB Bulletin #01-005-20-3704, notes that incorrect cylinder head temperature reporting can also affect engine cooling fan operation.
- PCM Software Calibration Issue: On some older Mazda models, a similar code was sometimes caused by overly sensitive diagnostic parameters in the PCM, fixed by a software update. While not specifically documented for the 2016+ CX-9 with P0128, it remains a remote possibility. For instance, TSB Bulletin #01-021-13-2817B for the Mazda3 noted that a P0128:00 code could be caused by improper control logic of the PCM.
Diagnosis Steps
- Check for other stored DTCs. Address any other codes first.
- Inspect the engine coolant level in the reservoir and radiator (only when the engine is completely cool). Top off if low.
- Visually inspect for any signs of coolant leaks. Pay close attention to the area around the exhaust manifold and turbocharger for signs of the known cylinder head leak on 2016-2020 models.
- With a cold engine, use an OBD-II scanner to compare the live data from the Engine Coolant Temperature (ECT) sensor and the Intake Air Temperature (IAT) sensor. They should be within a few degrees of each other.
- Start the engine and monitor the ECT reading. The temperature should rise steadily to its operating point (typically 190-210°F or 88-99°C) and stabilize.
- If the temperature is slow to rise, or if it rises and then drops significantly when driving at highway speeds, the thermostat is almost certainly stuck open and should be replaced.
- If the temperature reading on the scanner is erratic or clearly incorrect despite the engine feeling warm, the ECT sensor is the likely culprit.
Parts You'll Likely Need
- Engine Coolant Thermostat
(OEM #PY8V-15-171 (for 2018+ models), P502-15-171 (for 2016-2018 models))— This is the most common cause of P0128. It fails by sticking in the open position, preventing the engine from reaching operating temperature in the specified time.
Trusted brands: Mazda OE, Gates, Beck Arnley
OEM price range: $30-$150
Aftermarket price range: $40-$100 - Engine Coolant / Antifreeze
(OEM #FL22)— The cooling system must be drained to replace the thermostat. It must be refilled with the correct type of coolant (Mazda FL22 or equivalent).
Trusted brands: Mazda FL22, Pentofrost A3, Zerex Asian Vehicle
OEM price range: $25-$35 per gallon
Aftermarket price range: $20-$30 per gallon
Technical Service Bulletins (TSBs) & Recalls
- 01-013/21 (later superseded by 01-002/23a) - While not directly for P0128, this TSB addresses a coolant leak from the cylinder head on some 2.5T engines, which is a critical related issue to check for. The TSB states cracks can be caused by exhaust manifold deformation, residual stress in the head, or external forces. The fix involves a modified cylinder head and exhaust manifold gasket.
- TSB Bulletin #01-021-13-2817B - Although issued for the Mazda3, this bulletin highlights that some Mazda vehicles may experience a P0128:00 (Thermostat Stuck Open) concern caused by improper control logic of the PCM, requiring a software update to correct.
- TSB Bulletin #01-005-20-3704 - This bulletin for other Mazda models mentions that a MIL on with DTC P0128 can occur where the engine temperature may be cold and report as hot or vice versa, potentially affecting fan operation.
Platform-Specific Known Issues
- A known issue for 2016-2020 models with the 2.5L Turbo engine is a coolant leak from a cracked cylinder head near the exhaust manifold. While this often presents as coolant loss, it's an important issue to be aware of when diagnosing any cooling system problem on this vehicle. Mazda issued a warranty extension for this specific problem.
Mechanic-Grade Diagnostic Values
- Engine Coolant Temperature (ECT) Sensor Resistance — expected: Approximately 2,200 - 3,000 Ω at 20°C (68°F) and 250 - 350 Ω at 80°C (176°F).. Failure: A reading of infinite resistance (open circuit) or zero resistance (short circuit), or a value significantly outside the expected range for a given temperature.
- PCM Logic for P0128 Trigger — expected: Engine coolant temperature should reach a minimum threshold (typically 160-190°F or 71-88°C) within a few minutes of startup.. Failure: The PCM sets code P0128 if the ECT, as measured by the sensor, does not reach this expected temperature in the calculated time, based on factors like IAT and engine run time.
Real Owner Repair Stories
- Mazdas247 Forum User 'arock712' (2017 Mazda CX-9 GT) — After having the engine replaced for the known coolant leak/cracked head issue, the owner heard a sound like water circulating under the passenger side dashboard when the car first starts up.
❌ Tried (didn't work) The dealership initially dismissed a cooling system issue, suggesting a clogged HVAC drain instead.
✅ What actually fixed it The issue was identified by other forum members as classic symptoms of air trapped in the cooling system (specifically the heater core) that was not properly bled after the engine replacement. The resolution is to properly bleed the cooling system to purge the trapped air.
OEM Part Supersession History
P502-15-171→PY8V-15-171— Mid-generation part update. The exact reason for the change is not documented, but it is common for manufacturers to refine parts for reliability or manufacturing efficiency.
Heads up: P502-15-171 is specified for 2016-2018 models, while PY8V-15-171 is for 2018 and newer models. While they may be physically interchangeable, it is best practice to use the part number specified for the vehicle's VIN.PY8V-15-171 (Turbo Engine OEM)→PX8E-15-171 (Non-Turbo Engine OEM)— This is not a direct supersession but a known performance modification. The PX8E-15-171 thermostat from the naturally aspirated 2.5L engine reportedly opens at a lower temperature.
Heads up: Using this part on a turbo engine is an intentional modification to make the engine run cooler. While some tuners recommend it for modified cars to reduce heat soak, it could potentially cause the P0128 code to set in very cold climates as the engine may warm up even slower than intended.
Model Year Variations Within This Range
- 2016-2020: These model years are susceptible to a cracked cylinder head coolant leak near the exhaust manifold, covered by Mazda TSB 01-002-23a and a warranty extension. This must be ruled out when any cooling system issue is present.
- 2016-2018 vs 2018-2023: The OEM thermostat part number changed mid-2018. 2016-2018 models use P502-15-171, while 2018+ models use PY8V-15-171.
Diagnostic Flowchart
Other Known Issues on This Vehicle
Issues unrelated to this code that are worth knowing about as an owner of this generation:
- Cracked Cylinder Head Coolant Leak 🔴 High — Common on 2016-2020 models. Can occur at various mileages. A very expensive repair if not covered by warranty extension. (Ref: TSB 01-013/21 (superseded by 01-002/23))
- Excessive Oil Consumption from Valve Stem Seals 🟠 Medium — Primarily affects certain 2021 models, triggering a low oil light before the scheduled oil change interval. Subject of a class action settlement and warranty extension. (Ref: TSB 01-003-23)
- Leaking Turbocharger Coolant Lines 🟠 Medium — Heat cycling can cause coolant hoses connected to the turbo to degrade and leak over time. Can lead to low coolant levels and potential turbo damage if ignored.
- Water Pump Failure 🟠 Medium — Mentioned as a potential failure point, though less common than the cylinder head issue. Can lead to overheating if it fails. (Ref: TSB 01-010/23 (notes some pumps are replaced unnecessarily))
- Leaking Oil Control Valve (OCV) 🟡 Low — Some owners report minor oil leaks from the OCV located on the top of the engine. Generally not a severe leak but can be a nuisance.
Used vs. New Parts: Buying Guide for This Vehicle
When a used part is the smart pick: For a P0128 repair, a used part is never recommended. The primary cause is the thermostat, which is an inexpensive wear-and-tear component that should always be replaced with a new part.
OEM-only on this vehicle (don't cheap out):
- Engine Coolant Thermostat: Strongly recommended. A video comparison showed an aftermarket Motorad thermostat having a significantly smaller valve opening than the genuine Mazda part, which could improperly restrict coolant flow and cause other temperature regulation problems.
- Engine Coolant / Antifreeze: Strongly recommended to use Mazda FL22 or a validated equivalent. Using generic 'all makes, all models' coolant can lead to corrosion or gelling in the cooling system.
Aftermarket brands forum-validated for this vehicle:
- For Coolant (FL22 Equivalents): Pentofrost A3, Zerex Asian Vehicle Formula, Ravenol HJC.
- For Thermostats: While OEM is heavily preferred, forum discussions mention Gates and Stant as generally acceptable aftermarket options if OEM is unavailable. Beck/Arnley is also often cited as a quality re-packager of OEM parts.
Brands owners have reported issues with on this vehicle:
- Motorad: At least one video documents a significant design difference in their thermostat for a similar Mazda engine, which could negatively impact performance.
Real Owner Stories
Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.
2016-2020 Mazda CX-9 2.5T
Symptoms: Owners reported a sweet smell or green/blue residue around the exhaust manifold area on the back of the engine, often accompanied by coolant loss.
What fixed it: Replacement of the cylinder head and exhaust manifold gasket as per TSB 01-002/23a.
Cost: $0-$10,000
Source hint: Mazdas247 Forum - Thread 'CX-9 2.5T Engine Coolant Leaking TSB'
2021 Mazda CX-9 2.5T
Symptoms: Low oil light triggers before the scheduled oil change interval.
What fixed it: Replacement of valve stem seals as part of a class action settlement and TSB 01-003-23.
Source hint: TSB 01-003-23
Related OBD-II Codes
Frequently Asked Questions
Is the coolant leak on my 2016-2020 CX-9 related to the P0128 code?
Does Mazda have a warranty extension for the cylinder head issue on the CX-9?
Where is the thermostat located on the 2.5L Skyactiv-G Turbo engine?
Can I use any aftermarket thermostat to fix P0128 in my CX-9?
How can I tell if my P0128 code is a faulty ECT sensor or a stuck thermostat?
What causes the cylinder head to crack on the 2016-2020 CX-9 2.5T?
Helpful Videos
We Have This Part in Stock
The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.
- Mazda CX-9:
- 🧭 Diagnostic Flowchart
- 🎬 Helpful Videos
- 🛍️ Shop This Part
- What's Unique About the 2016-2023 Mazda CX-9
- Symptoms You May Notice
- Most Likely Causes
- Rare But Worth Checking
- Diagnosis Steps
- Parts You'll Likely Need
- Technical Service Bulletins (TSBs) & Recalls
- Platform-Specific Known Issues
- Mechanic-Grade Diagnostic Values
- Real Owner Repair Stories
- OEM Part Supersession History
- Model Year Variations Within This Range
- Other Known Issues on This Vehicle
- Used vs. New Parts: Buying Guide for This Vehicle
- Real Owner Stories
- 2016-2020 Mazda CX-9 2.5T
- 2021 Mazda CX-9 2.5T
- Related OBD-II Codes
- Frequently Asked Questions
- 🎟️ Get 5% Off