Free online STL to 3MF converter
STL to 3MF — the conversion that adds something
Drop an .stl and download a .3mf, built in this tab with nothing uploaded. Almost every other conversion on this site costs you something; this one is the exception. The triangles go in as a loose pile with no declared scale and come out as an indexed mesh inside a zipped package that states millimetres outright, carries a colour, and is what every current slicer would rather be handed. It usually lands about a third of the size, too.
- 100% free
- No signup
- Unit stated
- Smaller file
- Nothing uploaded
Drag a file anywhere on this page to open it. F fits the view, W switches shading, G the grid, R spins it.
How to convert STL to 3MF
Three steps, and one number worth confirming.
Drop the .stl
Binary or ASCII, both open. The triangles are read, welded where they share a position, and rewritten as the indexed mesh 3MF uses — which is why the output is often a third the size of the STL that produced it.
Confirm the size is right in millimetres
This is the one decision the conversion makes on your behalf. An STL states no unit, so the numbers could be anything; 3MF must declare one, and millimetres is the printing convention. If the panel shows a size that is off by 25.4 the original was authored in inches, and the file needs scaling before it is worth wrapping.
Download the 3MF
A zip holding the model as XML, with the unit stated, one object, and a base colour attached to it. Every slicer written since 2016 opens it directly.
Technical specifications
| Reads | .stl — binary or ASCII |
|---|---|
| Writes | .3mf — core specification, zipped XML |
| Unit | Millimetres, stated outright in the file |
| Gained | A declared unit, a base colour, an indexed mesh, a smaller file |
| Not gained | Slicer settings, supports, modifiers — those are not geometry |
| Vertices | Welded where they coincide, which STL never does |
| File size | No fixed limit — past 100 MB you are told what it will cost this tab, then it opens |
Frequently asked questions
What does 3MF give me that STL does not?
A stated unit, a colour, objects that stay separate, and a format that cannot express a mesh half as ambiguously. STL is a list of loose triangles with no shared vertices and no declared scale, which is why the same file can arrive at the wrong size and why holes are so common in the wild. 3MF stores an indexed mesh inside a zipped XML package, states millimetres outright, and is what PrusaSlicer, Bambu Studio, Cura and Orca all prefer to be handed.
Does converting repair my mesh?
No, and no converter can honestly claim otherwise. Welding coincident vertices tidies the representation and can close seams that were only an artefact of STL storing every triangle separately, but a genuine hole stays a hole and a flipped normal stays flipped. The panel says whether the result is watertight; if it is not, the mesh needs actual repair, not a different container.
Why does the file come out smaller?
Two reasons compounding. STL repeats every vertex once per triangle it belongs to — a shared corner is written six or seven times — while 3MF stores each vertex once and refers to it by index. Then the whole XML is zipped. A third of the original size is typical, and much less than that for dense meshes.
Will my slicer definitely open it?
If it was released in the last several years, yes: this writes the 3MF core specification, which is the part every implementation reads. What it does not write is the vendor extensions — the painted supports, per-object print settings and modifier meshes that a slicer adds to its own project files. Those are settings rather than geometry, and they are not something a converter can invent.
Can I set a colour?
The object gets a base material with a colour, which is what makes it show up as a solid colour rather than default grey in a slicer that reads them. Per-triangle colour is a different feature of the format and needs a source that actually has it — a PLY from a scanner, for instance, carries colour per vertex, and converting that keeps the information alive.
Is the file uploaded?
No. The STL is parsed, the XML is built and the zip is assembled in this tab. Nothing crosses the network in either direction, which is the whole reason to prefer a converter that runs in the page over one that runs on somebody's server.
About the format that replaced STL, thirty years late
STL has outlived its own reasoning. It was written for one machine in 1987 and it shows: triangles listed one after another, each carrying three vertices in full because sharing them would have required an index, and a normal vector that most software now ignores and recomputes. There is no unit, no colour, no name, no notion of an object. Everything that has gone wrong with a printable file for three decades — arrived at the wrong scale, arrived with holes, arrived as one lump when it was four parts — traces back to what the format declines to record.
3MF is the industry's answer, published in 2015 by a consortium including Microsoft, HP, Autodesk and Ultimaker. It is a zip of XML, which sounds unglamorous and is exactly right: the mesh is indexed, the unit is declared, objects stay objects, colours and materials have a home, and a whole build plate can travel as one file. The main thing stopping it from replacing STL entirely is the same thing that keeps STL alive — everything, everywhere, already accepts STL.
So the honest advice is asymmetric. Send 3MF when you know the other end is a current slicer; keep an STL for anything older or unknown. If you are on the receiving end of a 3MF and need it flattened, that conversion is one page away, and the 3MF viewer will show you what a real one from a slicer contains.
Where the conversion happens
Every number on this page is worked out by JavaScript running in the tab you are reading it in. The model you open is read straight off your own disk — it is never uploaded, logged or kept, which is also why these tools carry on working after you disconnect from the network.
One clause specific to this page: building a zip is the kind of work sites usually push to a server, and that is precisely when a file leaves your control. Here the XML and the zip are both assembled in this tab, so the .3mf you download was never anywhere else.