Free · runs in your browser · nothing is uploaded

Calibration Cube Generator: XYZ Cube STL for Any Size

Pick a size from 10 to 50 mm, download the cube with X, Y and Z marked on its sides, and print it flat. Then measure each axis with calipers and enter the numbers: you get the error in percent and the new steps/mm for each axis as an M92 line for Marlin.

Loading the calibration cube generator...

How to use a calibration cube

  1. 1

    Make the cube

    Choose a size (20 mm is a common one). Engraved letters keep the sides true; raised letters are easier to read. Download the STL.

  2. 2

    Print it normally

    Slice with your usual profile and print it flat on the bed. Do not change your settings for the test: the point is to see what your normal prints do.

  3. 3

    Measure with calipers

    Let it cool, then measure X, Y and Z across the flat middle of each side. Stay away from the bottom edge, which can be wider (elephant foot).

  4. 4

    Read the result

    Enter the three readings and your steps/mm. Within 0.3% needs no change. If an axis is clearly off, send the lines shown and print the cube again.

How to read the printed cube

The sizes tell you about the steps. The surface tells you about everything else. Look at the cube in good light from the side.

Axis too big or smallThe steps/mm of that axis do not match the real movement. Use the calculator: new steps = current steps × cube size ÷ measured size.
Wider at the bottom edgeElephant foot: the first layers are squashed. Raise the nozzle a little (Z offset) or lower the bed temperature for the first layers. Do not change steps for this.
Ripples behind the lettersRinging (ghosting): the print head shakes after a corner. Lower the speed or acceleration, or tighten the belts and frame.
Stepped corners or a shifted layerA layer shift: a skipped step or a catch. Check belt tension, pulleys and cable drag, and lower the speed.
Regular bands up the sidesZ wobble or banding: a bent lead screw, a loose coupler or an uneven Z axis. Check that the Z rod is straight and the nut can move freely.
Rough or bulging sidesOver-extrusion: calibrate e-steps and the flow rate. It also makes the cube measure larger than it should.

What a calibration cube checks

A calibration cube is a simple shape with known sizes, so any error in the print shows up as a difference you can measure. A 20 mm cube that measures 20.4 mm on X means the X axis is moving about 2% too far, and the steps per millimetre for that axis can be corrected with one line of G-code.

The letters X, Y and Z are there so you always know which side you are measuring. On this cube, X is on the front face, Y on the right and Z on the left. Print it in the same orientation each time, flat on the bed, and measure the same places.

The cube also works as a quick health check. The surface shows ringing, elephant foot, layer shifts and Z banding, and a sample print every few months tells you whether the machine has drifted.

Measuring and correcting the steps

Use digital calipers and measure the middle of each face, not the corners. Take the reading twice and use the average. Rough or flared edges can add a few hundredths of a millimetre, so ignore differences under about 0.3%.

To correct an axis, divide the cube size by the measured size and multiply by the steps/mm the printer uses now. For example, a 20 mm cube that measures 20.4 mm with 80 steps/mm gives 80 × 20 ÷ 20.4 = 78.43 steps/mm. The calculator above does this for all three axes and writes the Marlin line.

Read your current values first with M503 in a terminal, and look for the M92 line. After sending the new numbers, save them with M500 and print the cube again to confirm. If the same axis is still wrong, the problem is probably not the steps: check belt tension and pulley grub screws. For the extruder, use the e-steps calculator instead, and for sizes that only differ on small holes and pins, use the tolerance test.

Calibrated? Print something from your own idea

With the sizes right, turn a picture or a few words into a model you can print.

More calibration tools

Calibration cube FAQ

A small cube of a known size, usually 20 mm, that you print and then measure. If the printed sizes differ from the model, the printer is moving too far or not far enough on that axis, and you can correct it.
Any size from 15 to 30 mm works well. A bigger cube makes the error easier to measure, because the same error in percent is a larger number of millimetres. This generator makes 10 to 50 mm.
Measure each axis, then new steps/mm = current steps/mm × cube size ÷ measured size. Enter your readings and current steps above and the calculator gives the new values and an M92 line for Marlin.
Within about 0.1 to 0.2 mm on a 20 mm cube is a good result for most printers, which is roughly 0.5 to 1%. The calculator calls an axis "already right" when it is within 0.3% of the model size.
Engraved letters keep the sides flat, so the measurement is not affected. Raised letters add a little to the face they sit on, so measure beside them. Both are the same size on the model.
This is elephant foot: the first layers are squashed outward. It is not a steps problem, so measure higher up the cube and fix the first layer with the Z offset or the bed temperature.
The cube does. The M92 line is Marlin-style. In Klipper, the same percentage changes rotation_distance instead: multiply it by measured size ÷ cube size, because it works the other way round.
No. The model is built in your browser and downloaded straight to your device. It is free, with no signup and no upload.

The calculator is plain arithmetic from the numbers you type. Check your own values with M503 before sending anything, keep a note of the old numbers, and stay clear of the hot nozzle when printing and measuring.