Retraction settings explained: tower tests, Bowden vs direct drive, and G10/G11
Short answer
Retraction pulls filament back before a travel move so the nozzle oozes less [6]. OrcaSlicer's retraction tower defaults to 0–2 mm in 0.1 mm steps for direct drive and suggests 1–6 mm in 0.2 mm steps for Bowden; use the shortest length that prints clean [1]. Tune pressure advance first, because it reduces the retraction needed [4, 9]. Firmware retraction moves length and speed into the printer through G10 and G11 [12, 8].
What the retraction settings control
When one section of a layer ends and the nozzle travels to the next, plastic keeps leaking out under residual pressure. Retraction reverses the extruder before the travel and pushes the filament back afterwards [6]. PrusaSlicer and OrcaSlicer expose the same handful of controls under slightly different names:
| What it does | PrusaSlicer | OrcaSlicer |
|---|---|---|
| Length pulled back, measured on raw filament before the extruder | Retraction length (default 2 mm) | Length |
| Extruder speed while retracting | Retraction Speed (default 40 mm/s) | Retraction speed |
| Speed while pushing filament back | Deretraction Speed | Deretraction speed (0 = same as retraction) |
| Extra filament pushed after the travel | Deretraction extra length | Extra length on restart |
| Shortest travel that triggers a retraction | Minimum travel after retraction | Travel distance threshold |
| Move along the last path while retracting | Wipe while retracting | Wipe while retracting, Wipe distance |
| Fast partial retraction before the wipe | Retract amount before wipe | Retract amount before wipe |
PrusaSlicer definitions and defaults come from its source [5]; OrcaSlicer names come from its wiki, which also allows per-filament overrides [2]. PrusaSlicer’s tooltip calls deretraction extra length rarely needed, and notes that a quick retract before wiping can help Bowden extruders [5].
Prusa’s stringing guide adds context for its own presets: the shipped minimum travel is 1 mm, raising it saves time but increases stringing, and it recommends leaving Retract on layer change and Wipe while retracting enabled [6]. OrcaSlicer warns that too short a retraction fails to stop oozing while too long a retraction can cause clogs or under-extrusion [2].
Direct drive and Bowden, as the vendors document them
A Bowden tube puts a long, slightly elastic path between the extruder motor and the nozzle, and the published numbers reflect that:
| Source | Direct drive | Bowden |
|---|---|---|
| OrcaSlicer tower defaults | 0 to 2 mm, 0.1 mm step | Suggests 1 to 6 mm, 0.2 mm step [1] |
| Prusa printer presets | MK2.5 and MK3 family: 2 mm maximum | MINI/MINI+: 3.2 mm default [6] |
Flexible filaments are a special case. Prusa notes they usually need longer retractions because the strand stretches as it is pulled back, and that they can take a lot of tuning [6]. OrcaSlicer lists PETG and TPU as more prone to stringing than PLA or ABS [2]. For TPU specifics, see the TPU guide.
Running the retraction tower
OrcaSlicer generates a tower with a series of notches, each printed at a different retraction length. Bambu Studio offers the same test in its developer-mode calibration menu for third-party printers [1, 7].
- Open the retraction test and set start length, end length and step. Keep the defaults for direct drive; for Bowden, try 1 to 6 mm in 0.2 mm steps.
- Print the tower with the filament and temperature you will actually use.
- Find the lowest section that shows no strings or ooze. The target is the shortest clean length, not the cleanest-looking section overall.
- Measure that section’s height, then search the G-code preview for the
Calib_Retraction_towercomment at that height to read the actual length. - Enter the length in the printer profile or as a filament override.
The wiki warns against reading the ; retract comments instead, because they may not include the full length when Retract amount before wipe is in use [1]. It also notes that low-oozing materials such as PLA and ABS may be clean from the first notch, in which case 0.2 to 0.4 mm is enough. If the top of the tower still strings, dry the filament and check the nozzle for leaks before trying longer retractions [1].
Firmware retraction with G10 and G11
Firmware retraction keeps the slicer out of the details: the G-code says retract (G10) or recover (G11), and the printer applies its stored length and speed. Marlin’s documentation lists two benefits: tuning at the machine level and smaller G-code files [12]. In PrusaSlicer, enable Use firmware retraction in Printer Settings [5]. OrcaSlicer has a setting of the same name, which its wiki labels experimental [3].
Klipper. Add a [firmware_retraction] section. Its defaults are retract_length: 0, retract_speed: 20 mm/s, unretract_extra_length: 0 and unretract_speed: 10 mm/s [8]. Adjust at run time with SET_RETRACTION, which takes RETRACT_LENGTH, RETRACT_SPEED, UNRETRACT_EXTRA_LENGTH and UNRETRACT_SPEED, and check the active values with GET_RETRACTION. Klipper’s docs say SET_RETRACTION is commonly placed in slicer per-filament settings, since filaments need different values [9].
Marlin. Build with FWRETRACT. Then:
M207sets retract feedrateFin units per minute, lengthS, swap lengthWfor tool changes, and Z liftZ[13]. A retraction speed of 35 mm/s isF2100.M208sets extra recover lengthSand recover feedrateF. Marlin’s example pairsM207 S2.0withM208 S0.5for a 2.5 mm recovery [14].M209 S1turns on auto-retract, which treats reversed E-only moves in ordinary G-code as retractions [15].- Repeated
G10commands without aG11in between are ignored [12].
Marlin’s configuration defaults are RETRACT_LENGTH 3 mm, RETRACT_FEEDRATE 45 mm/s and RETRACT_RECOVER_FEEDRATE 8 mm/s, and the docs ask you to turn auto-retract off during filament changes [16].
Tune pressure advance first
OrcaSlicer’s guide puts retraction after flow and pressure advance so that extrusion is already under control [4]. Klipper states that well-configured pressure advance reduces the retraction length required [9]; its pressure advance guide suggests a small slicer retraction afterwards, around 0.75 mm with wipe enabled, and disabling z-lift on retract [10]. Marlin’s Linear Advance page goes further and says retraction may drop as low as 0 once K is tuned [11]. See the pressure advance guide.
When retraction is not the problem
Prusa lists causes of stringing that no retraction setting will fix [6]:
- Nozzle temperature too high; try 5–10 °C lower, or run a temperature tower.
- Moisture in the filament; see wet filament.
- A coating of old material inside the nozzle, common after long PETG use.
- Poor heat transfer between heatbreak and heatsink, or misassembled hotend parts.
Over-long retractions bring their own failure mode, so if under-extrusion or jams start after raising the length, work through the clogged nozzle guide and the stringing guide.
Questions
Why does my retraction tower string at every height?
OrcaSlicer's guide says heavy stringing at the top of the tower points to wet filament or a leaking nozzle rather than retraction length, and Prusa adds high temperature and a dirty nozzle as causes [1, 6].
Can retraction be too long?
Yes. OrcaSlicer's retraction settings page warns that too long a retraction can lead to clogs or under-extrusion [2].
Sources
- Retraction test. OrcaSlicer Wiki. Slicer documentation. Tower defaults, Bowden suggestion, reading the Calib_Retraction_tower comment. Accessed October 12, 2026.
- Retraction (printer extruder settings). OrcaSlicer Wiki. Slicer documentation. Setting names and definitions; too short vs too long. Accessed October 12, 2026.
- Printer basic information: Advanced. OrcaSlicer Wiki. Slicer documentation. Use firmware retraction (G10/G11), described as experimental. Accessed October 12, 2026.
- Calibration Guide. OrcaSlicer Wiki. Slicer documentation. Retraction after flow and pressure advance. Accessed October 12, 2026.
- ConfigDefsFDM.cpp (setting definitions and tooltips). Prusa Research, PrusaSlicer source on GitHub. Source code. Retraction length, speed, minimum travel, lift, wipe, retract before wipe, use_firmware_retraction. Accessed October 12, 2026.
- Stringing and oozing. Prusa Knowledge Base. Manufacturer documentation. MK3 max 2 mm vs MINI Bowden 3.2 mm; flexible filaments; other causes of stringing. Accessed October 12, 2026.
- Calibration for 3rd Party Printer. Bambu Lab Wiki. Manufacturer documentation. Bambu Studio retraction tower test. Accessed October 12, 2026.
- Configuration reference. Klipper documentation. Firmware documentation. [firmware_retraction] options and defaults. Accessed October 12, 2026.
- G-Codes. Klipper documentation. Firmware documentation. G10/G11, SET_RETRACTION, GET_RETRACTION; pressure advance reduces retraction needed. Accessed October 12, 2026.
- Pressure advance. Klipper documentation. Firmware documentation. Small retract (about 0.75 mm) and wipe after PA; disable z-lift. Accessed October 12, 2026.
- Linear Advance. Marlin Firmware documentation. Firmware documentation. Recheck retraction after Linear Advance; may be as low as 0. Accessed October 12, 2026.
- G10 - Retract. Marlin Firmware documentation. Firmware documentation. Firmware retract per M207; repeated G10 ignored. Accessed October 12, 2026.
- M207 - Firmware Retraction Settings. Marlin Firmware documentation. Firmware documentation. F (units/min), S length, W swap length, Z lift. Accessed October 12, 2026.
- M208 - Firmware Recover Settings. Marlin Firmware documentation. Firmware documentation. Additional recover length and feedrate; M207 S2.0 + M208 S0.5 example. Accessed October 12, 2026.
- M209 - Set Auto Retract. Marlin Firmware documentation. Firmware documentation. Treat E-only reverse moves as retractions. Accessed October 12, 2026.
- Configuring Marlin (Configuration.h). Marlin Firmware documentation. Firmware documentation. FWRETRACT defaults: RETRACT_LENGTH 3, RETRACT_FEEDRATE 45, RETRACT_RECOVER_FEEDRATE 8. Accessed October 12, 2026.