Guide May 18, 2026

What is a GLB File? The Web-Ready 3D Format Explained

GLB is the binary variant of GLTF that packs mesh, textures, materials, and animations into a single file. It is the emerging standard for 3D on the web, in AR, and across game engines.

If you have used 3D models on the web recently, viewed a product in augmented reality on your phone, or imported assets into a modern game engine, you have almost certainly encountered a GLB file. The format has rapidly become the default choice for delivering 3D content to real-time rendering applications, and for good reason. GLB solves problems that older formats like OBJ and STL cannot: it packages everything a 3D model needs, including geometry, materials, textures, and animations, into a single compact binary file that loads fast, renders correctly across different platforms, and works out of the box without manual configuration.

GLB and GLTF: The Relationship

To understand GLB, you first need to understand GLTF. GLTF stands for GL Transmission Format. It was created by the Khronos Group, the industry consortium that also maintains OpenGL, Vulkan, WebGL, and OpenXR. The Khronos Group describes GLTF as "the JPEG of 3D," a universal interchange format designed to be the standard way to transmit 3D content across applications and platforms.

GLTF version 2.0, released in June 2017, defines two file variants:

GLB is GLTF. They share the exact same data model, the exact same material definitions, and the exact same feature set. The only difference is packaging. GLB puts everything into one file; GLTF spreads it across multiple files. For web delivery, sharing, and embedding, GLB is almost always the preferred variant because a single file is easier to host, transfer, cache, and manage than a collection of files with interdependencies.

What GLB Contains

Mesh Geometry

GLB stores triangle mesh geometry in compact binary buffers. Vertex positions, normals, texture coordinates, vertex colors, and face indices are all packed as typed arrays of floating-point or integer values. This binary storage is vastly more compact and faster to parse than the text-based formats used by OBJ and ASCII STL. A model that produces a 100MB OBJ file might be only 15MB as a GLB, and it loads in a fraction of the time because there is no text parsing overhead.

GLB supports indexed geometry, which means vertices shared by multiple triangles are stored only once and referenced by index. This eliminates the redundancy that inflates STL file sizes, where every triangle independently lists all three of its vertex positions even when adjacent triangles share the same vertices.

PBR Materials

This is arguably GLB's most important feature. The format uses a physically-based rendering (PBR) material model based on the metallic-roughness workflow. Each material defines a set of properties that describe how light interacts with the surface:

Because PBR materials are physics-based rather than arbitrary, they look consistent and correct across different rendering engines and viewers. A GLB material that looks right in Three.js will also look right in Babylon.js, in Unity, in Unreal Engine, and in GeometryViewer. This cross-platform consistency is a massive advantage over older material models like OBJ's Blinn-Phong system, where materials often look different in every application.

Textures

Texture images are embedded directly in the GLB file as binary data, typically in PNG or JPEG format. This eliminates the missing-texture problem that plagues OBJ files, where the model and its textures are separate files that can become separated during transfer. When someone sends you a GLB file, you have everything. There are no companion files to lose, no directory structures to preserve, and no relative paths to fix.

Animations

GLB supports multiple types of animation:

Animations are stored as keyframe tracks with interpolation (step, linear, or cubic spline). A single GLB file can contain multiple animation clips, each targeting different nodes and properties. This makes GLB suitable for character models with walk, run, and idle animations, product models with opening and closing animations, and architectural walkthroughs with animated doors and windows.

Neither STL nor OBJ support any form of animation, making GLB the clear choice when you need to deliver animated 3D content.

Scene Hierarchy

GLB can represent a hierarchy of nodes (objects) with parent-child relationships. A car model might have the body as the root node, with four wheel nodes as children, each with its own transform. This hierarchical structure is essential for interactive applications where different parts of the model need to be manipulated independently, like opening a car door or rotating a wheel.

Why GLB Became the Web Standard

Several factors converged to make GLB the dominant format for 3D on the web.

