Guides3D Printer Calibration

Extruder Calibration Guide (with calculator) – E Step Calibration

The extruder calibration is one of the most important process to do for any 3D printer. By doing the extruder calibration, your printer will accurately extrude the exact amount of filament. This translates to much better finish on the printer parts and more accurate dimensions.
Because this process is a bit hard to understand for a beginner, I made an extruder calibration calculator that should make things easier. Only two values need to be entered, and the extruder calibration calculator will take care of the rest.
Without further ado, let’s begin the extruder calibration process.

Why do the Extruder Calibration?

As previously mentioned, by doing the extruder calibration, we make sure that the printer extrudes the exact amount of filament needed. In most of the cases, 3D printers suffer from over-extrusion and sometimes under-extrusion.
When the printer is over-extruding, more filament is being pushed through the nozzle. Because of this, the printed walls look bad, layer lines are uneven and the bottom and top layers.

Over Extrusion 1 | Extruder Calibration Guide (with calculator) - E Step Calibration

In the image below, the first cube is before extruder calibration, and the second one is after i calibrated the extruder.
If under-extrusion is present, then you may find holes in the top layers and even in other parts of the print.

Under-Extrusion example - Extruder Calibration Guide

Prerequisites for Extruder Calibration

In order to do the extruder calibration, you need to have the following:

  • Measuring ruler
  • Marker
  • Computer with USB cable to connect the printer
  • Pronterface
  • A bit of patience

For a successful extruder calibration, the hotend needs to be set at the correct temperature according to the filament used. If you are performing the calibration using PLA filament, set a temperature of 195C. If using PETG, set a temperature of 225C.
It’s important to use a temperature close to what you normally use for printing. This ensures that all variables are as close as possible to when you print.

After the hotend reaches the correct temperature, try to push some filament manually. This is especially important to do if you previously printed other materials.
The filament should be easily melted by the hotend. and you should not encounter a lot of resistance when pushing it. The melted filament from the nozzle needs to be a continuous line of filament going down.

If the filament curls to the left or right, there’s a big chance the hotend is partially clogged and you need to fix this before proceeding with the extruder calibration.

How to do the Extruder Calibration?

1. Connect printer to Pronterface

Pronterface Connection - Extruder Calibration

Next step in the extruder calibration process is to connect the printer to the computer via USB cable. Open Pronterface, and choose the correct COM port and Baud Rate. In my case, i used COM4 and 250000.

If you encounter issues when connecting to the printer, make sure you closed all slicers. Cura is known to interfere with the COM ports used by the printer.

2. Get current extruder steps

Pronterface Connection - Extruder Steps

Enter the M503 command, then press enter. Look for the line starting with M92.
Add the E value in the calculator, then move to the next step.

3. Measure 200 mm of filament

Carefully straighten the filament and measure 200 mm from a fixed position. I chose to measure from the end of the PTFE tube that goes into the extruder. Mark the filament, then move to the next step.

Measure 200 mm - Extruder Calibration

4. Extrude 180 mm of filament

Back in Pronterface, run the M83 command for relative mode. Then, run the G1 F100 E180 command. The extruder will start pushing filament and the whole process will take about a minute.

Extrude filament

5. Measure the remaining filament

After the extruder stops, measure the remaining amount of filament, and add it to the calculator.

Remaining Filament - Extruder Calibration

6. Save the new extruder value

In Pronterface, run the M92 Exxx.xx command, and replace the xxx.xx with the value from the calculator, then save everything with the M500 command.

It is recommended to repeat the process in order to make sure the new extruder value is correct.

Please clear your browser cache and refresh the page if the calculator does not show up.

Wrapping Up

