YYinji
How-to

3D Printer Calibration Complete Guide: Temperature Towers, Retraction and Flow

CalibrationHow-toTuning

🔗 This article contains affiliate links — as an Amazon Associate we earn from qualifying purchases, at no extra cost to you. Learn more

Every 3D printer ships with settings that are “good enough” to produce a first benchy, but if you want reliable, dimensionally accurate parts with clean surfaces, calibration is the single highest-leverage skill you can learn. Spending an afternoon calibrating your printer transforms it from a machine that sort-of-works to one that just-works, print after print.

This guide walks you through the complete calibration workflow — from mechanical basics to advanced tuning — in the order that makes each step build on the previous one. Every section follows the same three-question pattern: how to run the test, what to look for, and what to adjust.

If you are new to 3D printing, start with our Getting Started Guide and Slicer Introduction before diving into calibration.


Why Calibrate, and What Order to Follow

Calibration is a dependency chain — each step assumes the previous one is correct. If you skip to flow calibration without first setting e-steps, you will be compensating for the wrong problem.

The Calibration Dependency Chain

Mechanical Soundness (frame, belts, motion)
  └─ E-steps (extruder steps per mm)
       └─ Bed Leveling / First Layer
            └─ Temperature Tower
                 └─ Retraction Tower
                      └─ Flow / Extrusion Multiplier
                           └─ Pressure / Linear Advance (optional)
                                └─ Speed, Acceleration, Input Shaping (optional)

Important: Every printer is different. The values in this guide are starting points. Your specific printer, hotend, extruder type (direct drive vs. Bowden), filament brand, and even filament color can change the optimal settings. Calibration is about finding your printer’s sweet spot.

Materials vs. Calibration

Different materials require different calibration runs. PLA and PETG have very different temperature needs, retraction behavior, and flow characteristics. Save a separate profile for each material after calibrating with it.


E-steps / Extruder Calibration: Getting the Right Amount of Filament

E-steps (extruder steps per mm) tells your printer’s firmware exactly how many motor steps it takes to push 1 mm of filament through the extruder. If this is wrong, everything downstream is wrong too.

Safety first: E-steps calibration requires heating the nozzle to printing temperature — the extruder motor will not push cold filament. The nozzle and heater block will be 190°C or hotter. Keep your fingers and your reference mark well clear of the hotend, never touch the heater block, and let everything cool before pulling filament out.

How to Measure

Tools needed: A digital caliper or ruler with mm markings, a marker pen.

  1. Heat the nozzle to your material’s normal printing temperature (e.g., 200 C for PLA).
  2. Mark a reference point on the filament 120 mm above the extruder entry point (the top of the extruder body or the fitting where the Bowden tube enters).
  3. Use your printer’s “Move Axis” menu (or send G1 E100 F100 via a terminal/serial console) to extrude exactly 100 mm of filament.
  4. Measure the remaining distance from your mark to the extruder entry point.

The math:

  • If you started at 120 mm and the mark is now 15 mm above the extruder, you actually extruded 105 mm (120 - 15 = 105). Your extruder is over-extruding by 5%.
  • If the mark is now 25 mm above, you extruded 95 mm. You are under-extruding.

What the Numbers Mean

Measured Extrusion Actual Extruded Error Action
100 mm 100 mm 0% Perfect, no adjustment needed
100 mm 95 mm -5% Under-extruding, increase e-steps
100 mm 105 mm +5% Over-extruding, decrease e-steps

How to Calculate Your New E-steps Value

The formula is universal:

New E-steps = (Actual Extruded / Expected Extrusion) x Current E-steps

Example:

  • Your current e-steps = 93 steps/mm (common stock value for many extruders)
  • You asked for 100 mm, actually got 95 mm
  • New e-steps = (100 / 95) x 93 = 97.9 steps/mm

How to Apply the New Value

  • Firmware-based (preferred): Use M92 E[new-value] followed by M500 (save to EEPROM). This is the most permanent and reliable method.
  • Slicer-based (temporary): Add M92 E[new-value] to your printer’s start G-code. This overrides firmware values but must be re-applied for every print.

Run the 100 mm test again after applying the new value to confirm accuracy. Repeat if the error exceeds 2%.

Pro tip: Some extruders (especially dual-gear types like Bondtech or BMG clones) have a default e-steps of around 400, not 93. Always check your printer’s current e-steps by sending M503 before calculating.

A digital caliper is essential for this measurement. Search for digital calipers on Amazon

As an Amazon Associate we earn from qualifying purchases.


First Layer and Bed Leveling

A perfect first layer is the foundation of every successful print. If your nozzle is too far from the bed, the first layer will not stick. Too close, and you get elephants foot, under-extrusion ripples, or a jammed nozzle.

