JPEG XL, standardized in 2021, is the current successor to JPEG. Its lossy mode makes smaller files than JPEG at the same visual quality, and its lossless mode makes smaller files than PNG, so one format handles both photographs and screenshots.
It also has what JPEG lacks: an alpha channel, 16-bit precision and high dynamic range. Files
use the .jxl extension, and come either as a bare codestream or in a container
that carries a color profile and metadata.
| Feature | Details |
|---|---|
| Compression | Both modes: lossy (VarDCT) and bit-exact lossless (Modular) |
| Precision | 8-bit, and high-bit-depth or floating-point files decoded at 16-bit |
| Color models | Grayscale and RGB |
| Transparency | A full alpha channel, read and written |
| Color profiles | Read and written as an embedded ICC profile |
| Metadata | Read: EXIF and XMP from the container boxes |
| Wrappings | Both: the raw codestream and the container |
| Export | Lossless or lossy, 8- or 16-bit, with alpha, a profile and an effort setting |
These are properties of JPEG XL itself. No program can do better with a .jxl file.
| Limitation | Result |
|---|---|
| Layers | The format holds one flat image, so export writes the flattened picture |
| CMYK | Only available in the format's higher feature level, which few decoders implement. Convert to RGB before exporting |
These are gaps and choices on our side, not the format's.
| Limitation | Result |
|---|---|
| Animation | JPEG XL can animate; we do not yet. An animated .jxl opens as its first frame, and export writes a still |
| Compressed metadata boxes | Brotli-compressed EXIF or XMP is skipped when opening. Uncompressed metadata is read normally |
| Metadata on export | The color profile is written; EXIF and XMP are not yet |
| Mismatched color profile | Export refuses a profile that does not describe the picture's color space — a grayscale profile on a color picture, say — rather than writing a file that misstates its colors |
Quality applies to the lossy mode. Higher means more detail and a larger file. The scale is not JPEG's: JPEG XL targets a perceptual distance rather than a quantizer, and quality 90 is already hard to tell from the original.
Lossless is a separate switch rather than quality 100, because it is a different compression path and keeps the original color space untouched. Use it for pixel art, screenshots and text. It stores 16-bit pictures exactly.
Effort sets how hard the encoder works to make the file small. It costs saving time and changes nothing about how the picture looks. Lower it if a large export is slow; raise it if file size matters more than the wait.
Transparency keeps the alpha channel; it has no effect on a document that has no transparency, which is written without an alpha channel either way. ICC Profile embeds the document's color profile.