diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 1ed71c2d3a..97a07f5232 100644
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -1047,7 +1047,6 @@ void lcd_cooldown() {
    */
   static void _lcd_level_bed_homing() {
     if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_HOMING), NULL);
-    if (axis_homed[X_AXIS] && axis_homed[Y_AXIS] && axis_homed[Z_AXIS])
     lcdDrawUpdate =
       #if ENABLED(DOGLCD)
         LCDVIEW_CALL_REDRAW_NEXT
@@ -1055,6 +1054,7 @@ void lcd_cooldown() {
         LCDVIEW_CALL_NO_REDRAW
       #endif
     ;
+    if (axis_homed[X_AXIS] && axis_homed[Y_AXIS] && axis_homed[Z_AXIS])
       lcd_goto_menu(_lcd_level_bed_homing_done);
   }