Musings and Experiments on the Art and Science of 3D Printing

Some musings on retracts

By Michael Hackney Friday, October 7, 2016
Many folks misconfigure retract settings in their slicers and believing that "more and faster is better". Nothing is further from the truth for modern hot ends and materials like PLA. The following observations, musings,and recommendations are based on hundreds of hours of experimentation, measurements and observation on the effect of retract and other settings on printing with PLA and ABS. So let's dive in!

Stop for a minute and think about the geometry of the internals of the nozzle up through to the heat break:
On the left I show a typical hotend in equilibrium as it extrudes. Cold filament (blue) is pushed at a more or less constant rate towards the heat block where it melts and is pushed out the nozzle.

The heat from the heat block is conducted to the neighboring metal parts: the nozzle below and the heat break above. The nozzle is typically brass or other thermally conductive metal so the molten filament does not cool and solidify before being extruded. That makes sense. The heat break is designed to minimize heat conduction upwards and which minimizes the length of the melt transition zone - where filament transitions from solid to fluid plastic. The heatsink's job is to prevent heat creep all the way up the hot end, which would result in a very long melt transition zone. The reason this is not good is described below.

Now look at what happens during retract - and this is conceptual. The entire melt transition zone is lifted. The molten filament is viscous enough that it follows along and is pulled up out of the orifice. In this diagram I am attempting to show a hypothetical 1mm retract. Since the nozzle is about 1mm long, in theory, a 1mm retract should pull all of the plastic out of the orifice and create a cavity about 1mm long in the nozzle. In practice, it isn't as simple and clean as this. Several factors influence the retract behavior. Here are a few of the larger contributors but there are others like capillary action, etc.

  1. Temperature is a key player since the hotter the molten filament, the more fluid it becomes. If the fluid becomes too fluid, it could simply drip out the orifice rather than be pulled back up with the retract. This is why printing at too high temperature than required is not a good idea. Ideally, you want to find the minimum reliable melt temperature to maximize the viscosity of the molten filament.
  2. The length of the orifice also plays a big part. In fact, my experimentations and modifications a few years ago with the E3D V5 hot end nozzle geometry resulted in a redesign that is now the V6 hot end. If the nozzle bore is too long, materials like PLA tend to not be cleanly retracted and can ooze. Many people then compensate for this oozing my increasing the retract length - which see next.
  3. Retract length has a very large impact. The longer the retract, the further up into the heartbreak the melt transition zone is pulled. It also tends to elongate as shown in the diagram. When the retract gets to a certain point, the top part of the melt transition will actually cool and solidify in the cold zone (heatsink). This results in a plug or jamming. Depending on many factors, sometimes this plug will be pushed ahead and remelted when the filament is advanced. However, if these factors are aligned against you, a jam occurs and results in filament starving and your print will show gaps. Many times this starvation might self-correct if another retract happens soon afterwards and frees things up. But if you are really unlucky, the plug continues to solidify and your print is completely ruined.
  4. Retract AND advance speed also play a big role. If retract is too fast, the molten plastic just "snaps off" at the end of the small diameter orifice and the nozzle bore is not cleared. If too slow, you waste a lot of time. On the other side, advance, a different situation exists. If you advance too quickly with PLA, the molten material appears to increase in viscosity to the point where it will not flow. This is called non-Newtonian fluid behavior. Most of the time, this might not cause a problem but in some cases, it can result in a plug and filament starving. With PLA, you can actually retract rather quickly (50mm/s) and advance slower (20mm/s) with excellent results. At this writing, only the KISSlicer provides this capability (and it was added at my request). It makes a difference. I've print 100s of parts a month in PLA and have not had a single jamming/plugging issue in several years.
In fact, I discovered this when I first began printing PLA parts like the white mesh on the side plate of the fly fishing reel shown below a few years ago. At certain places in the print there were many rapid, machine gun like, retract/advance moves. And every time that happened, I would get a plug and the print was ruined. I spent many hours setting up experiments and testing to arrive at some general guidelines for retract settings that I will list below.

It is very possible to print good parts with too high melt temperature, too long of retract, sub-optimal nozzle geometry, and retract/advance speeds too low or too high since it often is a combination of these, along with the specific part's geometry and slicer settings, that lead to a retract-related plugging problem. Movements, layer changes, retracts, slowing or speeding up to print perimeters and infills all interplay wth each other to produce good prints.

If you don't optimize your retract and temperature settings, one day you'll come across a part, sliced a certain way, that just doesn't print reliably. Unfortunately, many slicers provide profiles or printer manufacturers or owners advocate profiles that have very high retracts, very fast retract/advances, and high melt temperatures either due to lack of understanding or to compensate for one or more sub-optimal parameters or issues. Temperature and retract length, in particular, are often abused - the "more is better" syndrome seems to be the recommended solution to many printing problems.

A Little Math

The volume of a cylinder can be calculate using the formula: π x r^2 x length (Pi times radius squared times length). So let's take a look at how much PLA is in a nozzle office .4mm diameter by 1mm long:

