Compress GLB

Resize and re-encode the textures, and cut the triangle count if the mesh is the problem. In your browser.

Textures first, because that is the cheapest win

A GLB is a mesh and a stack of images, and the images are almost always the part you can shrink for free. AI generators ship 2K and 4K maps by default — a croissant arrives wearing a 4096×4096 albedo. Resizing those to a sane maximum costs you nothing you can see at normal viewing distance, and it is the first thing this tool does.

A worked example, run on this page: a Meshy croissant, 18.4 MB. Its textures are 7.8 MB of that, and a 1024 px cap takes them to 421 KB — a 95% cut, from a step with no visible cost. The file lands at 11.0 MB.

Which is also the honest half of the story: the remaining 10.6 MB is mesh. That model carries 385,872 triangles, and no amount of texture compression touches them. When the geometry is the weight — and on AI-generated models it very often is — you have to cut triangles too, which is what the checkbox is for.

It stays a valid glTF

Textures are written back as JPEG, or PNG where the image genuinely uses its alpha channel. Both are glTF core image types, so the output opens in Blender, Unity, Godot, three.js and every viewer that reads GLB.

WebP would be roughly another 30% smaller, but it requires the EXT_texture_webp extension to be declared, and a file that omits it is invalid — it would open here and fail in Blender. A smaller file that does not load is not a smaller file.

When to also cut triangles

The checkbox halves the triangle count on the way through. Turn it on when the model is dense — anything from an AI generator, anything over ~100k triangles, anything headed for the web or a phone.

Leave it off when the mesh is already at its budget and you only want the download to shrink, or when the model is a hero asset whose silhouette you are not willing to touch at all.

If geometry is your actual problem, the dedicated polygon reducer gives you the full range instead of a fixed 50%, and shows you what each setting cost.

How to use it

  1. Drop your .glb, .gltf or .fbx into the box above.
  2. Choose a maximum texture size. 1024 px is the right default for almost everything that is not a hero asset.
  3. Press Compress. Every texture is resized and re-encoded in your browser.
  4. Compare the before and after size, then download.

Questions

How much smaller will my file get?

It depends on what your file is made of. Textures typically lose 80–95% of their weight at a 1024 px cap; how much that moves the whole file depends on how much of it was texture. On a 385k-triangle AI model the mesh can outweigh the textures, so tick “also halve the triangle count” to move the number. A model with no textures loses nothing, and the tool will say so rather than pretend.

Does this use Draco or Meshopt compression?

No — those compress mesh data, which is rarely where the weight is, and they require the decoder to be available at load time. This tool attacks the textures and leaves you with a plain, portable GLB.

Will the textures look worse?

At a 1024 px cap and Balanced quality, not in any way you will notice in a game or a web viewer. If the model is a hero asset that fills the screen, use 2048 px and High.

Is anything uploaded?

No. Decoding, resizing and re-encoding all happen in your browser tab.

The other tools