A dialled-in first layer is the foundation of every good print, and it comes down to the Z offset — the tiny vertical correction that sets how hard the nozzle squishes the first layer into the bed. Instead of guessing with the paper test, print a square, measure it, and let this tool tell you exactly how much to move the offset.
How it works
The first layer’s thickness is governed by the gap between the nozzle and the bed at Z home, which is set by the Z offset. If the layer prints too thick, the nozzle is sitting too high and you need to bring it closer (a more negative offset). If it prints too thin, the nozzle is too low.
The correction is a direct subtraction:
Z offset adjustment = target thickness − measured thickness
Apply that signed value to your current offset:
new Z offset = current Z offset + (target − measured)
A negative adjustment means lower the nozzle (more negative offset); a positive adjustment means raise it.
Worked example
You sliced a single-layer square at a target of 0.20 mm. Calipers read 0.24 mm — too thick by 0.04 mm. The adjustment is:
adjustment = 0.20 − 0.24 = −0.04 mm
So move the Z offset 0.04 mm more negative. If your current offset was −1.50 mm, the new value is −1.54 mm. Re-print the square and it should now measure 0.20 mm.
Why the paper test isn’t precise enough
The paper test — sliding a sheet under the nozzle until there’s light drag — gets you close in maybe 2–3 minutes, but it has real limitations. The thickness of standard printer paper varies between brands (typically 0.08–0.12 mm), and the “right amount of drag” is a subjective feel that differs between operators. Two people calibrating the same printer with the same paper can produce offsets that differ by 0.05–0.10 mm.
For functional parts that need dimensional accuracy, or for materials like PETG that are sensitive to over-squish, a measured calibration is more repeatable and produces consistent results across sessions. The paper test is a useful starting point — use it to get within 0.2 mm or so, then use this calculator to zero in precisely.
Reading a first-layer test print
When you inspect the printed square (or a calibration pattern), look for these signs:
| Appearance | Diagnosis | Adjustment |
|---|---|---|
| Gaps between lines, poor adhesion | Layer too thick (nozzle too high) | Move Z offset more negative |
| Lines fusing together smoothly | Good squish — target range | No change needed |
| Lines squashing flat, plastic spreading sideways | Layer too thin (nozzle too close) | Move Z offset less negative |
| Lines transparent / very flat, skipping | Nozzle dragging bed | Move Z offset significantly less negative |
Measure in at least three positions — centre, and two opposing corners — since an unlevel bed means different actual gaps at different points. If the corners are consistently different from the centre, level the bed first, then re-measure.
Babystep adjustment in Marlin and Klipper
On printers running Marlin, you can adjust Z offset in real-time during a print using the Live Adjust Z or Babystep feature in the LCD menu or via M290 Z-0.04. In Klipper, SET_GCODE_OFFSET Z_ADJUST=-0.04 applies a live offset without stopping the print. Use these to confirm the new value while watching the first layer before saving it permanently with SAVE_CONFIG (Klipper) or M500 (Marlin).
Tips and notes
Measure the square in a few spots and average them, since bed levelling can vary across the plate. A first layer landing within about 0.02 mm of nominal is excellent, and a very slight squish (a few hundredths under target) often gives the best adhesion. On printers with live adjustment you can babystep Z by this amount mid-print to verify before saving. All calculations run locally in your browser.