Free webp to jpg
Image MIME Reference
KTX2

Khronos Texture 2.0

image/ktx2
VS

Portable Pixmap

image/x-portable-pixmap
PPM

A complete technical comparison of Khronos Texture 2.0 and Portable Pixmap — covering compression, feature support, browser compatibility, magic bytes, and when to choose each format.

Equal browser support

Feature Support

Feature KTX2 PPM
Transparency (Alpha) Yes ✕ No
Animation Support ✕ No ✕ No
Progressive Loading ✕ No ✕ No
HDR Support Yes Yes
EXIF Metadata ✕ No ✕ No
ICC Color Profile ✕ No ✕ No
Khronos Texture 2.0
image/ktx2
Extension
.ktx2
Container KTX 2.0
Compression Basis Universal (ETC1S / UASTC) / Zstandard (zstd) Supercompression / Uncompressed
Algorithm
ETC1SUASTCZstandard (zstd)Raw GPU Formats (ASTC, BCn)
Color Depth 8-bit, 16-bit, 32-bit (Float)
Developed by Khronos Group
Released 2021
Magic Bytes
AB 4B 54 58 20 32 30 BB 0D 0A 1A 0A
Full KTX2 reference →
Portable Pixmap
image/x-portable-pixmap
Extension
.ppm
Container Netpbm
Compression Uncompressed
Algorithm
None
Color Depth 24-bit (RGB), 48-bit (RGB High Color)
Developed by Jef Poskanzer (Netpbm Project)
Released 1988
Magic Bytes
50 33 (ASCII) or 50 36 (Binary)
Full PPM reference →

Browser Support Comparison

Browser KTX2 PPM
Chrome Chrome
Firefox Firefox
Safari Safari
Edge Edge
IE IE (Legacy)
KTX2

KTX2 Strengths

  • Universal hardware compatibility: write once, transcode anywhere to the target GPU's preferred format (ASTC, BC7, PVRTC, etc.)
  • Drastically reduces transmission size over networks thanks to Basis Universal and Zstandard supercompression
  • Seamless integration with the glTF ecosystem for optimized 3D asset delivery
Limitations
  • Requires WebAssembly (Wasm) decoders and JavaScript loaders for web viewing, increasing initial application payload slightly
  • Encoding textures into high-quality Basis Universal UASTC can be computationally intensive and slow
  • Zero support in traditional 2D image viewers or native OS previews
PPM

PPM Strengths

  • Absolute structural simplicity allows parsers and renderers (such as custom raytracers) to write directly to the format with virtually no overhead or external libraries
  • Supports 16-bit per channel (48-bit total) precision, preserving deep color accuracy before converting to final delivery formats
  • ASCII encoding ('P3') allows manual editing and visual inspection of RGB values directly within a text editor
Limitations
  • Zero compression results in astronomical file sizes, making it entirely impractical for web delivery or consumer storage
  • Does not natively support an alpha channel for transparency (this is handled by the newer PAM extension format within the Netpbm suite)
  • Lacks support for modern metadata standards like EXIF, XMP, or embedded ICC color profiles

When to choose which format

KTX2
Use KTX2 when…
  • glTF 3D Models (KHR_texture_basisu)
  • WebGPU and WebGL Applications
  • Game Engines (Unity, Unreal, Godot)
  • Augmented and Virtual Reality (AR/VR)
PPM
Use PPM when…
  • Intermediary Format for Image Format Conversion
  • Academic Computer Graphics and Raytracing Output
  • Unix/Linux Command-Line Image Pipelines
Share this comparison