HEIC to JPEG Converter

Apple switched the default iPhone camera format to HEIC in 2017, which is why photos that look fine on your phone refuse to open on a Windows machine or upload to an older web form. Decoding happens here in a Web Worker so the page stays responsive on large photos.

How to use it

  1. Drop in a .heic or .heif file straight from your phone or Photos export.
  2. A Web Worker decodes the HEVC-compressed image off the main thread.
  3. The .jpg downloads when decoding completes.

Why your browser cannot open HEIC on its own

HEIC is a container, and the image inside it is compressed with HEVC, also known as H.265. HEVC is encumbered by a large and fragmented patent pool, with licensing administered by multiple groups that do not always agree with each other.

The practical effect is that most browsers never shipped an HEVC still-image decoder, because doing so would require licensing fees for a format used mainly by one vendor ecosystem. Apple devices decode HEIC natively because Apple licenses it; everyone else has to bring their own decoder. This page ships one compiled to WebAssembly, which is why conversion takes a moment and why it happens in a worker rather than blocking the page.

What HEIC stores that JPEG cannot

HEIC files from a modern iPhone are frequently containers holding considerably more than one image, and the extra content has no JPEG equivalent.

Expect these to be dropped in conversion:

File size and orientation

HEIC is roughly twice as efficient as JPEG at equivalent quality, so expect the converted file to be noticeably larger than the original. That is the cost of using a format everything can open.

Orientation is applied during decoding rather than left as an EXIF flag, so photos taken in portrait stay upright. This avoids the long-standing problem where a rotated photo displays correctly in one program and sideways in another depending on whether that program honours the EXIF orientation tag.

At a glance

Accepted input.heic, .heif
Output.jpg, 8-bit
ExecutionWeb Worker, off the main thread
Not preservedLive Photo video, depth maps, HDR gain maps

Frequently asked questions

Why can my browser not just open HEIC directly?

The image inside a HEIC file is HEVC-compressed, and HEVC carries significant patent licensing obligations. Most browsers chose not to ship a decoder. This page supplies one as WebAssembly instead.

Does my Live Photo convert too?

Only the still frame. The paired video clip is a separate track in the container and has no place in a JPEG. Export the video separately from Photos if you need it.

Why is the JPEG bigger than the HEIC?

HEIC is about twice as space-efficient as JPEG for the same visual quality. Converting to a universally supported format costs file size.

Will portrait-mode blur survive?

The blur you can see survives, because it is part of the rendered image. The underlying depth map does not, so you lose the ability to adjust the blur afterwards.

Read more

Choosing an image format — Why the same photograph can be 40 KB or 4 MB depending on a single dropdown, and how to choose deliberately.

Related tools