zlim
Sign inGet started
Compression

Compress GLB files by 70–80%

Zlim compresses GLB files by 70–80% by Draco/meshopt-compressing and quantizing geometry, transcoding textures to KTX2, and de-duplicating data — producing a smaller GLB that looks identical and ships faster to web, AR, and game runtimes.

Get an API key Read the docs

What makes a GLB big — and what Zlim does about it

GLB size comes from two places: geometry buffers (vertex positions, normals, UVs, indices) and textures. Most oversized GLBs are heavy on both — uncompressed vertex data and PNG/JPEG textures that balloon in GPU memory.

Zlim compresses the geometry with Draco or meshopt plus vertex quantization, and transcodes textures to KTX2 (Basis Universal) so they stay compressed on the GPU. It also de-duplicates repeated meshes, materials, and accessors.

Measured, not approximate

Every job reports input bytes, output bytes, and the reduction percentage, so the compression is verifiable. Re-running the same file with the same profile yields the same result — useful in CI and asset pipelines.

bash
zlim optimize model.glb       # → model.glb (recompressed, ~76% smaller)

FAQ

Will compressing the GLB change how it looks?

No perceptible change. Compression and bounded quantization preserve the visual result; the savings are in encoding, not visible detail.

Do compressed GLBs need a special loader?

Draco geometry and KTX2 textures need their decoders at runtime, which mainstream viewers (model-viewer, three.js, Babylon) include. Use meshopt if you prefer a lighter-weight decode.

Compress your GLB now

Start free — 25 optimizations a month. No card required.

Get an API key
Related
FBX to GLBOBJ to GLBOptimize glTFDraco compressionKTX2 texturesReduce poly countOptimize for webOptimize for ARAPI & CLI docs