Which Z hop type should you use?

By Asked 3D Content TeamPublished Last verified

Which Z hop type should you use?

Keep the type your printer profile ships. Every Bambu Lab printer profile in Bambu Studio and OrcaSlicer sets Auto, which ramps up with Slope unless the travel crosses an overhang, where it uses Spiral. OrcaSlicer’s own default is Slope at a 3° Traveling angle, and Bambu Studio hard-codes the same 3° climb.

The number

Slicer and profile Z hop type it ships Climb angle
Bambu Studio v02.08.02.61, every Bambu Lab printer profile (X1, P1, A1, A2L, H2, P2S and X2D series) Auto 3°, fixed in code, not a setting
Bambu Studio, Bambu PLA Basic filament on the H2D (0.4 mm nozzle) Spiral, a filament override that replaces the printer’s Auto 3°
Bambu Studio, Bambu PLA Basic filament on the X1 Carbon No override, so the printer’s Auto 3°
Bambu Studio, Bambu ASA-Aero filament on every printer Normal, a filament override None: a vertical lift
Bambu Studio field default, for a printer profile that sets no type Spiral 3°
OrcaSlicer v2.4.2 field default Slope “Traveling angle” 3°
OrcaSlicer, Bambu Lab printer profiles Auto 3°
OrcaSlicer, Prusa MK4S profile Slope 1°
OrcaSlicer, Voron profiles Normal None: a vertical lift

The Bambu Studio rows come from v02.08.02.61’s PrintConfig.cpp, GCodeWriter.cpp and its BBL machine and filament profiles; the OrcaSlicer rows from v2.4.2’s PrintConfig.cpp and its BBL, Prusa and Voron machine profiles. Why the nozzle lifts at all is covered in what Z hop is.

What does each Z hop type do?

Type The move it writes What the docs say it is for Documented trade-off
Normal Straight up, level travel, straight down Clearance so the nozzle does not hit the print PrusaSlicer’s 2.7.0 beta release notes say a straight lift can cause stringing, especially with wider nozzles
Slope One diagonal move climbing at the angle toward the destination, then level. On a travel too short to reach full height at that angle, the whole travel is one straight climb Bambu’s wiki lists Slope, Spiral and Auto as types that “effectively reduce oozing and stringing” While climbing it sweeps a larger area, so it can scrape an overhang that has curled up (Bambu’s wiki)
Spiral One full circle beside the start point, climbing as it goes (a G17 then a G3 arc with Z and P1), then the level travel Same wiki line; both slicers’ Z hop tooltip says spiral lines “can prevent stringing” Bambu Studio falls back to a straight lift when the circle would leave the bed. OrcaSlicer writes the arc only with Arc fitting on, otherwise as 4 to 16 straight moves
Auto Slope, or Spiral when the stretch where a slope would climb crosses an overhang printed in the last 0.4 mm of height; Spiral on every layer change Avoiding a warped overhang None listed beyond those of Slope and Spiral

All four end the same way: the nozzle drops straight down to the layer before printing resumes.

Why does Auto switch between Slope and Spiral?

Because of where each one climbs. Bambu Lab’s wiki says overhangs can expand and warp during printing. A slope lift passes over a larger area on its way to full height, with “a certain chance” of colliding with a warped part. A spiral stays over a small patch above the part surface, so Auto uses it wherever the travel crosses an overhang, and on every layer change.

Both climb at the same 3° in Bambu Studio’s code. At the 0.4 mm lift Bambu Lab profiles use, a slope stretches over about 7.6 mm of travel (0.4 ÷ tan 3°). A spiral coils the same climb into one circle about 2.4 mm across, next to the start point.

Three nozzle travel paths over a part: a Normal lift straight up and across, a Slope lift climbing along the travel, and a Spiral lift circling upNormal lifts straight up, Slope climbs while it moves toward the destination, and Spiral climbs in one small circle before the move; all three drop straight down at the end.1Normal: straight up, across, down2Slope: climbs along the travel3Spiral: one turn up, then across
  1. Normal: straight up, across, down
  2. Slope: climbs along the travel
  3. Spiral: one turn up, then across
Normal lifts straight up, Slope climbs while it moves toward the destination, and Spiral climbs in one small circle before the move; all three drop straight down at the end.

What is the difference between Slope and Spiral?

Where the climb happens. Slope climbs along the travel line, so the start of its travel passes low over whatever lies ahead. Spiral finishes climbing above the start point before it moves, then crosses at full height. Both types share one angle: Bambu Studio fixes it at 3°, and OrcaSlicer sets it with “Traveling angle”, where 90° turns either into a Normal lift.

Normal vs Spiral: which leaves fewer strings?

