diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp
index 51459602f07bff2b1cc936ec734aef856958388e..364e66d1b6ac844c0303b57145bd8f374d8d4908 100644
--- a/Marlin/stepper.cpp
+++ b/Marlin/stepper.cpp
@@ -426,7 +426,7 @@ void Stepper::isr() {
           counter_E -= current_block->step_event_count;
           #if DISABLED(MIXING_EXTRUDER)
             // Don't step E here for mixing extruder
-            e_steps[TOOL_E_INDEX] += motor_direction(E_AXIS) ? -1 : 1;
+            motor_direction(E_AXIS) ? --e_steps[TOOL_E_INDEX] : ++e_steps[TOOL_E_INDEX];
           #endif
         }