How to calibrate e-steps
- Heat the hotend to your normal printing temperature for the loaded filament.
- Send
M503and note the E value on the M92 line. That is your current e-steps. - Mark the filament 120 mm above where it enters the extruder.
- Send
M83(relative extrusion), thenG1 E100 F100to extrude 100 mm slowly. - Measure the distance from the extruder to your mark and enter it as “distance left”.
- Send
M92 Efollowed by the new value, thenM500to save it. Repeat once to confirm.
Actually extruded = mark distance − distance left
New e-steps = current × requested ÷ actually extruded
Worked example
- Current e-steps
- 93.00
- Extruded: 120 − 23
- 97 mm
- New: 93 × 100 ÷ 97
- 95.88
- Command
- M92 E95.88, M500
Tips
- Extrude slowly (F100 or less). Fast extrusion can slip and give a false reading.
- Some printers do not support M500 or store settings differently. Klipper uses
rotation_distancein printer.cfg instead of e-steps: new rotation distance = old × actual ÷ requested. - Calibrate e-steps first, then flow rate. E-steps fixes the machine; flow fixes each filament.
Frequently asked questions
Do I need to calibrate e-steps for every filament?
No. E-steps belong to the extruder hardware. Recalibrate after changing the extruder, gears or stepper motor. Use flow rate for differences between filaments.
What is a normal e-steps value?
It depends on the extruder. Many stock Bowden extruders are near 93 steps/mm, while geared direct-drive extruders are often around 400–420 steps/mm.
Why does the result change each time I measure?
Small measuring errors and grip slippage cause variation. Use a ruler or calipers carefully, extrude slowly, and average two runs.
Last reviewed October 2026. See how we calculate.