📏 Laser troubleshooting · 7 min read

Why your SVG imports at the wrong size in LightBurn, xTool and Glowforge

By meshcast.app · Updated November 2026

This guide was drafted with AI assistance.

Quick answer

An SVG has no built-in physical size unless it says so. Software that finds plain units assumes pixels at 96 DPI (1 px is about 0.2646 mm), while some older files assume 72 or 90 DPI. Fix it by writing width and height in mm with a matching viewBox, then measure the imported design and cut a test on scrap. Meshcast laser tool exports declare millimetres.

Designs built in real millimetres, exported as SVG or DXF. Free to preview.

Open the laser tools →

Why SVG size goes wrong

An SVG is a drawing described in abstract units, not a file with a built-in physical size. Unless the file clearly says how big one unit is, the program that opens it has to guess. Different programs guess differently, so the same file can arrive 25 percent too small in one app and exactly right in another. Laser cutters make this expensive, because a wrong size means a wasted sheet.

The good news is that the cause is nearly always one of four things: pixel units, a DPI assumption, a missing width and height, or a viewBox that does not match the declared size. All four are easy to check.

Pixels versus millimetres

Inside an SVG, drawing coordinates are in user units. By default a user unit equals one CSS pixel, and a CSS pixel is defined as 1/96 of an inch. That works out as follows:

If a design is 100 mm wide and the file stores that as 100 plain units, then a program that treats units as pixels at 96 DPI shows it as only about 26.5 mm. That is the classic "my SVG is tiny" problem. In the opposite case, a design built in pixels and read as millimetres arrives nearly four times too large.

The 72, 90 and 96 DPI assumptions

When an SVG gives sizes in unitless numbers, software falls back on a DPI assumption to convert to physical size. The three you will meet most often are:

AssumptionWhere it comes from1 unit equals
72 DPIPrint and PostScript points, older Adobe Illustrator exportsabout 0.3528 mm
90 DPIOlder Inkscape versionsabout 0.2822 mm
96 DPIThe CSS standard, current Inkscape and most browsersabout 0.2646 mm

Because the ratios are 72:90:96, a file can come out at 75 percent of its intended size (drawn for 72 DPI, read as 96), about 94 percent (drawn for 90, read as 96), or 133 percent (drawn for 96, read as 72), depending on which pair of assumptions meet. If a part is off by exactly one of these ratios, you have found your culprit: the file was drawn at one DPI and read at another.

Laser programs such as LightBurn, xTool Creative Space and the Glowforge app each have their own handling, and the details change between versions. Treat the table above as the reasoning tool, then check your own version of the software.

width, height and viewBox

The reliable fix is to declare the size explicitly. An SVG root element has three attributes that decide size:

The best arrangement is for width and height to carry millimetre units, and for the viewBox to use the same numbers in plain units. A 100 by 60 mm part then looks like this in the header:

width="100mm" height="60mm" viewBox="0 0 100 60"

Now one drawing unit is exactly one millimetre, and any program that respects the width and height will open it at true size. Problems appear when:

How to check a file before you cut

  1. Open the file in a text editor. SVG is plain text. Look at the first <svg tag and read the width, height and viewBox.
  2. Check the units. Does width end in mm, in, px or nothing at all?
  3. Measure after import. In your laser software, select the whole design and read its width and height. Compare with the intended size, using a ruler on the screen readout or a known feature such as a hole diameter.
  4. Test with a calibration square. Draw a 50 by 50 mm square, import and check. Once you know how your software treats files, you can trust it for the rest.
  5. Cut on scrap or cardboard first. A 30-second test beats a ruined sheet. Measure the physical result with calipers.

If the file is the wrong size by a ratio from the DPI table, you can often scale it by that percentage in the laser software, then check again. Better still, fix the root cause so every future file behaves.

Fixing the problem at the source

In your laser software

Many programs have an import or preferences setting for the DPI used when reading unitless SVGs. Match it to the program that made the file. Look for options named something like "SVG import DPI" or "scale on import", which differ between versions.

In your design program

In Inkscape, set the document units to millimetres in Document Properties and make sure the scale is 1 user unit per mm. In Illustrator, set the document units to millimetres before exporting and check the export options. In Affinity and CorelDRAW, export with explicit physical units. After exporting, open the result in a text editor and confirm the header as above.

Converted images

A traced image has no real-world size at all, because a bitmap is only pixels. After converting with a tool such as image to SVG, always resize the vector to the physical dimension you want before sending it to the laser.

How Meshcast files declare size

The tools on Meshcast laser design in real millimetres. Their SVG exports state the size in millimetres in the header and use a matching viewBox, so one drawing unit is one millimetre and the file opens at true size in software that respects width and height. Cut lines are red (#ff0000) and engrave lines are blue (#0000ff). The DXF export uses separate CUT and ENGRAVE layers in millimetres.

Whichever tool made it, the rule stays the same: measure the imported design before you cut. If you work from a sliced 3D model, where layers must match the real material thickness, it matters even more. For help choosing between the formats, see SVG vs DXF for laser cutting, and for how colours map to operations, laser cut vs score vs engrave.

Size correct but parts do not fit? That is probably not a units problem. Laser beams remove a thin strip of material, so joints need compensation. See laser kerf: what it is and how to measure it.

Start from files that declare millimetres

Design in real millimetres and export SVG or DXF ready for your laser software.

Open the laser tools →

FAQ

Why does my SVG import tiny into LightBurn?

The file probably uses plain units that the software reads as pixels at 96 DPI, so 100 units becomes about 26.5 mm. Declare millimetres in the width and height, or scale the import to match, then measure it again.

What DPI should I use for SVG laser files?

Modern browsers, Inkscape and the CSS standard use 96 DPI, so 1 px is 1/96 inch. Older Illustrator files often assume 72 DPI and older Inkscape assumed 90. The best fix is to avoid guessing by writing the size in millimetres.

What should the width, height and viewBox of a laser SVG be?

Use millimetre units on width and height, and a viewBox with the same numbers in plain units. For a 100 by 60 mm part: width 100mm, height 60mm, viewBox 0 0 100 60. One drawing unit then equals one millimetre.

How can I check an SVG size before cutting?

Open the file in a text editor and read the svg tag, then import it and measure the selected design in your laser software. Draw a 50 mm test square if you are unsure how your software behaves, and cut a test on scrap.

Do Meshcast SVG files open at the right size?

They declare millimetres in the header with a matching viewBox, so they open at true size in software that respects those attributes. Still measure on import, since each program has its own settings.

Made by meshcast.app. More laser tools and guides live on the laser cutter tools hub.