diff --git a/Marlin/src/gcode/lcd/M73.cpp b/Marlin/src/gcode/lcd/M73.cpp
index 85fb7831ead..171d8bbad9a 100644
--- a/Marlin/src/gcode/lcd/M73.cpp
+++ b/Marlin/src/gcode/lcd/M73.cpp
@@ -38,7 +38,7 @@
  *   This has no effect during an SD print job
  */
 void GcodeSuite::M73() {
-  if (parser.seen('P') && !IS_SD_PRINTING())
+  if (parser.seen('P'))
     ui.set_progress(parser.value_byte());
 }
 
diff --git a/Marlin/src/lcd/ultralcd.cpp b/Marlin/src/lcd/ultralcd.cpp
index 10864da1c25..9b6b475115a 100644
--- a/Marlin/src/lcd/ultralcd.cpp
+++ b/Marlin/src/lcd/ultralcd.cpp
@@ -1546,7 +1546,7 @@ void MarlinUI::update() {
         uint8_t progress = 0;
       #endif
       #if ENABLED(SDSUPPORT)
-        if (IS_SD_PRINTING()) progress = card.percentDone();
+        if (!_PLIMIT(progress)) progress = card.percentDone();
       #endif
       return _PLIMIT(progress);
     }