We have a dedicated guide for this — see Bed Leveling Complete Guide. Here is the short version:

  1. Manual mesh leveling: Use paper feeler gauge method at each bed screw location. The nozzle should grip the paper with light resistance.
  2. Auto bed leveling (ABL): If your printer has a probe, run the automatic mesh generation, then verify the Z-offset manually with a first-layer test print.
  3. Live Z-adjust: Print a single-layer square (or a bed-leveling test pattern) and adjust Z-offset while it prints. The ideal first layer has no gaps between lines and a slightly matte finish — not translucent (too thin) and not ridged (too thick).

Once your first layer is consistent, you can move on to temperature calibration.


Temperature Tower: Finding the Sweet Spot for Each Material

The temperature tower is the most widely used calibration test in 3D printing, and for good reason — nozzle temperature affects every aspect of print quality: layer adhesion, surface finish, stringing, overhang performance, and even dimensional accuracy.

How to Run a Temperature Tower

A temperature tower is a single model with multiple sections, printed at progressively lower (or higher) temperatures as the print climbs. Most slicers have built-in tower generators.

Using built-in slicer tools:

  • Cura: Extensions, Parts for Calibration, Temperature Tower. Select your material type and it generates the tower with automatic G-code for temperature changes at each height.
  • PrusaSlicer / Bambu Studio: Calibration menu, Temperature test. These generate the tower and insert M104 temperature change commands automatically.
  • Orca Slicer: Calibration menu, Temperature: similarly generates the full setup.

Manual method:

  1. Download a temperature tower STL (search for “temperature tower PLA” on model repositories).
  2. Slice the model.
  3. Manually add M104 S[temperature] at the layer heights where each section starts. Most towers have clearly marked section boundaries.

Temperature Range by Material

Material Typical Range Recommended Starting Range
PLA 190-230 C 190 to 230 C in 5 C steps (9 sections)
PETG 220-260 C 220 to 260 C in 5 C steps
ABS 230-270 C 230 to 270 C in 5 C steps
TPU 200-240 C 200 to 240 C in 5 C steps
Nylon (PA6/PA12) 250-290 C 250 to 290 C in 5 C steps

What to Look For

Inspect the printed tower from bottom to top:

  1. Surface quality: Look for glossy vs. matte sections. Glossier surfaces typically indicate better layer-to-layer bonding. Overheating produces a dull, almost “cooked” look.
  2. Bridging: The bridge test spans near each section tell you about cooling and material flow. Clean bridges mean good temperature.
  3. Overhangs: Sections with cleaner overhangs at lower temperatures suggest your material benefits from more cooling.
  4. Stringing: Fine strings between the vertical columns. Lower temperatures usually reduce stringing but increase the risk of weak layer adhesion.
  5. Layer adhesion: Try twisting the sections. The section that is hardest to break is the one with the best layer fusion — this is often slightly higher than the prettiest-looking section.

How to Choose Your Temperature

Pick the lowest temperature that still produces strong layer adhesion and acceptable stringing. Do not automatically choose the “prettiest” section — a tower that looks flawless at 190 C might delaminate under load because the layers are not fully fused.

Rule of thumb: Mark the temperature where bridging is clean, overhangs are sharp, and stringing is minimal. Then print one more tower that zooms in on plus or minus 5 C around that range for fine-tuning.


Retraction Tower: Eliminating Stringing and Oozing

Retraction is the printer pulling filament backward during travel moves to relieve nozzle pressure and prevent oozing. Too little retraction causes stringing; too much causes clogs, under-extrusion after travel moves, and filament grinding.

Retraction Distance: Direct Drive vs. Bowden

This is the most important distinction in retraction tuning:

Extruder Type Typical Retraction Distance Starting Point
Direct drive (extruder mounted on hotend) 0.5 - 2.0 mm 1.0 mm
Bowden (extruder remote, long tube) 3.0 - 8.0 mm 5.0 mm

The reason for this massive difference: in a Bowden setup, you must take up slack across the entire PTFE tube before the filament actually moves at the nozzle. Direct drive has almost no slack.

Retraction Speed

Typical range: 25 - 60 mm/s. Start at 40 mm/s.

  • Too slow: filament oozes out before being pulled back.
  • Too fast: filament grinds against the extruder gears, stripping material and causing inconsistent retraction.

How to Run a Retraction Tower

A retraction tower has identical geometry at multiple heights, each printed with a different retraction distance (or speed). Like temperature towers, modern slicers have built-in retraction test generators:

  • Cura: Extensions, Parts for Calibration, Retraction Tower.
  • PrusaSlicer / Bambu Studio: Calibration, Retraction.
  • Orca Slicer: Calibration, Retraction.

