S1
Textures
Every texture is decoded and re-encoded to WebP, per-role quality defaults with per-texture overrides where you need them.
In-browser · glTF / GLB optimizer
DRACO geometry compression and WebP textures, processed entirely in your browser. Your model never leaves your machine.
KHR_draco_mesh_compression · EXT_texture_webp
Drop a .glb or .gltf
or browse — self-contained .gltf works too
NASA/JPL-Caltech · public domain (CC0)
Processed locally — nothing is uploaded.
How it works
S1
Every texture is decoded and re-encoded to WebP, per-role quality defaults with per-texture overrides where you need them.
S2
Meshes are compressed with DRACO. Vertex count and shape are untouched — only the bytes they cost shrink.
S3
Compressed geometry and textures are repacked into one GLB, ready to download straight from the tab.
Privacy
There is no upload path in this codebase. Your file goes from disk to an ArrayBuffer, into a Web Worker, and back out as a downloadable blob — the network tab stays empty for the whole run.
This isn’t just a claim: the end-to-end test suite asserts zero non-local network requests during a full optimize run, on every build.
Credits
Demo model: Perseverance rover, NASA/JPL-Caltech — public domain (CC0). Code is MIT and open source, built on gltf-transform, DRACO and jSquash. Optimization happens in code; nothing here is hand-tuned per model.