Khronos Group backing. GLTF was created by the same organization that maintains WebGL, the graphics API that powers 3D rendering in web browsers. This alignment means GLTF's data structures map efficiently to WebGL's buffer and texture APIs, resulting in fast loading with minimal processing overhead.

Single-file packaging. Web delivery strongly favors single-file assets. Each HTTP request has overhead. A model that requires five separate files (OBJ + MTL + three textures) means five requests, five potential points of failure, and five cache entries to manage. A single GLB file means one request, one cache entry, and zero missing-file problems.

Framework adoption. Every major WebGL framework added first-class GLTF/GLB support: Three.js, Babylon.js, PlayCanvas, A-Frame, and Google's model-viewer web component. When a developer building a 3D web experience asks "what format should I use," the answer from every framework's documentation is GLTF/GLB.

AR platform support. Google's Scene Viewer on Android uses GLB directly. Apple's AR Quick Look uses USDZ, but toolchains convert from GLB to USDZ automatically. Meta's Spark AR, Snapchat's Lens Studio, and other AR platforms all support GLB import. If you produce a 3D model in GLB, you can reach virtually every AR platform with minimal conversion.

Search engine 3D results. Google uses GLTF/GLB for 3D models that appear directly in search results. When you search for certain products or animals on Google, a 3D model appears that you can view in AR. These models are delivered as GLB files.

Open a GLB File

Drop any GLB file into GeometryViewer to see it with full PBR materials, textures, and animations. No installation, no account, works on desktop and mobile.

Open GLB Viewer

How to Open a GLB File

In the Browser

The fastest way to view a GLB file is in an online viewer like GeometryViewer. Drag the file onto the page and the model renders with full PBR materials, textures, and animations. This is the quickest way to inspect a GLB file without installing any software. Other online options include the official Khronos Group glTF sample viewer and Don McCurdy's GLTF Viewer.

In 3D Software

Blender has native GLTF/GLB import and export. File, Import, glTF 2.0 opens any GLB file with materials and animations intact. Unity and Unreal Engine both import GLB assets. Adobe Substance Painter and Substance 3D Stager support GLB. Most modern 3D software released or updated after 2020 includes GLTF/GLB support.

On Mobile

On Android, you can open GLB files directly in Google's Scene Viewer, which launches automatically when you tap a GLB link in Chrome. On iOS, GLB files can be converted to USDZ for viewing in AR Quick Look, or viewed directly in Safari using web-based viewers like GeometryViewer.

GLB vs Other Formats

GLB vs STL: STL stores only triangle geometry with no materials, colors, textures, or animations. GLB stores everything. Use STL for 3D printing; use GLB for everything else.

GLB vs OBJ: OBJ supports materials and textures but uses an outdated Blinn-Phong material model, requires multiple separate files, and does not support animations. GLB has PBR materials, single-file packaging, and full animation support. GLB is the modern replacement for OBJ in most workflows.

GLB vs FBX: FBX is Autodesk's proprietary format widely used in game development and animation pipelines. GLB is an open standard with broader web and AR support. For web delivery, GLB is preferred. For game engine pipelines that are deeply integrated with Autodesk tools, FBX remains common.

GLB vs USDZ: USDZ is Apple's preferred 3D format for AR Quick Look on iOS. It is based on Pixar's Universal Scene Description (USD) format. GLB has broader cross-platform support, but USDZ is required for native iOS AR experiences. Many workflows produce GLB as the primary format and convert to USDZ for Apple devices.

Creating GLB Files

Most 3D modeling applications can export to GLB. In Blender, use File, Export, glTF 2.0 and select the "GLB" format option. In Substance Painter, export textures for GLTF and use the built-in GLTF export. Online tools like glTF Transform, GLB Packer, and Gestaltor can convert between GLTF and GLB, optimize textures, and apply Draco mesh compression to reduce file size further.

For the smallest possible file size, apply Draco compression during export. Draco is a geometry compression library developed by Google that can reduce mesh data size by 80 to 95 percent with minimal visual quality loss. Most GLTF/GLB export tools offer a Draco compression option.