Browser-local converter
3MF to OBJ converter
Convert a 3MF package into a Wavefront OBJ locally, for a 3D application rather than a slicer. Build transforms are applied, named objects survive as OBJ objects, and the base materials 3MF declares are written to an .mtl sidecar.
Drop your 3MF files here
STL, OBJ, PLY, GLB, glTF, 3MF, SVG and DXF. Nothing is uploaded: files are read and converted inside this tab. Checking what this device can handle...
Queue
No files yet. Drop models above, or use the file picker.
Output
Units
Size and placement
Repair and cleanup
These can change the shape, so they need a before-and-after review before export.
Inspection
Add a model to see its dimensions, mesh health and estimated volume.
What this 3MF to OBJ conversion does and does not do
- 3MF declares a unit and OBJ has none. The coordinates are written in the unit you select, and once they are in the OBJ nothing records what they mean, so note it down or keep the 3MF.
- Base materials and display colours are written to a companion .mtl. Keep the .obj and .mtl together, since OBJ links them by filename.
- The build section places objects with transforms, and components can nest. Those transforms are baked into the vertices so the shape matches, but the assembly structure is flattened to a flat list of OBJ objects.
- 3MF extensions beyond the core specification, including production, slice and beam-lattice data, are not interpreted.
- A 3MF is a ZIP archive and is treated as untrusted input: entry counts, declared sizes, compression ratios and entry paths are all checked before anything is decompressed.
Troubleshooting
The 3MF will not open
It must be a complete .3mf package, not the 3dmodel.model XML on its own. A hand-re-zipped archive is often missing its relationship part; re-export from the original tool.
Only part of the assembly appeared
Only objects referenced by a build item are placed, which is what the specification requires. If the 3MF declares objects but no build items, the workspace includes them all and tells you it did so.
The scale is wrong in my 3D application
OBJ carries no unit, so the importing tool guesses. The workspace shows the real dimensions in millimetres from the 3MF declaration; convert the unit before exporting if you need different numbers.
No colour after import
Load the .obj with the .mtl beside it. If the 3MF declared no base materials, there was no colour to carry and the workspace will have said so.
Questions
Why convert 3MF to OBJ?
Usually to get a print file into a modelling or rendering tool. 3MF is aimed at manufacturing, and a lot of 3D software still treats OBJ as its lowest common denominator.
Is a 3MF from an unknown source safe to open here?
It is opened defensively. Zip bombs, path traversal, absurd entry counts and XML entity attacks are all refused before any expensive work happens, and nothing is written to your filesystem.
How do I know the OBJ matches the 3MF?
It is re-parsed after writing and its triangle count, mesh count and bounding box are compared against the source within a stated tolerance, shown next to the download.