Convert GLB to STL
A GLB is a whole scene: several meshes, materials, textures, sometimes animation. An STL is one body of triangles. This tool flattens the first into the second in your browser, and gets the scale right on the way.
Drag a 3D file here, or.
This page is set up for GLB files. Other formats we can read work here too.
The file is read on your own computer. It is never uploaded.
Your file is read by your own browser and never sent to a server. There is no upload, no account and no copy of your model anywhere but on your computer.
Scale, in the other direction
glTF measures in metres. Slicers read STL as millimetres. A model that goes straight across arrives one thousand times too small — a few hundredths of a millimetre wide, which most slicers show as a dot or reject outright.
This page defaults to reading metres and writing millimetres. Check the width, depth and height shown next to the 3D view before you download: if the numbers match the object you expected, the scale is right.
Everything becomes one object
A GLB scene can hold dozens of meshes, each in its own place in the scene, sometimes nested several levels deep. Each mesh is moved into its true position in the world first, so a part that sat ten centimetres away in the scene is written ten centimetres away in the STL.
All of them then become a single body, because that is what STL holds. If the pieces are not actually touching, you will get several loose shells in one file. The measurements panel says how many separate pieces there are, which is worth checking before printing.
What a printer cannot use
Textures, materials and colours are all dropped. So are animations, skinning and cameras. None of it can be printed and none of it fits in an STL.
Web models are often built to look right rather than to be solid: single-sided walls with no thickness, surfaces that overlap, meshes that do not close. The open-edge count beside the 3D view tells you whether what you have is a real solid or a shell that only looks like one.
An animated model arrives in its rest pose
If the GLB has animation, the shape written to the STL is the pose the mesh was modelled in, not the pose you happened to be looking at. That is not a choice this tool makes — it is where the vertices actually are in the file. Animation in glTF is a set of instructions for moving them, applied by the viewer at playback, and the stored mesh is the starting point those instructions move away from.
For a rigged character this is usually a T-pose or an A-pose: arms straight out, legs apart. If you wanted a particular frame, the pose has to be applied before the file gets here. In Blender, import the GLB, scrub to the frame you want, then use Object, Apply, Visual Geometry to Mesh, and export from there.
What survives, and what does not
Kept in the STL file
- The shape of every mesh, in its correct place in the scene
- A sensible size in millimetres
Lost on the way
- Textures, materials and colours
- Animation, skinning, cameras and lights
- The division into separate named objects
How to convert GLB to STL
Drop the .glb file in
Everything in the scene is read: every mesh, however deeply nested, moved into its true world position.
Set the input unit to metres and the output to millimetres
This is the default and it is the setting that matters most here. Straight across without it, the model is a thousand times too small and most slicers show it as a dot.
Check the number of separate pieces
It is shown beside the 3D view. A GLB scene is often several meshes that were never joined, and in an STL they become loose shells in one file. That is fine for a slicer as long as you expected it.
Check the open-edge count before you print
Web models are frequently hollow shells with no thickness, because a viewer never sees the inside. If this number is not zero, the model is not solid and a slicer will do something unpredictable with it.
Set the up axis to Z and download
glTF is Y-up, slicers want Z-up. Then download the binary STL. The textures, materials and animation are gone at this point, which is what STL means.
GLB and STL compared
| Property | GLB.glb | STL.stl |
|---|---|---|
| File contents | One binary file: a small header, the same JSON as glTF, then all the buffers and images. | Binary or plain text. Binary is an 80-byte header, a triangle count, then 50 bytes per triangle. |
| Geometry | Triangles, with skinning weights and animation channels alongside them. | Triangles only. Curves are approximated when the file is made, and cannot be recovered. |
| Units | Metres, fixed by the specification. | None. The file stores bare numbers, and every reader has to guess what they mean. |
| Colour and texture | Full physically based materials, with the texture images packed inside the file. | None. There is no place in the format for a colour, a material or a texture. |
| Separate objects | A scene graph of named nodes, each with its own position and rotation. | One body. Several parts written into one STL become one undivided lump of triangles. |
| Published by | The Khronos Group, 2015, as the single-file packaging of glTF. | 3D Systems, 1987, for the first stereolithography machines. |
| Written by | Blender, Sketchfab, Substance Painter, and every tool that ships models to the web. | Every CAD program and every slicer, as the common denominator. |
Questions
- The result is microscopic in my slicer. Why?
- The units were read as millimetres instead of metres. Set the input unit box to metres and the output to millimetres, then check the measurements shown next to the model.
- Can I keep the colours?
- Not in an STL. Convert to 3MF if you want colour that a printer can actually use, or keep the GLB if you only need it on screen.
- My model has holes when I slice it.
- Many web models are hollow shells rather than solids, because a viewer never sees the inside. The open-edge count on this page tells you before you waste a print. Filling those holes needs a repair tool such as Blender or Meshmixer.
- My model is in a T-pose, not the pose I saw. Why?
- Because that is the pose the mesh is actually stored in. Animation is applied by a viewer at playback and never changes the stored vertices. Apply the pose in Blender first if you need a specific frame.
Having it printed
If the part is larger than your bed, needs a material your printer cannot handle, or you do not have a printer, these will print it and post it to you. Work out what it would cost you first — the cost calculator on this site gives you a figure to compare against.
- JLC3DPCheapest for resin and nylon, slow shipping
- CraftcloudCompares dozens of printers at once, including local ones
- PCBWayMetal printing and CNC as well as plastic
These are ordinary links, not paid referrals — we earn nothing if you use them. The converter above is the same whether you do or not.
Where to go next
The other direction
Other things to do with a GLB file
Other ways to get a STL file
Related guides and tools
- Gridfinity generatorBins and baseplates, any size, built in the browser
- Turn text into an STLType a word and print it, without drawing anything
- Turn an image into an STLA photo or a logo, turned into something you can print
- Lithophane generatorA photo printed as thickness, lit from behind
- Repair an STL that will not sliceClose the holes and separate the bad edges so a slicer accepts it
- Convert BLEND to OBJGuide
- Convert BLEND to GLBGuide
- STL to G-codeGuide
- How to convert an STL file to G-codeGuide