By chance, does the check engine light stay on while the engine is running? If it does, have you scanned it for codes?
The idea that it won't start in cold weather can be a few things. The PCM uses information from the ECT (engine coolant temperature sensor) to determine what the air/fuel mixture should be to start the engine based on temp. I'm questioning if that could be an issue.
Do you have a live data scan tool? If you do, before starting the engine in the morning, check to see what signal the ECT is sending. It should be very close to the ambient temperature outside.
Also, let me know how cold the weather is where you are located and more importantly if the check engine light stays on with the engine running. If it is, have the computer scanned. If you don't have a scan tool, most parts stores will do it free of charge.
Here is a quick video showing how it's done:
One other thought is the intake air temperature sensor/mass air flow sensor. It is used by the PCM as well for cold starts. This should set a code if there is an issue. If there is no CEL, then again, we need a live data scan tool to confirm it is sending the correct info.
Also, if the IAC was the cause, it would happen regardless of the temperature. If you suspect the IAC, slightly touch the gas pedal when cranking to see if it makes a difference.
One last thought. When were the spark plugs last replaced?
Let me know.
Friday, November 18th, 2022 AT 8:56 PM