GLB, STL or OBJ: which 3D format to use
Three formats cover almost everything, and they are not interchangeable — each one throws away what it was designed not to need.
The question that decides it
Going to a 3D printer, use STL. Going to a browser, a phone or an AR viewer, use GLB. Going to another 3D application, use OBJ or GLB depending on how old that application is.
That is the whole decision. What follows is why, and what each one costs you.
STL
A list of triangles and nothing else. No colour, no materials, no textures, no unit, no scene structure — just the surface. That sounds impoverished until you remember what a slicer does: it cuts a shape into layers, and everything else would be dead weight.
Universal in printing, and the reason files stay so simple. Its blind spot is that it stores no unit, which is where a converted model ends up a thousand times too small.
GLB and glTF
The web's format, and the modern one. Geometry, materials, textures, animation, cameras and a whole scene graph in a single file — GLB being the binary version, glTF the JSON one with assets alongside. Browsers, AR viewers and game engines read it directly.
It also defines its units, in metres, which makes it the only one of the three that is unambiguous about size. Use it for anything that will be looked at rather than printed.
OBJ
The old lingua franca. Plain text, understood by essentially every 3D application written in the last thirty years, and the safe choice when you do not know what the recipient runs.
Its weakness is that it splits itself across files: geometry in the .obj, materials in a companion .mtl, textures as separate images again. Send only the .obj and the model arrives correct and grey.
What survives a conversion
- Geometry always survives. Vertices, faces and normals carry across between all three intact.
- Materials and textures survive into GLB, partially into OBJ, and never into STL.
- Animation survives only in glTF and GLB. Converting an animated model to STL leaves you the first frame.
- Scene structure — named parts, hierarchy — survives in GLB, is flattened in OBJ, and is gone entirely in STL.
Convert away from the richest format last. Going GLB to STL and back does not restore the colours, because the STL step already discarded them.
A note on weight
For the web, triangle count matters more than format. A GLB carrying two hundred thousand triangles will be slow on a phone whatever you do to the container. Reduce the polygons first, then pick the format — and expect a well-reduced model to look identical at a fraction of the size.