diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index 0767979acc..2f1b287990 100644
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -2955,7 +2955,7 @@ inline void gcode_G28() {
       return;
     }
 
-    int ix, iy;
+    int8_t ix, iy;
     float z;
 
     switch (state) {
diff --git a/Marlin/mesh_bed_leveling.h b/Marlin/mesh_bed_leveling.h
index 2400fe9ecb..f51501a220 100644
--- a/Marlin/mesh_bed_leveling.h
+++ b/Marlin/mesh_bed_leveling.h
@@ -48,7 +48,7 @@
     }
 
     void set_zigzag_z(int8_t index, float z) {
-      int ix, iy;
+      int8_t ix, iy;
       zigzag(index, ix, iy);
       set_z(ix, iy, z);
     }
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 630cd14e4d..7f0b9a2713 100644
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -1014,7 +1014,7 @@ void lcd_cooldown() {
     lcd_goto_menu(_lcd_level_bed_moving);
 
     // _mbl_goto_xy runs the menu loop until the move is done
-    int ix, iy;
+    int8_t ix, iy;
     mbl.zigzag(_lcd_level_bed_position, ix, iy);
     _mbl_goto_xy(mbl.get_x(ix), mbl.get_y(iy));