3MF vs STL: which to use for 3D printing

You are exporting a part to print and the dialog offers both.

3MF was designed to replace STL and is better in every technical respect. STL remains the most widely used 3D printing format in the world. Both of those statements are true, and the gap between them is the whole story.

Short answer. Use 3MF when your printer, slicer or bureau accepts it: it records units, colour, materials and separate objects, and it is compressed. Use STL when the other side asks for it, or for a single simple part you print yourself. The geometry is identical, since both are triangle meshes; STL's missing units are why parts arrive 25.4 times too big or too small.

Updated 2026-10-01 · first published 2026-09-08

What each format records

STL3MF
GeometryTrianglesTriangles
UnitsNone — the classic trapRecorded explicitly
Colour and materialsNoYes
Multiple objectsFused into one soupKept separate, each with a transform
CompressionNoneZipped — typically much smaller
Print settingsNoYes, as an extension slicers use
StructureA flat list of trianglesXML in a zip container
Universal supportEverywhere, without exceptionEvery current slicer, most current tools

The geometry row is the one to notice: as a shape, they are equivalent. Both store a triangle mesh with the same fidelity, and converting between them changes nothing about the surface. Everything else in the table is about what the container can carry around that shape.

The units problem, which is not theoretical

An STL contains numbers with no statement of what they mean. A vertex at 25.4 might be 25.4 millimetres or 25.4 inches, and the file does not say. Every tool therefore assumes, and different tools assume differently.

This is why a part sometimes arrives at 25.4 times its intended size, or at one twenty-fifth of it. Nothing went wrong in the export; the exporter worked in inches and the slicer assumed millimetres. 3MF records the unit in the file, and the problem disappears entirely.

If you must send STL, say the unit in the message. "Dimensions in mm" in an email has prevented more reprints than any feature in any slicer.

When to use which

Use 3MF when you control both ends
Your own printer, your own slicer, a bureau that lists 3MF. Units, colour and separate objects all survive, and the file is smaller.
Use 3MF for multi-part and multi-colour prints
This is where the difference stops being theoretical. Several objects stay several objects with their own positions, instead of merging into one mesh you then have to separate by hand.
Use STL when the other side asks for it
Older machines, some bureau upload forms, some mesh tools and a great deal of older documentation assume STL. It is not worth arguing about — the geometry is the same.
Use STL for a single simple part you are printing yourself
Nothing is gained by ceremony. One object, one material, millimetres, done.
No account needed
Drop an STL, 3MF or OBJConvert between mesh formats · no account needed

On our servers. No account: deleted within 24 hours. Signed in: kept until you delete them. Never shared or used for training.

Why STL survives

STL dates from 1987 and is about as simple as a 3D format can be, which is precisely its advantage. It can be written in twenty lines of code, parsed in twenty more, and there is nothing in it to get wrong. That simplicity means every piece of software ever written for 3D printing reads it, including firmware, hobby projects, ancient machines and scripts nobody maintains.

A format with universal support has enormous momentum even when a better one exists. 3MF is winning slowly — the major slicers now use it as their native project format, which is doing more for adoption than a decade of advocacy did — but STL will be accepted everywhere for a long time yet.

Coming from CAD

If you are starting from a solid — a SOLIDWORKS part, a STEP, a Parasolid file — you are choosing a tessellation, not just a container. The exact surfaces get triangulated on the way out, and how finely is your decision. Too coarse and a cylinder prints with visible flats; too fine and you get a huge file for no benefit the printer can resolve.

Converting here meshes each edge as a polyline before triangulating the faces to those samples, so hole silhouettes and chamfers keep their outlines rather than being cut across by an indifferent grid. The default tolerance is a 0.02 mm chord deviation, which is finer than any consumer printer can reproduce.

Questions5 answered
Is 3MF better than STL?
Technically yes, in every respect except universal support. 3MF records units, colour, materials and separate objects, and is compressed. The geometry itself is identical — both store a triangle mesh — so the choice is about what travels alongside the shape.
Does converting 3MF to STL lose quality?
Not geometrically. The triangles are unchanged, so the shape and dimensions are identical. What is lost is everything STL cannot carry: units, colour, materials and object separation. Several objects in a 3MF become one merged mesh in an STL.
Why is my STL the wrong size?
Because STL records no unit. The exporter worked in one unit and the importer assumed another — inches to millimetres is a factor of 25.4, which is the usual symptom. Set the unit on import, or use 3MF, which stores it in the file.
Can all slicers open 3MF?
Every current one — Bambu Studio, PrusaSlicer, Cura, Orca and others read it, and several use it as their own project format. Very old software and some bureau upload forms still want STL.
Should I export STL or 3MF from CAD?
3MF if the destination accepts it, because units and object structure survive. Either way the more consequential setting is the tessellation tolerance, which decides whether curved surfaces print smooth.
NextRelated