P0128 on 2012-2019 Kia Soul: Causes and Fixes for Coolant Temperature Issues
P0128 on a 2012-2019 Kia Soul indicates the engine isn't warming up quickly enough. The most common fix is replacing a stuck-open thermostat, a part that costs about $20-$60. However, Kia has issued multiple software updates for the engine computer to fix this specific code, so you should check with a dealer for any applicable Technical Service Bulletins (TSBs) before replacing parts. This is especially true for the 1.6L GDI engine in specific model years.
- For the 2012-2019 Kia Soul, P0128 can often be fixed with a software update from a Kia dealer; check for TSBs first.
- If no software update is needed, the most likely cause is a thermostat that is stuck open.
- You can diagnose a stuck thermostat at home using an OBD-II scanner with live data by watching the coolant temperature as the engine warms up.
- Always check your coolant level, as a low level can also trigger this code.
- This is a DIY-friendly repair for those with basic tools and mechanical experience.
What's Unique About the 2012-2019 Kia SOUL
For the 2012-2019 Kia Soul, this code is frequently caused by overly sensitive software in the Engine Control Module (ECM), not a mechanical part failure. Kia acknowledged this by releasing several Technical Service Bulletins (TSBs) that call for an ECM software update to correct the logic that triggers the P0128 code. [TSBENG196, TSBENG156, TSBENG146R1, TSB-ENG118R2, TSB-ENG-152] These TSBs are often specific to certain model years and engines, like the 1.6L GDI. Because of this, a crucial first step for any Soul owner seeing this code is to check with a Kia dealership to see if their vehicle needs a software reflash before proceeding with part replacements.
Diagnostic Flowchart
Tap your situation to follow the diagnostic path that matches what you're seeing on this vehicle.
Generation note: This year range covers the end of the first generation (AM, 2012-2013) with the 1.6L Gamma engine and the entire second generation (PS, 2014-2019) which used both the 1.6L Gamma GDI and 2.0L Nu GDI engines. The causes are generally the same across both generations, but Kia issued different Technical Service Bulletins for specific model years and engines within this range, many related to ECU software updates. [TSBENG146R1, TSB-ENG118R2, TSBENG156, TSBENG196]
Symptoms You May Notice
- Check Engine Light is on
- Engine temperature gauge reads lower than normal or fluctuates
- Heater takes a long time to warm up or blows lukewarm air
- Decreased fuel economy
- Engine idle speed is higher than normal
- Replacing the coolant temperature sensor when the actual problem is a stuck-open thermostat.
- Replacing the thermostat without first checking if a simple, and sometimes free, ECM software update from the manufacturer would have solved the problem.
- Replacing the thermostat but failing to properly bleed the air from the cooling system, which can cause erratic temperature readings and potentially re-trigger the code. 🎬 Watch this DIY guide to understanding and fixing code P0128.
Most Likely Causes
- Outdated Engine Control Module (ECM) Software 🔴 High Probability Kia issued multiple Technical Service Bulletins (e.g., TSBENG196 for 2019 1.6GDI, TSBENG156 for 2015 models, TSBENG146R1 for 2012-2013 models) specifically to update the ECM logic for being too sensitive and falsely triggering code P0128. [TSBENG196, TSBENG156, TSBENG146R1]
How to confirm: Contact a Kia dealership with your vehicle's VIN. They can check their system for open service actions or applicable TSBs that involve an ECM software update. This is the most critical first step.
Typical fix: A Kia dealership performs a software update (reflash) on the ECM using their proprietary KDS diagnostic tool. This may be covered under warranty or a service campaign.
Est. part cost: $0 - $150 - Faulty Thermostat (Stuck Open) 🔴 High Probability This is the most common mechanical failure for P0128 on almost all vehicles. The thermostat fails in the open position, allowing coolant to circulate to the radiator constantly, which prevents the engine from warming up properly. The plastic housings on these thermostats can also become brittle and fail.
How to confirm: Using an OBD-II scanner with live data, monitor the coolant temperature from a cold start. If the temperature rises very slowly, drops at highway speeds, and struggles to reach the normal operating range (approx. 180-195°F or 82-90°C), the thermostat is likely stuck open.
Typical fix: Replace the engine thermostat and gasket. Many owners and mechanics recommend replacing the entire thermostat and housing assembly. It's also required to drain and refill the engine coolant 🎬 See this walkthrough for replacing the 1.6L engine thermostat. at the same time.
Est. part cost: $20-$60 - Low Engine Coolant Level 🟡 Medium Probability Leaks in the cooling system can cause the coolant level to drop. If the level is low, the coolant temperature sensor may be exposed to an air pocket, giving an inaccurate, low reading. It can also indicate a more serious issue like a cracked hose or failing water pump.
How to confirm: Visually inspect the coolant level in the overflow reservoir when the engine is cool. The level should be between the 'MIN' and 'MAX' lines. Also, check for any visible signs of coolant leaks (typically pink or green residue) around hoses, the radiator, and the water pump.
Typical fix: Top off the coolant to the correct level with the specified type (Kia Genuine Long Life Coolant or a compatible Asian vehicle formula). If a leak is present, the leaking component must be repaired or replaced.
Est. part cost: $15-$30 for coolant - Faulty Engine Coolant Temperature (ECT) Sensor ⚪ Low Probability While less common than a thermostat failure, the ECT sensor can fail and send incorrect temperature readings to the ECM. This can sometimes happen after a thermostat replacement if the sensor is damaged during the process.
How to confirm: Watch the live data from the ECT sensor on an OBD-II scanner. If the reading is erratic, jumps to extreme highs or lows (-40°F), or doesn't change as the engine warms up, the sensor is likely faulty. You can also test its resistance with a multimeter against the specifications in the service manual.
Typical fix: Replace the engine coolant temperature sensor.
Est. part cost: $25-$75
Rare But Worth Checking
- Cooling Fan Stuck On: If the electric cooling fan runs constantly, even when the engine is cold, it will over-cool the engine and can prevent it from reaching operating temperature, triggering a P0128 code. This is often caused by a faulty fan relay or fan control module.
- Wiring Issue to ECT Sensor: A damaged wire or corroded connector for the ECT sensor can cause a loss of signal or incorrect readings, leading the ECM to believe the engine is cold.
- Incorrect Coolant Mixture: Some owner forums mention that if the coolant-to-water ratio is too rich (too much antifreeze), it can slightly alter the thermal properties of the fluid, and the sensitive ECU logic may interpret the slower warm-up time as a fault, triggering P0128.
Diagnosis Steps
- Check for TSBs: Contact a Kia dealer with your VIN to see if there are any open service campaigns or TSBs related to P0128 and an ECM update. This should always be the first step for this vehicle. [TSBENG196, TSBENG156, TSBENG146R1, TSB-ENG118R2, TSB-ENG-152]
- Check Coolant Level & Condition: With the engine cool, inspect the coolant reservoir. Ensure the level is between the 'F' (Full) and 'L' (Low) marks. If low, top it off and check for leaks. The coolant should be the correct color (typically green or pink/red) and not look rusty or sludgy.
- Monitor Live Data: Connect an OBD-II scanner and view the live data for the Engine Coolant Temperature (ECT).
- Analyze Warm-Up: Start the engine from cold and watch the ECT reading. It should climb steadily. If it rises very slowly, plateaus around 160-170°F (71-77°C), or drops significantly when driving at speed, the thermostat is almost certainly stuck open.
- Inspect ECT Sensor Reading: If the temperature reading is erratic, stuck at a very low number (like -40°F), or doesn't move at all, the ECT sensor or its wiring is the likely culprit.
- Inspect Cooling Fan Operation: Ensure the cooling fan is not running constantly when the engine is cold. It should only turn on when the engine reaches operating temperature or when the A/C is on.
- Physical Inspection: If the above steps are inconclusive, proceed with a physical inspection. This involves locating and removing the thermostat to check 🎬 Watch: How to locate and replace the 2.0L engine thermostat. if it's physically stuck open. While there, inspect the ECT sensor's wiring and connector for damage or corrosion.
Parts You'll Likely Need
- Engine Coolant Thermostat
(OEM #25500-2B000 (For 1.6L Gamma engine))— This is the most common mechanical part to fail and cause a P0128 code by sticking in the open position.
Trusted brands: Kia Genuine, Gates, Beck/Arnley, Aisin
OEM price range: $40-$60
Aftermarket price range: $20-$40 - Engine Coolant Thermostat Housing
(OEM #25631-2B053 (For 1.6L, check VIN))— The original plastic housing can become brittle with age and crack during thermostat replacement or develop leaks. Many mechanics recommend replacing it as an assembly with the thermostat.
Trusted brands: Kia Genuine, Dorman, SKP
OEM price range: $15-$30
Aftermarket price range: $10-$20 - Engine Coolant Temperature Sensor — Though less common, this sensor can fail and send incorrect readings to the computer, causing the P0128 code.
Trusted brands: Kia Genuine, NTK, Beck/Arnley
OEM price range: $50-$75
Aftermarket price range: $25-$50 - Engine Coolant / Antifreeze — Required to top off or refill the system after replacing the thermostat or sensor, or if the level was low to begin with. Use of the correct type is important.
Trusted brands: Kia Genuine Long Life Coolant (Green)
Technical Service Bulletins (TSBs) & Recalls
- TSBENG196: SERVICE ACTION: 1.6GDI ECU LOGIC IMPROVEMENT FOR DTC P0128 (SA363) for 2019 Soul models.
- TSBENG156: ECM UPGRADE – MIL ON WITH DTC P0128 for 2015 Soul models.
- TSBENG146R1: ECM UPGRADE – RIO, SOUL MIL ON WITH DTC(S) P0456/P0461/P050A/P2188/P2192/P0128/P0326/P0441 for 2012-2013 Soul (AM) models.
- TSB-ENG118R2: COMBINED TSB/SERVICE ACTION - RIO, SOUL 1.6 GDI MIL ON WITH DTCS P0456/P0461/P050A/P2188/P2192/P0128 (SA152) for 2012-2013 Soul (AM) models.
- TSB-ENG-152: ECM UPGRADE - MIL ON WITH DTC P0128 for 2015 Soul (PS) vehicles.
Platform-Specific Known Issues
- A primary issue for the 2012-2019 Kia Soul is the high likelihood of the P0128 code being triggered by a software issue rather than a hardware failure. Kia has issued multiple Technical Service Bulletins to address this, which involve reprogramming the Engine Control Module (ECM). [TSBENG196, TSBENG156, TSBENG146R1, TSB-ENG118R2, TSB-ENG-152]
- The 1.6L Gamma and 2.0L Nu engines used in these vehicles have been subject to class-action lawsuits and recalls for other issues, though not directly for P0128. However, this context highlights the importance of checking for any open service campaigns when diagnosing issues.
Mechanic-Grade Diagnostic Values
- Engine Coolant Temperature (ECT) Sensor Resistance — expected: Approximately 2,000-2,500 Ohms at 68°F (20°C), dropping to 200-300 Ohms at 176°F (80°C).. Failure: Readings are infinite (open circuit), zero (short circuit), or do not change smoothly as temperature changes.
- Thermostat Opening Temperature — expected: The OEM thermostat for the 1.6L and 2.0L engines is rated to begin opening at 82°C (180°F).. Failure: On a live data scan tool, if coolant temperature fails to exceed ~170°F during normal driving, or drops significantly at highway speeds, the thermostat is likely stuck open.
Wiring & Ground Locations
- Engine Ground Strap — A primary ground strap connects from the engine block (often near the transmission housing) to the chassis frame rail on the driver's side of the engine bay.. A corroded or loose engine ground can cause incorrect and fluctuating readings from engine-grounded sensors like the ECT sensor. While not a primary cause, it can lead to misdiagnosis if sensor readings are unstable.
- ECT Sensor Connector — On the 2.0L engine, the sensor is located on the driver's side of the cylinder head, near the master cylinder. On the 1.6L engine, it is typically near the thermostat housing.. This is the primary connection point for testing the sensor and its wiring. Damage or corrosion here will directly cause incorrect temperature signals to the ECM.
Real Owner Repair Stories
- BobIsTheOilGuy forum user (Kia Forte 2.4L (similar cooling system logic)) — P0128 code appeared immediately after replacing a working thermostat as preventative maintenance.
❌ Tried (didn't work) Replacing the thermostat with a new OEM part., Extensive bleeding of the cooling system to remove air., Verifying no leaks were present.
✅ What actually fixed it The user had to perform the job twice due to incorrectly seating the thermostat gasket the first time, causing a leak. After fixing the leak, the code appeared. Another user noted that on Hyundai/Kia vehicles, the ECU logic is very sensitive to the coolant-to-water ratio, and a mix greater than 50/50 can trigger a P0128 code. The final resolution involved ensuring the thermostat was seated correctly with the bleeder valve facing up and meticulously bleeding the system. - Reddit user phgeek1 (2013 Kia Soul 1.6L) — Temperature gauge reading was low and the heater took a long time to get warm.
✅ What actually fixed it Replacing the thermostat fixed the issue. The user noted the original was failing and not closing all the way, preventing the engine from reaching full operating temperature. They confirmed with an OBD reader that the temperature was staying below 180°F before the fix.
OEM Part Supersession History
25500-2B001, 25500-2B400→25500-2B000— Part number consolidation and updates by the manufacturer for the 1.6L engine thermostat.
Model Year Variations Within This Range
- 2012-2013 (AM Generation) vs 2014-2019 (PS Generation): While both generations use 1.6L and 2.0L engines, the specific TSBs for the P0128 software update are year-range specific. For example, TSBENG146R1 and TSB-ENG118R2 apply to 2012-2013 models, while TSBENG156 and TSBENG196 apply to second-generation (PS) models. This highlights that the ECU logic and potential for false triggers changed between generations and even within them.
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.
- Kia SOUL:
- 🎬 Helpful Videos
- 🛍️ Shop This Part
- What's Unique About the 2012-2019 Kia SOUL
- Diagnostic Flowchart
- 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
- Wiring & Ground Locations
- Real Owner Repair Stories
- OEM Part Supersession History
- Model Year Variations Within This Range
- 🎟️ Get 5% Off