None of the sources above gives a measured comparison, but the docs all point one way. Bambu Lab’s wiki groups Spiral, Slope and Auto as the types that reduce oozing and stringing, and PrusaSlicer added its ramp because a straight lift could string. Bambu still ships Normal for ASA-Aero. A lift can also add strings of its own (can Z hop cause stringing).

Is there a best Z hop type?

None of these slicers’ docs ranks one. Keep the type your profile ships (Auto on every Bambu Lab printer). Change it only for a reason the docs give: Spiral or Auto where the nozzle catches curled overhangs, Slope or Spiral where strings start at a Normal lift. Height is a separate setting (Z hop height).

What do On surfaces and Only lift Z above do in OrcaSlicer?

They limit where the lift happens. “On surfaces” (All Surfaces by default) can restrict lifts to after top surfaces (Top Only), to the first layer (Bottom Only), or both. “Only lift Z above” and “Only lift Z below” set an absolute height band; 0 leaves them off. Bambu Studio has the same band as “Z hop lower boundary” and “Z hop upper boundary”.

Does PrusaSlicer or Cura have Z hop types?

  • PrusaSlicer has no type list. Since 2.7.0, “Use ramping lift” (Printer Settings, Extruder, Travel lift) makes a slope-style ramp set by “Ramping slope angle” and “Maximum ramping lift”. PrusaSlicer 2.9.6’s MK4S, CORE One and XL profiles ship it on at 1° and 1.5 mm. With it on, layer changes follow a helical path by default.
  • UltiMaker Cura 5.13 has no type setting. “Z Hop When Retracted” is a vertical move at “Z Hop Speed”, off by default.

How to check it on your own print

  1. Find the setting. Bambu Studio: Printer settings, Extruder, Retraction, “Z Hop Type” (an Advanced-mode option). OrcaSlicer: Printer settings, Extruder, the Z-Hop group.
  2. Check the filament overrides. In Bambu Studio, a ticked “Z Hop Type” under Filament settings, Setting Overrides replaces the printer’s choice; unticked, the printer setting applies.
  3. Read the G-code. A Spiral lift is a G17 line followed by a G3 arc carrying Z and P1. A Normal lift is a G1 Z line on its own. A Slope lift is a G1 with X, Y and a rising Z. In OrcaSlicer, turn on “Verbose G-code” (Others, G-code output) to get spiral lift Z and normal lift Z comments.
  4. If the nozzle still clips curled overhangs, switch to Auto or Spiral, or raise the lift height.
  5. If strings start where travels begin, print the same file once with Normal and once with Spiral. Change nothing else between the two.

Sources

  1. src/libslic3r/PrintConfig.cpp at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  2. src/libslic3r/GCodeWriter.cpp at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  3. src/libslic3r/GCode.cpp at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  4. src/slic3r/GUI/Tab.cpp at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  5. resources/profiles/BBL/machine/fdm_bbl_3dp_001_common.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  6. resources/profiles/BBL/machine/fdm_bbl_3dp_002_common.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  7. resources/profiles/BBL/filament/Bambu PLA Basic @BBL H2D.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  8. resources/profiles/BBL/filament/Bambu PLA Basic @BBL X1C.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  9. resources/profiles/BBL/filament/fdm_filament_common.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  10. resources/profiles/BBL/filament/Bambu ASA-Aero @base.json at v02.08.02.61, Bambu Studio on GitHub (accessed October 30, 2026)
  11. Retraction (Z Hop type section), Bambu Lab Wiki (accessed October 30, 2026)
  12. src/libslic3r/PrintConfig.cpp at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  13. src/libslic3r/GCodeWriter.cpp at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  14. src/libslic3r/GCode.cpp at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  15. src/slic3r/GUI/Tab.cpp at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  16. Printer settings, Extruder, Z Hop, OrcaSlicer wiki (accessed October 30, 2026)
  17. resources/profiles/BBL/machine/fdm_bbl_3dp_001_common.json at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  18. resources/profiles/Prusa/machine/fdm_machine_common_mk4s.json at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  19. resources/profiles/Voron/machine/fdm_klipper_common.json at v2.4.2, OrcaSlicer on GitHub (accessed October 30, 2026)
  20. src/libslic3r/PrintConfig.cpp at version_2.9.6, PrusaSlicer on GitHub (accessed October 30, 2026)
  21. resources/profiles/PrusaResearch.ini at version_2.9.6, PrusaSlicer on GitHub (accessed October 30, 2026)
  22. PrusaSlicer 2.7.0-beta1 release notes (Travel moves improvements), PrusaSlicer on GitHub (accessed October 30, 2026)
  23. resources/definitions/fdmprinter.def.json at 5.13.0, UltiMaker Cura on GitHub (accessed October 30, 2026)