ETC1S vs UASTC in glTF Texture Compression

When optimizing 3D assets using the glTF format, developers face a critical choice between ETC1S and UASTC texture compression modes via the KHR_texture_basisu extension. Both formats originate from the Basis Universal technology to deliver GPU-ready textures across diverse platforms without requiring manual conversion for every target hardware. The primary distinction separating ETC1S and UASTC is the trade-off between file size and visual fidelity: ETC1S focuses on aggressive compression to minimize network payloads, whereas UASTC targets high visual quality and rapid transcoding at the expense of larger transmission sizes.

Fundamental Architecture

The structural differences between the two formats stem from how they encode and compress pixel data:

  • ETC1S is an endpoint-quantized, dictionary-based texture format. It simplifies color blocks into a limited, shared codebook across the entire texture. Because it reduces the variety of distinct color patterns to a small set of indices, the file compresses exceptionally well using traditional entropy coders.
  • UASTC (Universal ASTC) is a block-based format modeled after modern ASTC hardware texture compression. It supports multiple encoding modes per 4x4 block, allowing each block to retain distinct colors, gradients, and full independent alpha channels without relying on a shared global codebook.

Visual Quality and Map Compatibility

Visual performance is one of the most prominent differentiators between the formats:

  • Color Artifacts: ETC1S introduces noticeable color banding and blocky artifacts, particularly in areas with smooth gradients, subtle lighting changes, or saturated colors. UASTC preserves color gradations and high-frequency details, resulting in an output virtually indistinguishable from uncompressed source images.
  • PBR and Normal Maps: Physical-based rendering (PBR) workflows heavily depend on high-precision data. ETC1S performs poorly with tangent-space normal maps and packed metalness/roughness maps, leading to lighting seams and surface distortion. UASTC excels at storing non-color data and normal maps with minimal error.

File Size and Network Performance

ETC1S and UASTC serve different stages of bandwidth optimization:

  • ETC1S produces extremely compact files out of the box, typically achieving reductions of 75% to 90% compared to standard PNG or JPEG files. It is specifically designed to minimize download times and data transfer over the web.
  • UASTC creates substantially larger files when uncompressed—roughly comparable to raw GPU block-compressed formats (around 1 byte per pixel). To achieve competitive network transmission sizes, UASTC files must be packaged inside containers (such as KTX 2.0) paired with secondary supercompression algorithms like Zstandard (Zstd). Even with supercompression, UASTC files generally remain 2 to 3 times larger than equivalent ETC1S files.

Runtime Transcoding and Memory

Both formats must be transcoded on the client into native GPU formats (such as BCn, ETC2, or ASTC) before they can be displayed:

  • Transcoding Speed: UASTC is mathematically closer to native hardware formats (especially ASTC and BC7), allowing transcoding algorithms to map directly with low CPU overhead. ETC1S requires codebook lookups, which makes transcoding slightly more complex, though it remains fast enough for real-time applications.
  • VRAM Usage: Once transcoded into GPU memory, both formats consume nearly identical amounts of VRAM because they unpack into the same native block-compressed formats supported by the user's hardware.

Practical Application Guidelines

Choose ETC1S when network bandwidth and initial load times are the top priority. It is best suited for mobile web applications, e-commerce catalog models with basic textures, simple diffuse/albedo maps, and UI elements.

Choose UASTC when rendering fidelity is non-negotiable. It is the preferred choice for detailed normal maps, roughness/metallic masks, high-end digital twins, architectural visualizations, and desktop-class interactive 3D experiences.