Calibration Guide: Getting Perfect Prints from Any 3D Printer
A calibrated 3D printer produces dimensionally accurate parts with clean surfaces, consistent layers, and minimal artifacts. An uncalibrated printer produces rough surfaces, dimensional inaccuracy, stringing, blobs, and layer inconsistencies regardless of how good the slicer settings are. Calibration is the process of measuring and correcting the mechanical and firmware parameters that control how your printer moves and extrudes. This guide presents calibration steps in the correct order, since each step builds on the previous one.
E-Steps Calibration
E-steps (extruder steps per millimeter) control how much filament the extruder pushes for each millimeter of commanded movement. If e-steps are wrong, every other extrusion setting is wrong too. To calibrate, mark your filament 120mm above the extruder entry point. Command the extruder to push 100mm of filament. Measure how much actually moved. If 97mm moved, your e-steps are 3 percent too low and need increasing proportionally.
The formula is: new e-steps = current e-steps times (100 / actual distance moved). After adjusting in firmware, re-test to verify accuracy within 0.5mm. E-steps should only need calibrating once per extruder unless you change the extruder hardware (gear, motor, or drive ratio). Do NOT adjust e-steps to fix over or under-extrusion caused by other factors like flow rate.
- Mark filament 120mm above extruder
- Command 100mm extrusion at slow speed
- Measure actual distance moved
- New e-steps = current times (100 / actual)
- Save to firmware (M500 for Marlin)
- Re-test to verify within 0.5mm accuracy
Flow Rate Calibration
Flow rate (extrusion multiplier) compensates for material-specific variations in how filament melts and flows through the nozzle. Print a single-wall cube (vase mode) with 0 infill and 0 top layers. Measure the wall thickness at multiple points with calipers. Compare to the slicer line width setting. If your line width is set to 0.4mm but the wall measures 0.44mm, reduce flow rate by 10 percent.
The formula is: new flow rate = current flow rate times (expected width / measured width). Calibrate flow rate for each filament type and brand because material properties vary. PLA from different manufacturers may need different flow rates. Store calibrated flow rates in material profiles in your slicer. Typical flow rates range from 90 to 100 percent for most filaments.
- Print single-wall cube in vase mode
- Measure wall thickness at multiple points
- New flow = current times (expected / measured)
- Calibrate per filament brand and type
- Store flow rate in slicer material profiles
- Typical range: 90 to 100 percent
Temperature Calibration
Print a temperature tower to find the optimal temperature for each filament. A temperature tower prints multiple sections at decreasing temperatures, letting you evaluate quality at each setting in a single print. Evaluate each section for layer adhesion (bending test), stringing between pillars, bridging quality, overhang quality, and surface smoothness. The optimal temperature produces the best balance across all criteria.
Many slicers and community resources provide pre-made temperature tower models and scripts. The typical test range is 230 to 190C for PLA in 5-degree increments. PETG tests at 250 to 220C. ABS at 260 to 230C. Each filament brand has a unique sweet spot within the manufacturer range. Running this 45-minute test for every new spool saves hours of troubleshooting bad prints.
- Print a temperature tower for each new filament spool
- Evaluate: layer adhesion, stringing, bridging, overhangs, surface finish
- PLA range: 190 to 230C, sweet spot usually 200 to 215C
- PETG range: 220 to 250C, sweet spot usually 230 to 240C
- ABS range: 230 to 260C, sweet spot usually 240 to 250C
- First layer: 5 to 10C higher than optimal for better adhesion
Retraction Calibration
Retraction pulls filament backward in the nozzle to prevent oozing during travel moves. Two parameters need calibration: retraction distance (how far the filament pulls back) and retraction speed (how fast it pulls). Under-retraction causes stringing and oozing. Over-retraction causes gaps after retraction moves and can cause clogs by pulling molten filament into the cold zone.
Bowden setups need longer retraction (4 to 7mm at 30 to 50mm/s) because of the flexible tube between the extruder and hotend. Direct drive setups need shorter retraction (0.5 to 2mm at 25 to 45mm/s) because the extruder is mounted directly on the hotend. Print a retraction test (multiple towers with gaps) and reduce retraction until stringing just appears, then add 0.5mm. This finds the minimum effective retraction.
- Bowden retraction: 4 to 7mm distance, 30 to 50mm/s speed
- Direct drive retraction: 0.5 to 2mm distance, 25 to 45mm/s speed
- Print retraction test tower to find optimal settings
- Start high and reduce until stringing appears, add 0.5mm back
- Too much retraction: gaps, blobs, potential clogs
- Too little retraction: stringing between travel moves
Pressure Advance and Input Shaping
Pressure advance (called Linear Advance in Marlin, Pressure Advance in Klipper) compensates for the pressure buildup in the nozzle during extrusion. Without it, corners bulge where the nozzle decelerates and starts of lines are thin where the nozzle accelerates. Pressure advance anticipates speed changes and adjusts extrusion rate accordingly, producing even line width throughout the print.
Input shaping compensates for frame vibration that causes ringing (ghosting) artifacts on printed surfaces. Klipper firmware and Bambu Lab printers measure resonant frequencies using an accelerometer and apply digital filtering to cancel the vibrations. This allows much higher print speeds without quality loss. Calibrating input shaping typically involves printing a test pattern, measuring the ringing frequency, and entering the value in firmware.
- Pressure advance: compensates for nozzle pressure during speed changes
- Without PA: bulging corners, thin line starts, inconsistent width
- Klipper PA calibration: print PA test pattern, select smoothest value
- Marlin Linear Advance: similar concept, K-factor calibration
- Input shaping: cancels frame vibration for cleaner surfaces at speed
- Requires accelerometer for measurement (many printers include one)
Frequently Asked Questions
In what order should I calibrate my 3D printer?
Calibrate in this order: (1) e-steps, (2) flow rate per filament, (3) temperature per filament, (4) retraction per filament, (5) pressure advance, (6) input shaping. Each step builds on the previous. Changing e-steps after flow rate calibration invalidates the flow rate calibration.
How often do I need to recalibrate?
E-steps: once per extruder change. Flow rate: once per filament brand/type. Temperature: once per filament brand/type. Retraction: once per filament type. Pressure advance: whenever e-steps or hotend changes. Input shaping: whenever the frame or toolhead mass changes. Store all values in slicer profiles for easy recall.
Why are my 3D prints dimensionally inaccurate?
The most common causes in order: over-extrusion (flow rate too high), incorrect e-steps, belt tension inconsistency, and thermal expansion of the material. Calibrate e-steps and flow rate first. If dimensions are consistently wrong in one axis, check that axis belt tension and stepper steps.
What is the difference between e-steps and flow rate?
E-steps calibrate the mechanical accuracy of the extruder: does it push exactly 100mm when commanded. Flow rate adjusts for material-specific melt behavior: how much the filament expands or contracts as it exits the nozzle. E-steps are calibrated once per extruder. Flow rate is calibrated per filament.
How do I reduce stringing without affecting print quality?
Calibrate retraction distance and speed as described above. Then lower nozzle temperature by 5C. Enable wipe and coasting in your slicer. If stringing persists, increase travel speed to minimize time for oozing. A quick pass with a heat gun at low setting removes remaining fine strings in seconds.