Make JPEG XL images smaller by quality, to an exact size like 200 KB, or losslessly. The before and after view works even where your browser cannot show JXL - new to the format? Start with PNG to JXL or JPG to JXL.
Compressing...
Drag across the picture to compare. Left: original - right: compressed.
| Quality | Looks like | Good for |
|---|---|---|
| 100 (Lossless) | Identical pixels | Archives, editing, screenshots |
| 90 | Same as the original | Photography, prints |
| 80 (Balanced) | Very close | Most web images |
| 60 (Strong) | Softer fine detail | Thumbnails, previews |
JPEG XL numbers are not the same as JPG numbers: JXL keeps fine detail better, so 80 here usually beats JPG at 90 at a smaller size. Transparency is kept at every quality.
Your JXL is read in your browser - natively in Safari, everywhere else with libjxl compiled to WebAssembly.
No browser can write JPEG XL yet, so the decoded image goes to our own encoder as a lossless PNG over HTTPS. The result comes straight back, is measured, and is deleted from our server right away - leftovers are swept within 4 hours.
Safari, Photoshop, GIMP and Affinity open JPEG XL; Windows 11 needs the free JPEG XL extension. For websites and chat apps, convert it with JXL to JPG or JXL to PNG.
Compressing other formats? Try Compress AVIF, Compress WebP, Compress JPG or Compress PNG.
Drop it into the box above. Balanced (quality 80) works for most images; for an exact limit open Target file size and pick a size like 200 KB.
Yes - choose Lossless (quality 100). Every pixel stays exactly the same. If the original is already smaller, you get it back untouched.
No browser can encode JPEG XL yet. The image travels over HTTPS to our own encoder as a lossless PNG and is deleted as soon as the result comes back.
The page decodes JPEG XL itself with libjxl (WebAssembly), so the before and after view works in Chrome, Edge and Firefox too.
Yes, transparent areas stay transparent at every quality.
JPEG XL is already very efficient, and files made losslessly from JPG are hard to beat. If a new encode would be bigger, the tool keeps your original - it never makes a file bigger.
Only the first frame is read, so animated JPEG XL files are not a good fit here yet.