What to look for: Examine the stringing between the vertical pins or columns at each height. The section with the least stringing without causing under-extrusion after the travel move is your winner.

How to Tune

  1. Start with distance: Set speed to 40 mm/s. Print the retraction tower with distance increasing by 0.2 mm per section (direct drive) or 0.5 mm (Bowden).
  2. Find the sweet point: The distance where strings disappear but you do not see gaps or missing filament at the start of each extrusion segment after a retraction.
  3. Tune speed: Once distance is set, run another tower varying speed (30, 40, 50, 60 mm/s) at the chosen distance.
  4. Fine-tune z-seam alignment: After retraction is dialed in, check your z-seam alignment settings in the slicer. Proper retraction hides seams; poor retraction makes them obvious.

Understanding retraction helps diagnose other stringing issues too. See Common 3D Printing Mistakes for more troubleshooting.


Flow / Extrusion Multiplier: Getting Dimensional Accuracy

Flow (called “Extrusion Multiplier” in PrusaSlicer/Bambu Studio, “Flow Rate” in Cura) adjusts the amount of material extruded relative to what the slicer calculated. This compensates for filament diameter variations, nozzle wear, and extruder inaccuracies that e-steps calibration does not fully catch.

The Hollow Single-Wall Cube Method

This is the most reliable and widely used flow calibration technique.

Step 1: Prepare the test

  1. In your slicer, create a cube about 20x20x20 mm.
  2. Set walls to 1 (single wall), top layers to 0, infill to 0%.
  3. Set extrusion width to exactly match your nozzle size (0.4 mm nozzle, 0.4 mm extrusion width).

Step 2: Print and measure

  1. Print the hollow cube.
  2. Use digital calipers to measure the wall thickness at 6-8 different points on the cube.
  3. Average the measurements.

Step 3: Calculate the correction

New Flow % = (Target Wall Thickness / Measured Average Wall Thickness) x Current Flow %

Example:

  • Nozzle: 0.4 mm, target wall: 0.4 mm
  • Measured average: 0.44 mm (over-extruding)
  • Current flow: 100%
  • New flow = (0.40 / 0.44) x 100 = 90.9%

Step 4: Verify Print another single-wall cube with the new flow value. Measure again. The wall should be within plus or minus 0.02 mm of your target.

Flow by Material

While flow should be calibrated for each specific spool, here are common starting points:

Material Typical Flow Range
PLA 95-105%
PETG 95-105%
ABS / ASA 95-105%
TPU 105-120% (flexible materials often need higher flow)
Nylon 100-110%

Note: Flow calibration assumes your e-steps are correct. If you skipped that step, go back and do it first. Also ensure your filament diameter is set accurately in the slicer — measure the filament in 3 places and use the average.

A digital caliper with 0.01 mm resolution is critical for this measurement. Search for digital calipers on Amazon

As an Amazon Associate we earn from qualifying purchases.


Pressure Advance / Linear Advance: Taming Corner Blobs

Pressure Advance (Klipper) and Linear Advance (Marlin) compensate for the elastic behavior of filament in the hotend. When the nozzle slows down for a corner, pressure builds up and material oozes out, producing a blob at the corner. When it accelerates again, there is a brief under-extrusion. PA/LA counteracts this by dynamically adjusting extrusion based on acceleration.

Is This Step for You?

  • If you have Klipper firmware: Yes, this is essential. Klipper’s Pressure Advance is well-supported and makes a huge visible difference.
  • If you have Marlin 2.x: Linear Advance works but requires enabling in firmware. Check if your printer’s firmware has LINEAR_ADVANCE enabled — many stock printers do not.
  • If you are a beginner: Skip this for now. Master the other calibrations first. PA/LA is advanced tuning.

How to Tune Pressure Advance (Klipper)

Klipper has a built-in tuning tool:

  1. Use the TUNING_TOWER command to print a pattern that varies PA values.
  2. Look for the corner where the nozzle transition is cleanest — no blobs on deceleration, no gaps on acceleration.
  3. Apply the value in your printer.cfg: pressure_advance = [value]

How to Tune Linear Advance (Marlin)

  1. Set K-factor to 0 (disabled) and print a test pattern (available from Marlin’s test patterns page or community models).
  2. Look at the corners: too-low K leaves corner blobs; too-high K causes corner gaps.
  3. Adjust K in increments of 0.05 until corners are clean.

Typical Ranges

Hotend Type Typical PA/LA Value
Direct drive (standard) 0.02 - 0.10
Direct drive (high-flow) 0.04 - 0.20
Bowden 0.50 - 1.50

Speed, Acceleration, and Input Shaping

