How to Calibrate Your Extruder (E-Steps) Step-by-Step

Isabella Rossi By Isabella Rossi, Product Designer
Published: September 27, 2023
Close-up of a 3D printer mechanism with a clear section showing internal components on a blurred workshop background.

Ever look at a finished print and wonder why the top surface has gaps, or why the walls feel frail and crumbly? You might be suffering from under-extrusion. Conversely, if your nozzle is dragging through blobs of plastic, you’re dealing with over-extrusion.

While many slicer settings can tweak flow, they are just band-aids if your machine’s mechanical baseline is wrong. Your printer needs to know exactly how many steps the motor must turn to push 1 millimeter of filament. This setting is called E-Steps (Extruder Steps per mm).

Because every manufactured gear and motor is slightly different, stock settings are rarely perfect. This guide will walk you through calibrating your extruder to ensure that when you ask for 100mm of plastic, you get exactly 100mm.

Before You Start

This process requires sending direct commands to your printer. You will need:

  • A Computer connected to your printer via USB.
  • Terminal Software: Pronterface, OctoPrint, or a slicer with a terminal (like Cura or Simplify3D).
  • Filament: Loaded into the printer (light colors make marking easier).
  • Measurement Tool: A reliable ruler, scale, or digital calipers.
  • Permanent Marker: To mark the filament.

Note: Your printer must have EEPROM enabled to save these changes permanently. If you turn your printer off and the settings revert, you may need to flash a new firmware version with EEPROM enabled.

Why Calibration Matters

Your extruder is the heart of the delivery system. If the firmware thinks 400 steps equals 100mm of filament, but mechanically it only pushes 95mm, every single line of your print will be 5% starved of material.

  • Too Little (Under-Extrusion): Weak parts, gaps between lines, poor layer adhesion.
  • Too Much (Over-Extrusion): Blobs, stringing, poor dimensional accuracy, and nozzle dragging.

Calibrating E-steps sets a perfect "mechanical zero" for your slicer to work with.

Step 1: Mark Your Filament

First, we need to create a physical reference point to measure how much filament actually moves.

  1. Load filament into your printer.
  2. Use a ruler or tape measure to measure 110mm from the exact point where the filament enters the extruder (the intake hole).
  3. Mark this spot clearly with your permanent marker.
Why 110mm?

We are going to ask the printer to move 100mm. We mark 110mm so that if the printer is perfect, we will have exactly 10mm left sticking out. If we marked exactly 100mm and the printer over-extruded, the mark would disappear inside the extruder, and we couldn't measure the difference.

A hand holding a permanent marker making a black mark on white 3D printer filament next to a metric ruler.

Step 2: Get Your Current E-Steps

Connect your printer to your computer and open your terminal software (e.g., Pronterface).

  1. Connect to the printer (ensure the correct COM port and Baud rate, usually 115200 or 250000).
  2. Type M503 and hit Send.
  3. Look through the output log for a line starting with M92. It will look something like this:
    echo: M92 X80.00 Y80.00 Z400.00 E93.00
  4. Write down the number after the E. In this example, it is 93.00. This is your Current E-Step Value.
Don't see M503 output?

Some stock simplified firmware hides the output of M503. If nothing returns, you may need to check your printer's LCD menu under Control > Motion > E-steps/mm to find the current value.

Step 3: The Extrusion Test

Now we need to push plastic.

Hot Nozzle Required

Most firmware prevents "cold extrusion" to protect the motor. You MUST heat the nozzle before the extruder motor will move.

  1. Preheat: Send M109 S200 (for PLA) or use your printer’s preheat menu. Wait for it to reach temperature.
  2. Set Relative Mode: Send command M83.
    Why? This tells the printer "move 100mm from right here" rather than "move to the 100mm coordinate." If you skip this, the extruder might wind backwards or do nothing.
  3. Extrude: Send command G1 E100 F100.
    Command Breakdown

    G1: Move Extruder
    E100: Extrude 100mm
    F100: Feed rate (speed) of 100mm/min. Slow is better for accuracy.

  4. Wait: The gears will turn slowly. Wait for the motion to stop completely.

Step 4: Measure and Calculate

Once the motor stops, measure the distance from the extruder intake to the mark you made in Step 1.

  • Ideal Scenario: You measure exactly 10mm. (110mm start - 100mm extruded = 10mm left).
  • Real World: You will likely measure something else, like 12mm (under-extrusion) or 8mm (over-extrusion).

