diff --git a/Marlin/Conditionals_LCD.h b/Marlin/Conditionals_LCD.h
index 171ca09ce08..99d6c6a9dab 100644
--- a/Marlin/Conditionals_LCD.h
+++ b/Marlin/Conditionals_LCD.h
@@ -183,23 +183,35 @@
 
     #define ENCODER_FEEDRATE_DEADZONE 4
 
-    #ifndef ENCODER_PULSES_PER_STEP
-      #define ENCODER_PULSES_PER_STEP 1
-    #endif
-    #ifndef ENCODER_STEPS_PER_MENU_ITEM
-      #define ENCODER_STEPS_PER_MENU_ITEM 2
-    #endif
+    #define STD_ENCODER_PULSES_PER_STEP 1
+    #define STD_ENCODER_STEPS_PER_MENU_ITEM 2
+
+  #elif ENABLED(G3D_PANEL)
+
+    #define STD_ENCODER_PULSES_PER_STEP 2
+    #define STD_ENCODER_STEPS_PER_MENU_ITEM 1
+
+  #elif ENABLED(miniVIKI) || ENABLED(VIKI2) \
+     || ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) \
+     || ENABLED(OLED_PANEL_TINYBOY2) \
+     || ENABLED(BQ_LCD_SMART_CONTROLLER) \
+     || ENABLED(LCD_I2C_PANELOLU2) \
+     || ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
+    #define STD_ENCODER_PULSES_PER_STEP 4
+    #define STD_ENCODER_STEPS_PER_MENU_ITEM 1
   #endif
 
-  // Set encoder detents for well-known controllers
-  #if ENABLED(miniVIKI) || ENABLED(VIKI2) || ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) || ENABLED(OLED_PANEL_TINYBOY2) \
-   || ENABLED(BQ_LCD_SMART_CONTROLLER) || ENABLED(LCD_I2C_PANELOLU2) || ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
-    #ifndef ENCODER_PULSES_PER_STEP
-      #define ENCODER_PULSES_PER_STEP 4
-    #endif
-    #ifndef ENCODER_STEPS_PER_MENU_ITEM
-      #define ENCODER_STEPS_PER_MENU_ITEM 1
-    #endif
+  #ifndef STD_ENCODER_PULSES_PER_STEP
+    #define STD_ENCODER_PULSES_PER_STEP 5
+  #endif
+  #ifndef STD_ENCODER_STEPS_PER_MENU_ITEM
+    #define STD_ENCODER_STEPS_PER_MENU_ITEM 1
+  #endif
+  #ifndef ENCODER_PULSES_PER_STEP
+    #define ENCODER_PULSES_PER_STEP STD_ENCODER_PULSES_PER_STEP
+  #endif
+  #ifndef ENCODER_STEPS_PER_MENU_ITEM
+    #define ENCODER_STEPS_PER_MENU_ITEM STD_ENCODER_STEPS_PER_MENU_ITEM
   #endif
 
   // Shift register panels
diff --git a/Marlin/pins_ANET_10.h b/Marlin/pins_ANET_10.h
index cf97170bcdb..8668681bf4e 100644
--- a/Marlin/pins_ANET_10.h
+++ b/Marlin/pins_ANET_10.h
@@ -182,12 +182,8 @@
     #define ST7920_DELAY_1 DELAY_0_NOP
     #define ST7920_DELAY_2 DELAY_1_NOP
     #define ST7920_DELAY_3 DELAY_2_NOP
-    #ifndef ENCODER_STEPS_PER_MENU_ITEM
-      #define ENCODER_STEPS_PER_MENU_ITEM 1
-    #endif
-    #ifndef ENCODER_PULSES_PER_STEP
-      #define ENCODER_PULSES_PER_STEP 4
-    #endif
+    #define STD_ENCODER_PULSES_PER_STEP 4
+    #define STD_ENCODER_STEPS_PER_MENU_ITEM 1
   #endif
 #endif  // ULTRA_LCD && NEWPANEL
 
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 0c03dc06d18..129d53aed57 100644
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -239,13 +239,7 @@ uint16_t max_display_update_time = 0;
   ////////////////////////////////////////////
 
   #ifndef ENCODER_FEEDRATE_DEADZONE
-    #define ENCODER_FEEDRATE_DEADZONE 10
-  #endif
-  #ifndef ENCODER_STEPS_PER_MENU_ITEM
-    #define ENCODER_STEPS_PER_MENU_ITEM 5
-  #endif
-  #ifndef ENCODER_PULSES_PER_STEP
-    #define ENCODER_PULSES_PER_STEP 1
+    #define ENCODER_FEEDRATE_DEADZONE 6
   #endif
 
   /**