diff --git a/Marlin/configuration_store.cpp b/Marlin/configuration_store.cpp
index fd8d41b4bf89a68218bd475ec14fc31aab0396bd..54c96b6e8803fbe8c516d7581ec107b1e6655444 100644
--- a/Marlin/configuration_store.cpp
+++ b/Marlin/configuration_store.cpp
@@ -617,7 +617,7 @@ void Config_ResetDefault() {
   #endif
 
   #if ENABLED(PIDTEMP)
-    #if ENABLED(PID_PARAMS_PER_HOTEND)
+    #if ENABLED(PID_PARAMS_PER_HOTEND) && HOTENDS > 1
       HOTEND_LOOP()
     #else
       int e = 0; UNUSED(e); // only need to write once
diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp
index 76c9dfd9aa3aeb43a0e4bb6748b21b90153f04e1..beb4f63e6d8109096faaffb09fa3e04303c2d953 100644
--- a/Marlin/temperature.cpp
+++ b/Marlin/temperature.cpp
@@ -68,7 +68,7 @@ unsigned char Temperature::soft_pwm_bed;
 #endif
 
 #if ENABLED(PIDTEMP)
-  #if ENABLED(PID_PARAMS_PER_HOTEND)
+  #if ENABLED(PID_PARAMS_PER_HOTEND) && HOTENDS > 1
     float Temperature::Kp[HOTENDS] = ARRAY_BY_HOTENDS1(DEFAULT_Kp),
           Temperature::Ki[HOTENDS] = ARRAY_BY_HOTENDS1((DEFAULT_Ki) * (PID_dT)),
           Temperature::Kd[HOTENDS] = ARRAY_BY_HOTENDS1((DEFAULT_Kd) / (PID_dT));