Cookies for analytics and advertising
We use cookies for analytics and advertising, both sent to Google. Refusing changes nothing you can see.Read the privacy page
Converting HEIF to JXL re-encodes the picture with JPEG XL rather than repacking it, because the lossless repacking JPEG XL is known for works on JPEG files only. It runs entirely in this page, and it trades one format with partial browser support for another.
Up to 100 files at once. Mixed formats are fine.
They convert one after another and download together as a ZIP.
HEIF to JXL
JPEG XL is best known for one specific capability: it can take an existing JPEG file and store it roughly twenty percent smaller with the image data untouched, so the original JPEG can be reconstructed byte for byte. That is a genuine and unusual property, and it is the reason most people arrive at the format.
It is also the reason this page starts with a correction. That trick reads JPEG entropy-coded data and repacks it. A HEIF file holds HEVC data, which has nothing in common with it, so there is nothing to repack. This conversion decodes the picture and encodes it again from pixels, exactly like every other lossy pair on the site.
Two readers. The first has a tool, a pipeline or a specification that names JPEG XL, and for them the conversion is simply the way to satisfy it. The second is thinking about the next twenty years and comparing formats on their properties rather than on their popularity.
The reader who should turn back is the one converting because HEIF will not open somewhere. JPEG XL will not open there either — both formats are recorded with partial browser support — so the trip solves nothing. That reader wants JPG for reach or WebP for a web page, and there is a page for each.
The properties are the right ones. It is ISO/IEC 18181-1, published in 2022 by the same committee that produced JPEG, and it is an open standard rather than a proprietary one — which is the single sharpest difference from HEIF, whose codec sits behind patent pools that have made it awkward for a decade. It supports up to thirty-two bits per channel, an alpha channel, animation, and a true lossless mode.
For a collection being built now, those add up to a defensible choice. For a collection that already exists as HEIF, they do not add up to a migration, because none of them can be applied retroactively to pictures that were compressed with something else in 2019.
The quality figure runs from 1 to 100 and starts at 82. That is a sensible setting for a photograph, and it is a second lossy pass over a picture that was already lossy when the camera wrote it — the encoder is compressing the reconstruction, not the scene.
JPEG XL's lossless mode is not what this pair writes, and choosing it would be a strange bargain anyway: it would faithfully preserve compression artefacts at several times the file size. If you want a truly lossless container for a HEIF picture, PNG is the honest version of that request and it is one page over.
JPEG XL is specified to a bit depth no other raster format on this site approaches, and HEIF holds ten bits per channel, so the target has room for everything the source contains several times over.
This pipeline does not deliver that. The decoded picture crosses an eight-bit buffer on the way to the encoder, so eight bits per channel is what gets stored. If the reason you are converting is to preserve deep colour for an archive, this converter cannot do it, and that is a better thing to read here than to discover in two years.
The registry records browser support for HEIF and for JPEG XL with the same word: partial. Converting between them changes which browsers work rather than making the problem go away, and for most people that is a lateral move.
On the desktop the picture is better than on the web. GIMP and ImageMagick both read JPEG XL, and viewer support has grown steadily. Still, the safe assumption when sending a file to somebody else is that they cannot open it, which makes JXL a storage format rather than a delivery format.
Both formats carry an alpha channel, so transparency crosses intact. Both also allow animation and multiple images in one file, and that does not cross — the decoder takes the primary image out of the HEIF and the encoder writes a single still.
A .heif file almost always holds one photograph, so this is rarely a loss. It is worth knowing if the source came off a camera in burst mode, because you will get the first frame with no indication that there were others.
This is the loss that matters most for the reader this page is written for. The conversion decodes to raw pixels and re-encodes, and no metadata block can travel across that step, so the JXL has no capture date, no camera, no lens, no GPS position and no colour profile.
For publishing, stripping the coordinates of somebody's house is the point. For archiving it is close to the opposite: the timestamp is frequently the only thing that makes ten thousand photographs navigable, and a converted collection loses the ability to sort itself. If you convert in bulk, export the dates first and keep them somewhere the conversion cannot touch.
This site reads HEIF and cannot write it. Decoding uses libheif, LGPL-3.0, which is shippable by a static site that names the library, publishes the licence and serves it as its own replaceable chunk. An HEVC encoder would be needed to write the format, and the common one is GPL, whose terms this site cannot meet.
For an archival decision that asymmetry is the practical one. Whatever you convert, keep the HEIF originals: they are the only copies with the full quality and the metadata, and nothing on this site can reproduce them from the JXL.
The HEIF decoder and the JPEG XL encoder both execute inside this browser tab. There is no upload, no account and no server-side copy — which for a personal photograph collection is the reason to prefer a page like this one over a service that wants the files first and explains its retention policy afterwards.
Files up to 100 MB each are accepted on the free tier, a folder converts with a progress row per file, and once two are finished an "all as ZIP" button appears. Expect the encoding to take real time on large photographs; that time is your processor rather than a queue somewhere.
If the underlying question is how to keep a HEIF collection readable for decades, the answer has three parts and only one of them is a format. Keep the originals, because they are the highest-quality copies and the only ones with the metadata. Export the capture dates and any album structure to something plain, since that information lives in databases and sidecar files that outlive nothing.
Then convert selectively rather than wholesale. The photographs that genuinely matter — a few hundred, not forty thousand — are worth a lossless master in PNG or TIFF, which no future decoder will struggle with. That costs disk space and nothing else, and it does not depend on which of today's efficient formats wins.
Before converting anything in quantity, convert one and open it in the software you expect to use in future. GIMP and ImageMagick both read JPEG XL and are safe bets; your operating system's built-in viewer, your photo manager and your phone are all worth testing individually because any of them may decline.
That test is worth repeating on the machine you will actually use, not only on this one: a format that opens in your editor and not in your file browser is workable, and one that opens in neither is a dead end you would rather find with a single file than with ten thousand. The difference is between adopting a format and hoping about one. The registry calls JPEG XL niche, which is a description of its ecosystem rather than of its design, and the ecosystem is exactly what determines whether the files you make today are convenient or annoying in five years.
| HEIF | JXL | |
|---|---|---|
| Full name | High Efficiency Image File Format | JPEG XL |
| File extension | .heif | .jxl |
| Media type | image/heif | image/jxl |
| Compression | Lossy — file size is bought with quality | Either, depending on the setting |
| First published | 2015 | 2021 |
| Published by | MPEG | Joint Photographic Experts Group |
| Specification | ISO/IEC 23008-12 | ISO/IEC 18181 |
| Licensing | Published, not standardised | Open standard |
| Standing today | Current | Niche |
| Bit depth | 10 | 32 |
| Colour it can describe | YCbCr, wide gamut | RGB, greyscale, wide gamut |
| Opens in a browser | Some browsers | Some browsers |
| Considered instead | JPG, AVIF | AVIF, WebP, PNG |
JXL has nowhere to put the GPS coordinates, so that goes no further than the HEIF. Worth checking before the original is deleted, and worth knowing if the point was to strip it.
Transparency survives. Both HEIF and JXL store an alpha channel, so a cut-out stays cut out and nothing is filled in behind it.
Animation survives. HEIF and JXL both hold multiple frames, so the result moves rather than freezing on the first one.
The result is larger than the original and no better. HEIF has already discarded detail, and JXL stores what is left without discarding more — it prevents further loss rather than undoing the first one.
HEIF is MPEG's format, published in 2015. It records 10 bits per channel.
JXL comes from Joint Photographic Experts Group and dates from 2021, specified as ISO/IEC 18181. GIMP and ImageMagick all read it.
No. This conversion runs entirely inside your browser, so the file never leaves your device. You can confirm it yourself: open the network tab of your browser's developer tools and convert something. You will see the page load, plus the analytics and advertising the site is paid for with — and nothing carrying your file. The engine behind this particular pair is libheif, the reference decoder for Apple's HEIC; your browser fetches it once and caches it.
No. That feature applies to JPEG files specifically — JPEG XL can re-encode an existing JPEG around 20 % smaller with the pixels bit-identical. A HEIF holds HEVC data, not JPEG data, so it has to be decoded and encoded again like any other conversion.
Not on this pair. The encoder is given a quality figure, defaulting to 82, and writes a lossy file. JPEG XL does define a lossless mode; for a photograph it produces a much larger file, and it cannot recover anything the HEIF already discarded.
Only some of them — support is recorded as partial, the same word the registry uses for HEIF. If the reason for converting is that HEIF will not display somewhere, JXL swaps one awkward format for another and WebP or JPG is the better answer.
GIMP and ImageMagick both read it, and a growing number of image viewers do. It is a niche format in the registry's own terms, so assume a recipient cannot open it unless you know otherwise.
It has the right properties: an open ISO standard, ISO/IEC 18181, a lossless mode, deep colour, and no patent-pool question hanging over the decoder. Whether re-encoding an existing HEIF collection into it is worth a generation of quality is a different question, and usually the answer is no.
No. The conversion decodes to pixels and re-encodes, so EXIF does not travel — no timestamp, no camera model, no GPS. For an archive that is a real loss, and it is worth recording the dates elsewhere before you convert anything in bulk.