3D Printer Steps per mm & Rotation Distance Calculator
Steps per mm = motor full steps × microsteps ÷ the distance one motor turn moves the axis. Pick the drive (belt, lead screw or geared extruder) to get the Marlin M92 value and the Klipper rotation_distance, or correct a value from a measured move. Published October 30, 2026.
Result
Firmware Settings
Marlin (console or start G-code)
-
Klipper (printer.cfg)
-
How Steps per mm and Rotation Distance Work
A stepper motor turns a fixed angle per step. Steps per mm tells the firmware how many (micro)steps move the axis or filament 1 mm. Marlin stores that number directly (M92). Klipper stores the other side of the same sum: rotation_distance, the distance moved by one full turn of the motor (or of the gearbox output when gear_ratio is set).
The Formulas
microsteps, full_steps_per_rotation), so rotation_distance stays the same when you change microsteps.gear_ratio: 50:17. The same result without a gear_ratio line is rotation_distance ÷ ratio. Ratio is written driven teeth first (50:17 for a BMG).Worked Example
- X and Y: GT2 belt, 20-tooth pulleys. rotation_distance = 2 × 20 = 40 mm. Steps/mm = 200 × 16 ÷ 40 = 80.00. Each microstep is 0.0125 mm.
- Z: T8 (TR8x8) screw, 8 mm lead. Steps/mm = 3200 ÷ 8 = 400.00. A full step is 8 ÷ 200 = 0.04 mm, so 0.12, 0.16, 0.20, 0.24 and 0.28 mm layers are whole full steps, while 0.10 and 0.15 mm are not.
- Extruder upgraded to a BMG clone: ratio 50:17, effective drive Ø 7.219 mm, so rotation_distance = π × 7.219 = 22.679 mm. Steps/mm = 3200 × (50 ÷ 17) ÷ 22.679 = 415.0.
- E-steps test on the stock extruder: current 93 steps/mm, mark at 120 mm, extrude 100 mm, 24 mm left, so 96 mm went in. New steps/mm = 93 × 100 ÷ 96 = 96.88 (
M92 E96.88,M500). In Klipper: 34.406 × 96 ÷ 100 = 33.030.
0.9° or 1.8° Motors, and Microstep Interpolation, in Plain Words
- 0.9° motors have 400 steps per turn instead of 200. Steps/mm doubles, the full step is half as long, and positioning is a little more precise. They tend to lose torque sooner at high speed, so they suit X/Y on fast printers with good drivers and supply voltage. In Klipper add
full_steps_per_rotation: 400; in Marlin just use the doubled steps/mm. - Microsteps split each full step into smaller current steps. They make motion smoother and quieter, but they do not make the printer more accurate in proportion: under load a motor lands only roughly on a microstep. The extra holding force for a single microstep is small (about holding torque × sin(90° ÷ microsteps), roughly 10% at 16 microsteps).
- Interpolation (TMC drivers): the driver takes your 16 microsteps and fills in up to 256 internally for smoothness. It does not change steps/mm. Klipper's
interpolateoption is on by default; its docs note that turning it off gives slightly better positional accuracy at the cost of some noise. - Where microsteps live: in Klipper,
microsteps:in each stepper section. In Marlin, in the firmware (X_MICROSTEPSetc. for TMC drivers) or by jumpers under the driver. Change microsteps and the Marlin steps/mm must change with them.
Practical Tips
- Calculate first, then calibrate only what is wrong. Belt and screw axes are almost always exact from the formula. If a printed cube is off, the cause is usually belt tension, over-extrusion or shrinkage, not steps/mm. The shrinkage scale tool and hole compensation tool deal with those.
- Always run the e-steps test on extruders. Drive gear diameters vary by a few percent between batches and brands. Extrude slowly (100 mm/min) with the hotend hot so the nozzle does not cause slip.
- Save it. Marlin forgets
M92at power-off unless you sendM500(EEPROM must be enabled). Klipper needsRESTARTafter editing printer.cfg. - Next steps after e-steps: tune retraction and linear / pressure advance, which both depend on the extruder moving the right amount.
- Lead screw sizes follow the same thread rules as fasteners; see the thread size chart.
More 3D Printing Tools
- Retraction Settings Calculator and Linear / Pressure Advance Calculator
- Input Shaper Explainer and Bed Mesh Visualizer
- Hole Size Compensation, Heat-Set Insert Hole Size and Shrinkage Scale Factor
- Print Strength and Infill, Image to Lithophane and Text to STL
Frequently Asked Questions
The formulas are exact; the extruder presets are typical values from maker and community configs, and real drive gears vary. Check new values with a short measured move before printing, and keep a note of your old settings.