GLTF → STL · FREE · NO UPLOAD
GLTF to STL Converter — Print Web & AI Models
Turn a .gltf or .glb (glTF 2.0) into a printable .stl right here in the browser. Works with Sketchfab, three.js, AR exports and AI generators. No upload — your model stays on your device.
What it does: converts GLTF/GLB (web 3D format, glTF 2.0) to printable STL. Bakes node transforms, flattens scene hierarchy, writes binary STL.
Why you need it: GLTF is the standard for web 3D (Sketchfab, three.js, AR). Slicers (PrusaSlicer, Bambu Studio, Cura) want STL or 3MF. Also covers AI-generated models from Meshy, Tripo, Luma that export GLTF.
How it works: three.js GLTFLoader parses the file, bakes transforms to world-space vertices, STLExporter writes binary STL at 50 bytes per triangle. All in this tab.
Conversion specs
| Input format | GLTF 2.0 / GLB (self-contained .gltf or binary .glb) |
| Output format | Binary STL (50 bytes per triangle) |
| Unit mapping | glTF meters → slicers read STL as mm (×1000 if needed) |
| Materials | Dropped — STL stores triangles only |
| Processing | 100% client-side via three.js GLTFLoader + STLExporter |
| Cost | Free, unlimited conversions, no account required |
From web model to print bed
glTF is the web's 3D format — Sketchfab, three.js, model-viewer and AR viewers all speak it. A slicer wants none of the extra data a glTF scene can carry: PBR materials, a node tree, cameras, lights, animations. STL stores triangles and nothing else. Converting GLTF or GLB to STL bakes every node transform into world-space vertices, flattens the hierarchy, and writes a binary STL at 50 bytes per triangle — the part that can actually sit on a print bed.
- Export or download the model as GLTF or GLB. From Sketchfab, three.js, or an AI generator (Meshy, Tripo, Luma), GLB is usually the one-file option and the most reliable drop. A .gltf that pulls in separate .bin files will not bring those buffers along in the browser.
- Drop the file on the drop zone above. Nothing is uploaded; the mesh is parsed in this tab. Wait for the preview to appear so you can confirm you have the right object and that the whole figure showed up, not a fragment of a multi-mesh scene.
- Check scale against the bounds readout under the preview. glTF's spec unit is meters. Slicers assume STL numbers are millimeters. A 50 mm figurine authored as 0.05 meters will show bounds around 0.05 in this viewer and will import into the slicer as 0.05 mm — a speck — unless you scale it by 1000 on the plate. If the bounds already read in the tens or hundreds of units, the exporter likely wrote millimeter-scale numbers and you can leave the size alone. Trust the numbers on this page, not a guess.
- Download the STL and open it in Bambu Studio, PrusaSlicer, Cura or OrcaSlicer. Treat it like any other mesh you would drop onto a plate: orient it, add supports if the overhangs need them, and slice.
- Web and AI meshes are often not watertight. If the slicer reports holes, non-manifold edges, or a failed slice, run its built-in repair on import. You can also check the file first on the STL repair page on this site, which reports open edges without sending the mesh anywhere.
That is the whole pipeline: export GLTF or GLB, convert here, download STL, open in the slicer. The only extra step worth doing every time is reading the bounds so the first print is the size you meant. Materials and animations never come along — they cannot — and that is the point of the conversion.
From Sketchfab, three.js or an AI generator to a slicer
A web model, AR asset or Meshy/Tripo download arrives as GLTF or GLB. Slicers — PrusaSlicer, Cura, Bambu Studio, OrcaSlicer — want a plain triangle mesh, and their common language is STL. This page is the bridge:
- Export or download your model as GLTF or GLB.
- Drop it above — the preview shows exactly what will be exported, with triangle count and size.
- Click Download STL and open the file in your slicer.
- If the size looks off by 1000×, scale in the slicer — glTF counts meters, slicers assume millimeters (details in the FAQ).
Prefer the GLB-named converter? That's the GLB to STL page. Going the other way for AR or web embeds? Use the STL to GLB converter. New to the format? What is a GLB file and GLB vs GLTF cover the container difference.
What survives the conversion
| In the GLTF / GLB | In the exported STL |
|---|---|
| Triangle geometry (all meshes) | Kept exactly, world transforms applied |
| Scene hierarchy & node transforms | Baked into the triangles; hierarchy flattened |
| Colors, materials, PBR textures | Dropped — STL cannot store them |
| Animations, cameras, lights | Dropped — meaningless for printing |
| Units (meters in glTF) | Numbers copied as-is; slicers read them as mm |
FAQ
GLTF vs GLB — does it matter which one I have?+
Same format, different packaging. GLB is the binary container — one file. GLTF is JSON plus separate buffers and textures. This tool accepts both .gltf and .glb. A .gltf that references external .bin or image files cannot bring those references along in a browser drop; if the preview is empty or untextured geometry is missing, re-export as a self-contained GLB from your tool.
Does it handle the unit trap?+
glTF's unit is the meter; most slicers assume STL files are millimeters. A 0.05-unit-tall model (5 cm) becomes a 0.05 mm STL under that assumption. Check the bounding-box readout under the preview: if it shows around 0.05 units, scale by 1000 in your slicer (or scale the source model). Many AI generators already export at mm scale, in which case no change is needed.
What happens to textures and materials?+
They are dropped — STL is geometry only. Colors, PBR maps, animations, cameras and lights cannot cross into a triangle mesh. Every mesh in the scene is transformed to world space and written into one binary STL. If you need color 3D printing, keep the GLTF/GLB or use 3MF; STL cannot carry that data.
Is my GLTF or GLB file uploaded anywhere?+
No. The converter parses the file with the three.js glTF loader inside this tab and re-encodes the triangles as binary STL, also locally. There is no upload endpoint. Load the page, disconnect from the internet, and the conversion still works.
Can I print an AI-generated model this way?+
Yes — this is a common use. Meshy, Tripo, Luma and similar generators export glTF (usually as GLB), but slicers want STL. Drop the file here, download the STL, and open it in your slicer. One caveat: AI-generated meshes are sometimes not watertight; if your slicer reports holes or non-manifold edges, run its built-in repair on import.
Does the converter merge multiple meshes?+
A glTF scene can hold many meshes; the exporter writes all of them into a single STL with node transforms baked, so what you see in the preview is what prints. It does not perform boolean union — overlapping shells stay overlapping shells, which most slicers handle fine.