3D Printer Bed Mesh Visualizer

Turn your printer's mesh measurements into a 3D surface. Inspect each point and compare your next adjustment.

Marlin G29 Prusa G81 Klipper matrices CSV & JSON

Your meshes stay in this browser
Mesh data #1
Ready for your data

Paste a grid or drop a file. Ctrl/⌘ + Enter to visualize.

Measurement context Optional

Record the conditions for this measurement. These fields do not change your mesh or its statistics.

Date and time are recorded as local time, without timezone conversion. A mesh file's dates and the current date are never used to infer when it was measured.

Settings

Dimensions refer to the sampled area. Reference and orientation affect the plot; statistics and CSV use original measurements.

Output

Ready to visualize

Paste a mesh and select Visualize, or try an example.
Drag to rotate · toolbar to zoom

Statistics

Original heights · mm
Mean height
—
Minimum
—
Maximum
—
Std. deviation
—

How to use Bed Mesh

Read the guides ↗
01

Get your mesh

Copy the numeric grid from your printer console: Marlin's G29 output, Prusa's G81 output, or a Klipper mesh matrix.

02

See the surface

Paste the output or import a text, CSV, or JSON file. Switch between a 3D surface and a top-down heatmap to inspect each measured point.

03

Compare your changes

Add another mesh after an adjustment. Match the scales for a consistent comparison, then save a CSV or a chart image.

Which data formats can I use?

Paste the full console grid, including numbered rows and columns. Plain rectangular matrices, comma-separated values, and JSON arrays of numeric rows also work. Measurements should be in millimetres. Missing points and inconsistent row lengths need to be corrected before plotting.

The example is a simulated mesh so you can explore the controls without connecting a printer. Bed Mesh does not send commands to your printer.

How should I read the chart?

Blue marks lower measurements; warm colours mark higher measurements. The range is the difference between the highest and lowest point. Mean height is the signed average, while standard deviation describes the spread around that average.

Probe indices follow the order of your pasted grid. Use Flip X or Flip Y to match your printer's orientation. Optional width and depth describe the probed area, not necessarily the entire print bed. The 3D view exaggerates height to make variation visible; hover a point for its measured value.

About Bed Mesh

Bed Mesh is a free, open-source project by Rahyan Saouab, made to help with 3D printer bed levelling. Your measurements are processed in your browser, with no account required.

Mesh variation is one part of a good first layer. Probe accuracy, nozzle offset, temperature, and your printer's mechanics matter too.