The extruder calibration process is now complete. A few things to keep in mind:

  • While other guides recommend doing this by extruding 100 mm of filament, after multiple trials I found out that a longer is a bit more accurate. Besides that, it’s easier for me to measure a longer filament section.
  • Make sure the pressure on the filament is not changed after calibrating the extruder. If you tighten the extruder lever, and apply more pressure on it, the extrusion can change slightly, and it will influence the end results.
  • The spool holder can influence the extrusion quality. If possible, ensure that the spool is spinning smoothly, with a small amount of resistance to prevent tangles.
  • If you can’t edit the EEPROM of the printer, the M92 Exxx.xx command that includes the calibrated extruder value can be added in the start gcode of your slicer. This way, the extruder value will be loaded each time you start a new print.
  • You can also calibrate your extruder from IdeaMaker without the need of doing modifications to your EEPROM.

It is recommended to also perform the Flow Rate Calibration to fine-tune the layer width and improve accuracy of your prints.

If after calibration, your extruder is still not performing well, check out my Ultimate 3D Printer Upgrade Purchase Guide where I shared a few extruders that may improve your print quality.

Liked it?
Take a second to support 3DPrintBeginner on Patreon!

Notify of
Inline Feedbacks
View all comments
Chris Nunez
Chris Nunez
1 year ago

Calculator is down even for all browsers I’ve checked

Michael Margolis
Michael Margolis
1 year ago

So if you can not do this with the stock printer you should preface this article with what you need to install to be able to do this. Makes sense.

Jens Pedersen
Jens Pedersen
1 year ago

First I want to say thanks for a really nice instruction set.
I have tried to follow your instructions to calibrate my Sidewinder X1.
I started of with a E step value of 445 and got 25 mm of filament left after extruding 180 mm. Entered that in the calculator and changed the e step to 457.71 but still get 25mm of filament left.
What am I doing wrong?
Thanks in advance.

Steve W Burley
Steve W Burley
1 year ago

I have converted the Ender3 to a direct drive with the Printermods adapter and I thought I was on the right track of adjusting this but still some mush and blobs. I see the Esteps are at 93 in the Ender but I have seen where maybe it should be at 40. Thank you in advance for your help with this.

Alex Van Der Werf
Alex Van Der Werf
1 year ago

I have a few other codes in my start gcode under printer settings. Im using PrusaSlicer 2.2.0. I cannot edit EEPROM so I placed my E steps in the start gcode as instructed. There is one item already in it “G92 E0 – restart extruder”. Will this conflict with M92 E533.65? I have placed my entire start code below. (I believe this is from the profiles you have listed on your website)

M83 ; extruder relative mode
G28 ; home all axes
M109 S[first_layer_temperature] ; hotend temperature
M140 S[first_layer_bed_temperature] ; heatbed temperature
M190 S[first_layer_bed_temperature] ; wait for the bed to heat up
M109 S[first_layer_temperature] ; wait for the extruder to heat up
G92 E0 ; reset extruder
G1 X20 Y5 Z0.3 F5000.0 ; move to start-line position
G1 Z0.3 F1000 ; print height
G1 X200 Y5 F1500.0 E15 ; draw 1st line
G1 X200 Y5.3 Z0.3 F5000.0 ; move to side a little
G1 X5.3 Y5.3 Z0.3 F1500.0 E30 ; draw 2nd line
G1 Z3 F3000 ; move z up little to prevent scratching of surface

1 year ago

When I use the command to extrude the 180mm of filament, it only does it for about 100mm. I assume that I can’t really use the test this way?

Edit: Also when I did the M83 command it didn’t really do anything, other than ”Sending M83′”. Maybe that has something to do with it?

1 year ago

Nope, calculator is gone in all browsers 🙁

Zachary Painter
Zachary Painter
1 year ago

What happened to the calculator? It used to be here but now appears to be gone.

1 year ago

Hi, thank you for this guide.
When I enter G1 F100 E180 command the filament goes backwards (out of the extruder).
I use sidewinder x1.
Is there a way to get it right? Thank again

1 year ago

Thanks for your guide.
Just a correction: In the last part, the command to SAVE to the EEPROM is M500 not M501…