STL vs 3MF: which file format should you use for 3D printing?
Every slicer opens both, so why does SpeakCAD offer STL and 3MF? Because they carry different information, and the right choice depends on what you do with the file next.What an STL file contains
STL (1987) is a list of triangles. Nothing else: no units, no colours, no names, no metadata. It is the lowest common denominator of 3D printing, which is why every tool on earth reads it. The unit is a convention (millimetres for 3D printing), and files can be ASCII or binary; binary is ten times smaller.
What a 3MF file contains
3MF (2015) is a zip package with an XML model inside. It stores the mesh as indexed vertices and triangles (smaller and cleaner than STL), plus units, object names, colours and materials, and optionally slicer settings and multiple objects with positions. PrusaSlicer, Bambu Studio and OrcaSlicer use it as their native project format.
Comparison
| STL | 3MF | |
|---|---|---|
| Units | Not stored (assumed mm) | Stored explicitly |
| File size | Larger (binary), huge (ASCII) | Smaller (zipped, indexed) |
| Object names | No | Yes |
| Multiple objects | Merged into one soup | Separate, positioned |
| Colours / materials | No | Yes |
| Compatibility | Universal | All modern slicers, most CAD |
| Repair needed | Often, from sloppy exporters | Rarely |
When to choose STL
Choose STL when you need to feed a tool that only reads STL (older mesh utilities, some online services, OpenSCAD's import()), or when you want the plainest possible exchange format.
When to choose 3MF
Choose 3MF for everything else. The unit is unambiguous, the file is smaller, the model keeps its name in your slicer's object list, and multi-part layouts stay as separate objects you can arrange or print individually.
What SpeakCAD exports
Both formats are generated from the same manifold mesh, so geometry is identical. The 3MF carries the model title and millimetre unit; the STL is binary. Downloading both for the same design costs a single credit.