Convert STL to 3MF
Convert STL to 3MF in your browser, with the unit recorded. An STL has no unit, so you choose one before the 3MF is written. Nothing is uploaded.
Set units or change the size of your model. Your file stays in your browser.
Supported output and limits
Supported output
- Mesh data exported from the parsed input
- An output unit declaration in millimetres
- Supported flat part colours
Limits and checks
- Rounding can change positions and topology; watertightness is not guaranteed
- Texture images, UV coordinates, animation and rigs are not exported
- Per-vertex colour variation is not exported
- Preparation exports bake scene transforms into each mesh instance; original hierarchy and shared instancing are not preserved
- Point geometry is unsupported by this writer
↺ the reverse: 3MF → STL · about .stl · about .3mf · just view it instead
When to convert STL to 3MF
Record an explicit output unit for an STL mesh. Confirm the intended input unit first; converting the file cannot recover that missing information.
Set the unit, then export
An STL cannot say whether its numbers are millimetres or inches, so this page will not write a 3MF until you have assigned a unit. It does not guess for you: the unit in the 3MF is the one you chose. Exporting without one stops with "Assign a unit before exporting 3MF; a unit must not be guessed."
- Open the workbench and choose your STL. Its size is listed in model units and its unit as not recorded.
- In Size and units, choose Interpret coordinates as a unit, pick the unit your numbers are in (millimetres, inches, centimetres, metres, micrometres or feet) and press Preview size change. A part designed in inches and exported with inch coordinates is assigned inches. No coordinate changes.
- Press Apply preview, leave the output format on 3MF and press Verify and export.
The 3MF records millimetres. If you assigned inches, every coordinate is multiplied by 25.4 on the way out. The file is then read back and compared with the model in memory before it is offered: triangle count, dimensions, coordinates and topology. A file that fails the comparison is not offered.
The other operations need a unit to exist first. Convert units, keep physical size re-expresses the part in another unit and stops with a message while none is set. Resize by a uniform factor and Resize to one target dimension change the size with proportions locked, and do not assign a unit.
What the 3MF holds
The triangles and a unit of millimetres. It holds no texture images or animation, and it is not a slicer project: printer profiles, supports and plate layout are set in your slicer.
What to check afterwards
Open the 3MF in your slicer and confirm one dimension you know. If everything is 25.4 times too large or too small, the STL was in inches and millimetres was chosen, or the other way round. Assign the other unit the same way and export again.
Availability and file handling
This page uses the unit and scale preparation tool. Its limits are 25 MiB, 200,000 triangles and 1,000,000 vertices. Worker operations stop after 45 seconds and can be cancelled. Files stay in this browser; there is no hosted fallback. Preparation exports bake scene transforms into mesh positions and check coordinates, dimensions and topology after readback. These checks do not establish manufacturing suitability.
What this implementation exports
- Mesh data exported from the parsed input
- An output unit declaration in millimetres
- Supported flat part colours
What needs checking
- Rounding can change positions and topology; watertightness is not guaranteed
- Texture images, UV coordinates, animation and rigs are not exported
- Per-vertex colour variation is not exported
- Preparation exports bake scene transforms into each mesh instance; original hierarchy and shared instancing are not preserved
- Point geometry is unsupported by this writer
Check the import warnings before export. A readable file may still contain properties or objects that this reader does not support.
Size and units
Check one known dimension after opening the output in its destination application. A one-inch length is 25.4 millimetres; interpreting a coordinate value of 1 as millimetres makes that length 25.4 times smaller. Assigning units to a unitless file requires a known reference or information from its author.
What the test result establishes
The recorded core matrix checked this pair against 9 sample files on 2026-09-07. Those fixture results do not guarantee success for every file, prove manufacturing suitability, or establish a public route. Output readback failures must remain visible; a file being parseable does not prove equivalent geometry.
Keep the source
Keep the original STL file. Exporting it as 3MF does not make the process reversible: a later conversion cannot recover information omitted by a reader or writer. For an existing model, compare dimensions, components and any required colours before replacing a working file.