UltKit

OBJ to GLB Converter

Pack an OBJ, its .mtl file and every texture image into one GLB that loads in a browser, a product page or an AR viewer. No more broken links between files when you upload or share the model.

3D Model Converter

or drop STL, OBJ, MTL … files here ·

Max 95 MB per file· Up to 20 files· Deleted after 30 minutes

Output

Files are processed on our servers and deleted after 30 minutes.

How to use this tool

  1. 1

    Upload the OBJ with its files

    Zip the .obj, .mtl and texture folder together and upload the ZIP, or upload the .obj alone for an untextured model. Up to 20 files, 95 MB each.

  2. 2

    Confirm the scale

    glTF works in meters. Model units starts at m, which matches OBJ exports from Blender; choose mm under Advanced settings if the OBJ came from CAD or a 3D-printing tool.

  3. 3

    Convert to GLB

    Press Convert to GLB and drop the file into a viewer such as model-viewer, three.js editor or Windows 3D Viewer to check it.

An OBJ is a folder of files that break when one goes missing; a GLB is the same model, materials and textures packed into a single file the web can load.

Textured OBJ

3+ files

model.obj · model.mtl · texture images

Nothing left to lose in transit

GLB result

1 file

mesh, materials and textures embedded

Why web and AR viewers want GLB instead of OBJ

The Khronos Group released glTF 2.0 in 2017 as a delivery format, and calls it the JPEG of 3D: compact, quick to load and meant for showing, not editing. It defines physically based materials with base color, metallic, roughness, normal and occlusion maps, fixes the scale at one unit per meter with Y pointing up, and stores geometry in buffers a GPU can use almost directly. GLB is its binary container, holding the JSON description, geometry and images in one file.

OBJ predates all of that. Its materials come from the MTL format of the early 1990s, designed for the shading models of that era, and textures are separate files found by relative path. Upload only the .obj to a website and the model arrives gray; move the .mtl and the textures go missing. That is why Google's model-viewer, three.js, Babylon.js and Android's Scene Viewer all treat GLB as the default and OBJ as an afterthought.

OBJ

Wavefront OBJ

OBJ is a 3D geometry format developed by Wavefront Technologies. It is a plain-text file listing vertices, texture coordinates, normals and faces, with materials and textures referenced in a separate .mtl file. Almost every 3D modelling program, game engine and 3D printing tool can import it. OBJ does not support animation, rigging or scene hierarchies, and textures go missing if the MTL and image files are not kept together.

Compression
–
Transparency
–
Animation
No
Introduced
Wavefront Technologies
OBJ converter

GLB

glTF Binary (GLB)

GLB is the binary form of glTF 2.0, the 3D transmission format published by the Khronos Group in 2017. It packs geometry, PBR materials, textures and animations into a single compact file designed for fast loading. GLB is widely used for web 3D, AR viewers, Android Scene Viewer and online model marketplaces. Some older desktop 3D tools and CAD programs do not import it.

Compression
–
Transparency
–
Animation
Yes
Introduced
2017 · Khronos Group
GLB converter

People convert OBJ to GLB because web viewers, e-commerce platforms and AR apps want one self-contained file with physically based materials, while an OBJ is scattered across a mesh, an MTL and loose texture images.

Preparing an OBJ for a clean GLB conversion

DoDon't
Upload the OBJ, MTL and textures together in one ZIP.Rename texture files after exporting the OBJ.
Check that the .mtl refers to textures by file name, not by a full path on your computer.Leave 8K textures on a model meant for phones.
Use PNG or JPG textures; glTF 2.0 core supports only those two.Expect specular-only materials to look identical under PBR lighting.
Pick the right Model units so the model appears at real size.Use GLB as your editing master; keep the source scene.

Testing the GLB and taking it further

Open the result in a viewer before you publish it. Windows 3D Viewer, the three.js online editor and the glTF Sample Viewer all accept a dragged file and show whether textures loaded and the model faces the right way. If it lies on its side, convert again with Up axis set to Y-up.

For a print model that starts life as an STL rather than an OBJ, STL to GLB does the same job without the material step. If you received a glTF with separate .bin and image files, glTF to GLB packs it the same way this page packs an OBJ.

OBJ to GLB questions

Why is my model enormous in the GLB viewer?

The OBJ numbers were millimeters, and glTF reads every unit as one meter, so a 200 mm vase becomes 200 meters tall. Set Model units to mm and convert again; the converter scales the coordinates into meters.

Which OBJ material settings carry over into GLB?

The diffuse color and diffuse texture map become the glTF base color, a bump or normal map becomes the normal texture, and transparency carries across. Specular settings have no direct equivalent in glTF's metallic-roughness model and are approximated, so shiny materials may need a roughness tweak afterwards.

Can I put the GLB on a Shopify product page?

Yes. Shopify accepts GLB files as 3D product media and shows them in a rotatable viewer. Apple devices also need a USDZ version for AR, which you can make with GLB to USDZ.

My textures are 4K. Will the GLB be too heavy for the web?

The images are embedded as they are, so four 4K textures can make the file several tens of megabytes. Resize textures to 1024 or 2048 px before zipping the OBJ for anything shown on a phone; the model will look the same at viewing size.

What is the difference between GLB and glTF?

They are the same format in two packages. glTF is a JSON file with separate binary and image files beside it, while GLB packs all of it into one binary file. GLB is easier to upload and share, which is why most platforms ask for it.