The Formula

We need to calculate how much filament was actually extruded, and use that to find the new steps.

  1. Calculate Actual Extrusion:
    110mm (Start) - [Your Measurement] = Actual Extruded Length
    Example: If you measured 12mm left: 110 - 12 = 98mm actually extruded.
  2. Calculate New E-Steps:
    (Current E-Steps × 100) / Actual Extruded Length = New E-Steps

Example:

  • Current E-Steps: 93
  • Requested: 100mm
  • Actual: 98mm
  • (93 × 100) / 98 = 94.90
  • New E-Step Value: 95
Math Shortcut

Not a fan of manual math? You can plug your numbers into our simple calculator below.

E-Step Calculator

New E-Steps Value --- steps/mm

Step 5: Update Your Printer

Now that you have the magical number, you need to tell the printer.

  1. In your terminal, type M92 E[New Value]
    Example: M92 E95
  2. Critical Step: Type M500 and hit Send.
    You should see a message like Settings Stored. If you forget M500, the printer will forget your calibration as soon as you turn it off!
Common Mistake: Slipping Gears

If your measurements are wildly inconsistent (e.g., one time it extrudes 90mm, the next time 50mm), do not calibrate via software yet. This is a hardware issue. Check your extruder tension arm (is it cracked?), ensure the gear teeth aren't clogged with plastic, and make sure the spring tension is tight enough to grip the filament.

Verify Your Results

It is good practice to repeat the test once with the new values.

  1. Mark the filament at 110mm again.
  2. Run the extrusion test again.
  3. Measure the remaining filament.
  4. If it is within roughly 9.8mm to 10.2mm, you are calibrated!
Key Takeaways
  • Accuracy is Key: E-steps determine the volume of plastic for the entire print. If this is wrong, every other setting is a guess.
  • Save Your Settings: Always send M500 after making changes, or they will be lost on power cycle.
  • Hardware First: If the extruder is clicking, grinding, or slipping, fix the hardware before changing E-steps. Software cannot fix a broken tension arm.
  • Flow Rate is Different: E-steps calibrate the machine. "Flow Rate" in your slicer is for calibrating the filament (since some plastics flow differently). Calibrate E-steps first, then tune Flow Rate in the slicer.

FAQ
Do I need to do this for every roll of filament?

No. E-steps are a mechanical calibration of the gears and motor. It should stay the same regardless of filament. Variations between filament rolls (like PLA vs PETG) should be handled by the "Flow Rate" or "Extrusion Multiplier" setting in your slicer, not the firmware E-steps.

Can I calibrate without a computer?

Yes, if your printer's LCD menu allows you to set E-steps. You can do the marking and measuring manually, do the math on your phone, and then enter the new value directly into the printer's menu (usually under Configuration > Advanced > Steps/mm). Don't forget to select "Store Settings" on the LCD afterwards!

Why is my new measurement still inconsistent?

If you get different results every time you measure, your extruder gear is likely slipping, or your nozzle is partially clogged, creating variable back-pressure. Try cleaning the nozzle or increasing the tension on the extruder idler arm.

Should I remove the Bowden tube to do this?

Technically, yes, that is the most accurate method ("free air" calibration) because it removes the variable of nozzle pressure. However, calibrating through the hotend (as described in this guide) is generally "close enough" for most users and much easier to perform. If you want absolute perfection, disconnect the Bowden tube and extrude into the air.

Back to blog

5 comments

While calibrating E-Steps which way is correct? I’ve seen people feed the filament into free air (disconnect bowden tube in many cases) and I have also seen people feed the filament through the hot end to get the E-step value. Which way is the correct way? The free air people say you then calibrate with flow to get correct correct calibration. Thanks for your help.
Nolan

Nolan Childers

“If you find your measurements are inconsistent, your extruder may be slipping and adjustment might be necessary.” Do you have recommendations for this?

Anonymous

Maybe I dont understand this enough, but why in the world would your E-step value be in the 400s?? I thought it should be around 100, give or take. Can you please explain so I know what I’m doing? Thank you.

Chris Ackerman

Can you cover the printers with dual extruder like Creality CR-X?

Konrad

How do I set the extruder # for a Creality CR-X Pro?

Jason Barngrover

Leave a comment

Please note, comments need to be approved before they are published.