Compress GLB Online
Loading sample model…
Drag to orbit · wheel/pinch to zoom · right-drag/two fingers or arrow keys to pan. Before and after share the same camera. Lighting is a simple preview; check the result in its target viewer too.
Original model and embedded textures
| Texture | Dimensions | Size | Use |
|---|
Geometry and triangle count are preserved. Only oversized textures are resized; PNG transparency and JPEG/PNG formats are retained. Normal/metallic/roughness/occlusion maps stay unchanged by default. If output grows, the original is kept. File size reduction depends on the model.
Supported files and limits
One scene, static triangle meshes, embedded PNG/JPEG. Supported extensions: KHR_materials_unlit, KHR_texture_transform, KHR_materials_emissive_strength. Animations, skins, morph targets, external resources, VRM, Draco, KTX2, meshopt and other extensions are rejected. Up to 2 million triangles, 64 images, 8192px per side / 32 million pixels per image, 128 million image pixels total. Recent browsers with OffscreenCanvas and WebGL are recommended.
Shrink an oversized GLB for a website or 3D preview without opening a full 3D editor. Inspect embedded image sizes, set a texture resolution limit and compare the result from the same camera angle. This free browser tool preserves mesh geometry, keeps JPEG/PNG formats and exports a self-contained GLB without uploading your model.
How to use
- Choose a static GLB containing its own buffers and PNG/JPEG images.
- Review triangle count and texture sizes. Choose a maximum texture edge and JPEG quality; optionally include normal and material maps.
- Run compression. Switch between before and after to check the result with the same camera position.
- Save the GLB. If no smaller result is produced, the tool keeps the original file.
FAQ
Does it reduce polygon count?
No. This version reduces embedded texture dimensions and retains mesh geometry and triangle count. It is most useful for models where oversized images account for a large part of the file.
Does it change materials or transparency?
PNG stays PNG with transparency, and JPEG stays JPEG. Normal, metallic, roughness and occlusion maps are protected by default. You can opt into resizing them, which may affect surface detail. Images already within the selected limit are not reencoded.
Which GLB files are supported?
Self-contained GLB 2.0 with one scene, static triangle meshes and PNG/JPEG textures. Supported extensions are KHR_materials_unlit, KHR_texture_transform and KHR_materials_emissive_strength. Animations, skins, morphs, external URIs and other extensions including VRM, Draco, KTX2 and meshopt are rejected instead of silently dropped.
What are the limits and expected savings?
Up to 100 MB, 2 million triangles, 64 images, 8192 pixels per image side, 32 million pixels per image and 128 million image pixels total. Savings depend on the original images; some files cannot be reduced. When output would be larger, the original is kept.
Is the model uploaded or stored?
No. Parsing, texture resizing, 3D viewing and GLB writing happen in your browser. Only your resolution and quality preferences are saved.