π x (.2)^2 x 1 = 0.13 cubic mm of PLA

and just for comparison, the stock SeeMeCNC nozzles have a .5mm diameter:

π x (.25)^2 x 1 = 0.20 cubic mm of PLA

Now, let's calculate how much volume a 1 mm retract of 1.75mm diameter filament moves:

π x (0.875)^2 x 1 = 2.40 cubic mm of PLA

This shows us that a 1mm retract would move over 18 times more filament than required to clear a .4mm nozzle bore - in a perfect (Newtonian) world. In practice, with optimized temperatures, a reasonable nozzle and hotend design and geometry and reasonable retract and advance speeds, this 1mm retract is usually more than enough to get clean transitions and minimize oozing problems. Hot ends with longer melt zones, larger diameter orifices, less efficient heartbreak cooling, and other factors typically require additional retraction to compensate.


  1. First and foremost, determine the minimal melt temperature for your filament. See my Strategies for Successful (and Great) Prints point #9 on how to do this.
  2. Don't over retract. The E3D V6, SeeMeCNC HE280 and other similar all-metal hotends should perform very well with 1mm retract.
  3. PLA is more sensitive to retract/advance speeds than ABS and other materials. My recommendation for PLA is to retract relatively fast (40-50m/s) (and short as per the previous guideline) and advance slower (20-25mm/s). At this time, only KISSlicer has this feature. In other slicers, a reasonable compromise is to retract and advance at 20-25mm/s.
  4. Keep your nozzle tip clean and polished.

Hopefully this post will help you understand the complex process that allows us to print plastic objects with pretty darned good results. I've left quite a bit of details out (and I may be dead wrong on others) but I can say that if you pay attention to the above 4 Guidelines, your reliability and quality should go up markedly.

13 comments to ''Some musings on retracts"

  1. I am following your recommendations to the T and still getting insanely hairy prints! I'm using PLA, temp at 190, Rosctokmax V3. S3D is my slicer. Any other tips you'd recommend?

  2. Yes, keep at it. Sometimes certain PLAs or even colors of a "good" PLA will present problems. Also keep in mind that the "system" is more than just slicing parameters. Everything about your printer, electronics, firmware, etc contribute to good or bad prints. That said, with a stock Rostock MAX V3 you have the basis of a good system.

    I really do not like nor do I recommend S3D for many reasons. Depending on your willingness to experiment, you might find a way to print your model with minimal stringing. As an experiment, try the latest version if Cura and see what you get. You might be surprised at how different and/or better the part is.

  3. I ran across a link to your blog on the Lulzbot forums attempting to find a solution to a very clogged second dual extruder on a taz 6. I finally got it cleared with about 10 cold pulls. I think there must have been some cooled filament higher up in the cooler end of the nozzle, because at first I wasn't getting any shape resembling a cylindrical chamber with a cone at the end.

    Do you have any suggestions for Dual extruder setups? Cura defaults to 15mm retraction for the color switch. I brought it down 10 but I'm afraid I'm going to end back up at 15mm to keep it from oozing.

  4. Hey James, what hot end/s are you running? 10mm of retract on an all metal hot end is the kiss of death. What filament are you printing, there might be alternatives to unclogging depending on type of filament.

    What are you trying to accomplish with dual extrusion? Multi color ABS/PLA/PETG? One of these with soluble support?

    1. It's a Taz 6 with their hexagon hot ends.

      I got it unclogged and pulling a nice clean mold of the chamber, I'm just trying to avoid a repeat.

      We're mainly doing 2 color ABS prints.

  5. Ok, Hexagon is a full metal hot end so keep your retracts below 2mm. ABS doesn't have any issues retracting reasonably fast but keep retracts to ~40mm/s. What were you using for retract length and speeds now?

    1. It was at 15mm at 6mm/s. I don't know where the 6mm/s came from (I might have set it a long time ago and forgot).

      At this very moment I'm printing brown and black village abs at 135C with retract of 1mm at 20mm/s. The dual extrusion switch is set to 11mm. It's oozing a lot more than it was when dual extrusion switch was at 15mm but the ooze shield cura prints is catching it for the most part.

  6. Eeegads! 15mm retract is going to kill it every time. Even the dual extrusion switching should not be that high. You absolutely do not want to suck molten filament up into the heat break and 11mm will do exactly that. Oozing is a fact of life with this setup, the way to minimize it is to print at the lowest temps you can, avoid printing fast as the increases flow rate, which increases back pressure, which is what causes the ooze during a switch off. Some filaments ooze more than others too. But sucking the filament 11mm is not the answer.

    1. Well I know that now! So it looks like I have some testing in order. Thank you much for the help.

  7. FYI: The latest version of Cura supports separate retraction and prime speeds (but not by default - you need to configure setting visibility to set these).

  8. Thanks RichWP, yes I do know that and have checked it out. I think it has had this feature for a while.