Once your printer extrudes accurately, the next frontier is speed. This section is a brief overview — full tuning is outside the scope of this guide.

Acceleration Tuning

Most stock printer profiles have acceleration set conservatively (500-1000 mm/s^2). You can safely increase this, but too high causes:

  • Layer shifts (the stepper motor loses steps)
  • Ringing / ghosting (visible echoes of features on the print surface)
  • Vibration artifacts

Good starting max acceleration:

  • Bed slinger (Y-axis moving bed): 1500-3000 mm/s^2
  • CoreXY: 3000-8000 mm/s^2
  • Always tune per-axis — X can often be higher than Y on bed slingers.

Input Shaping

Input Shaping (called “Resonance Compensation” in some firmwares) eliminates ringing by measuring your printer’s natural resonance frequency and applying a compensating filter to motion commands.

  • Klipper: Use SHAPER_CALIBRATE with an accelerometer (ADXL345) for best results.
  • Marlin 2.1+: Input Shaping is available but less refined than Klipper’s implementation.
  • Bambu Lab / Prusa: Input shaping is pre-configured from the factory.

The result of proper input shaping: you can print 2-3x faster without visible ringing, which means the same part quality in half the time or less.


Common Calibration Test Models and Slicer Built-in Tools

There are many calibration models available on the internet. However, the most reliable source is your slicer’s built-in calibration tools, not random STL files from unknown websites. Slicer-generated models are guaranteed to work correctly with the temperature-change G-code that the slicer inserts.

Slicer Built-in Calibration Tools
Orca Slicer Best-in-class — temperature, retraction, flow (pass 1 and pass 2), PA/LA, max flow rate, all in the Calibration menu
PrusaSlicer / Bambu Studio Temperature, retraction, flow rate, max volumetric speed via Calibration menu
Cura Temperature Tower, Retraction Tower, and Tolerance Test via Marketplace plugins or Extensions, Parts for Calibration
Simplify3D Manual calibration models available in their knowledge base
SuperSlicer Orca’s predecessor — full calibration suite still available

If You Need External Models

When downloading calibration models from the web:

  • Stick to well-known, maintained collections (teachingtechyt.github.io calibration site, Ellis’ Print Tuning Guide).
  • Avoid random zip files from forums containing G-code — malicious G-code can damage your printer.
  • Always slice files yourself rather than using pre-sliced G-code from unknown sources.

Other Useful Test Models

  • XYZ Calibration Cube: Checks dimensional accuracy and x/y/z alignment (all sides should be within 0.2 mm of each other).
  • Bridging Test: A practical test for cooling and material flow.
  • Overhang Test: Tests material performance on unsupported slopes.
  • All-in-One Calibration: Multi-section models that combine temperature, retraction, and flow into a single print. Good for quick sanity checks after the individual tests are done.

Calibration Checklist Summary

Print this table and check each step off as you complete it. Most steps take one to three prints, so budget a full afternoon for a complete first-time calibration.

Step What to Print What to Measure/Check Adjustment Done?
1. E-steps 100 mm filament extrusion Actual vs. expected length M92 E value in firmware
2. Bed Leveling Single-layer square or test pattern First layer consistency, no gaps or ridges Z-offset, bed screws, mesh
3. Temperature Tower Temperature tower from slicer Surface finish, bridging, stringing, layer adhesion Nozzle temperature per material
4. Retraction Tower Retraction tower from slicer Stringing between columns, gaps after travel Retraction distance + speed
5. Flow (Extrusion Multiplier) 20 mm single-wall hollow cube Wall thickness with calipers (target = nozzle diameter) Flow % in slicer filament settings
6. Pressure Advance (optional) PA test pattern (Klipper/Marlin) Corner blobs vs. gaps K-factor or pressure_advance value
7. Speed / Input Shaping (optional) Vibration / resonance test Ringing, surface quality Acceleration limits, shaper type + frequency

Quick Reference: Starting Values

Setting Direct Drive Bowden
Retraction distance 0.5 - 2.0 mm 3.0 - 8.0 mm
Retraction speed 25 - 50 mm/s 30 - 60 mm/s
Temperature (PLA) 200 - 220 C 200 - 220 C
Flow (PLA) 95 - 105% 95 - 105%
Pressure Advance (Klipper) 0.02 - 0.08 0.50 - 1.00

Final Thoughts

Calibration is not a one-time event. Every time you switch filament brands, replace a nozzle, change extruder hardware, or simply notice a drop in print quality, run through the relevant steps again. With practice, a temperature tower and flow calibration take less than an hour, and the improvement in your prints is immediate.

Your printer has a perfect set of settings hidden somewhere. Calibration is how you find them.