3d printer bed leveling makes the gap between nozzle and build plate uniform across the whole surface, either by turning screws by hand or by letting a probe measure a grid of at least 3 points per axis.
It is one of the first skills in 3d printing, and the method chosen shapes how often a printer needs attention.
What bed leveling is really correcting
Firmware documentation from Klipper describes the goal of screw adjustment as bringing the bed to “a set distance from the nozzle” at every screw. The word “level” is slightly misleading: the bed does not need to be parallel to the floor, only parallel to the path the nozzle travels. A bed that is flat but tilted relative to the gantry gives a first layer that is squashed on one side and floating on the other.
Two different problems hide under the same name. Tilt is a planar error, and the adjustment screws can remove it. Warp is a surface error, where the plate itself is bowed, and screws cannot remove it. Marlin’s mesh example shows the second case: a 3 by 3 report with readings running from -0.030 to +0.022, so the surface wanders measurably between points even on a well-behaved bed.
Firmware cannot repair everything. Klipper’s Bed Mesh documentation states that the module “cannot compensate for mechanical and electrical issues”, such as a skewed axis or an inaccurate probe. A mesh built on bad measurements simply reproduces the error.
Manual leveling with screws and paper
The classic method needs one sheet of paper. Marlin’s manual mesh documentation says “The only tool required is a piece of paper or a feeler gauge”, and the routine is to adjust Z “so a piece of paper can just pass under the nozzle”. The sheet should drag slightly without tearing.
- Heat the bed and nozzle to printing temperature, because the plate and the hot end both expand.
- Home all axes and raise the head clear of the plate.
- Move to the first screw, slide the paper under the nozzle and turn the screw until there is light friction.
- Repeat at each remaining screw, then go around a second time, because tightening one corner shifts the others.
- Finish by setting the Z offset at the center of the bed.
Klipper automates the walk between screws. Its documentation says to command “the nozzle to a position near each bed screw”, and it needs each screw location in a bed_screws config section. Its Z endstop calibration step asks for the head to sit “at least five millimeters above the bed” before the paper test begins. Because the printer’s own motion system does the positioning, the result is more repeatable than eyeballing a nozzle position.
Manual leveling costs nothing, but it drifts with use and has to be repeated. Heavy beds on spring-loaded screws hold longer than light ones on soft springs, and swapping to firmer springs or lock nuts is a common upgrade.
Automatic leveling and mesh compensation
Automatic bed leveling replaces the paper with a probe, usually inductive, capacitive or a touch pin, that measures the height at a grid of points. The printer does not physically level anything. It stores the measured heights and adjusts Z during printing to follow the surface.
Klipper’s example configuration for a 250 mm x 220 mm bed uses a probe_count of 5, 3, meaning 5 points along X and 3 along Y, and the documentation notes that “a mesh requires a minimum probe_count of 3 along each axis”. Marlin makes the grid size configurable through GRID_MAX_POINTS_X and GRID_MAX_POINTS_Y. More points capture more of the warp but lengthen each probing run.

Probe calibration matters as much as the grid. Klipper’s guide warns that before mesh calibration “you will need to be sure that your Probe’s Z-Offset is calibrated”. A wrong offset shifts the whole first layer up or down, and no mesh will fix it.
Reading first-layer symptoms
A single 3 by 3 mesh, like the one in Marlin’s example report, is enough to show whether a problem is tilt or warp: if the corner readings climb steadily in one direction, the bed is tilted, and if the center sits above or below the corners, the plate is bowed. The printed first layer shows the same thing without any tooling.
- Thin, transparent or scratched lines on one side and thick, rounded lines on the other point to tilt, which the screws fix.
- Good adhesion at the edges but gaps or stringy lines in the center point to a bowed plate, which a mesh fixes.
- Uniform scraping or a nozzle that drags through the whole layer points to a Z offset that is too low everywhere.
- Uniform loose, round lines that peel off easily point to a Z offset that is too high everywhere.
The final pair of symptoms are offset problems, not leveling problems, and they are the reason Klipper insists on a calibrated probe offset before any mesh is trusted. Repeating a mesh will not help when the offset is wrong. Fixing the offset first, then the tilt, then the warp, is the order that avoids chasing the same error repeatedly.
Mechanical looseness also masquerades as a leveling fault. A wobbling bed carriage, a loose gantry wheel or a flexing probe mount will move the measured heights between runs. If two meshes taken back to back disagree noticeably, the hardware needs tightening before the software gets another chance.
Choosing a method and keeping it stable
A printer with a rigid, flat plate may need nothing more than an occasional screw check. Printers that print large parts, swap build plates, or change bed temperature between materials benefit from a mesh taken at print temperature before each job.
The slicer and the nozzle share responsibility for the final result. In the cura slicer, first-layer height and line width decide how forgiving the print is of small height errors, and a wider, slightly thicker first layer hides tiny gaps. A worn or partly clogged tip also changes effective squish, which is covered in the guide to the 3d printer nozzle.
Cost and complexity also play a role. A manual-only printer has fewer parts to fail and nothing to recalibrate except the Z offset, while a probe adds a sensor, a wiring run and a configuration step that must be repeated when the toolhead changes. Neither approach is better in the abstract; a printer that is rarely moved and prints small parts on a flat glass or steel plate can stay on screws indefinitely, and a printer that runs large or multi-material jobs usually earns the probe back in saved failed prints.
A simple routine works for most machines: level manually after any move or collision, run the automatic mesh before prints that use a large share of the plate, and recheck the Z offset whenever the nozzle is replaced.
Frequently asked questions
Do I still need to level manually if my printer has a probe?
Do I still need to level manually if my printer has a probe?
Often yes. Klipper’s Bed Mesh documentation says mesh compensation cannot fix mechanical problems, so a badly tilted bed should be brought close with the screws first and the mesh left to handle small deviations.
How many mesh points are enough?
How many mesh points are enough?
Klipper requires a minimum probe_count of 3 along each axis, and its example for a 250 mm x 220 mm bed uses 5 by 3 points. Beds with visible warp benefit from denser grids.
Can I level a bed without any probe?
Can I level a bed without any probe?
Yes. Marlin’s manual mesh feature (G29 with MESH_BED_LEVELING) measures a grid of Z heights with only a sheet of paper or a feeler gauge.
Should the bed be hot while leveling?
Should the bed be hot while leveling?
Yes, level at printing temperature, because the plate and hot end expand when heated. Klipper’s Bed Mesh guide, for instance, requires the probe Z-offset to be calibrated before any mesh is taken, so both steps belong in the same hot routine.



