HEIC to JPG

libheif compiled to WebAssembly decodes the file locally, then the result is written out as JPG or PNG at the quality you choose.

How HEIC to JPG works

Convert iPhone HEIC and HEIF photos to JPG or PNG with a real decoder running in your browser. Nothing is uploaded. Everything happens inside this page: the tool reads your input, runs the calculation or conversion locally, and hands the result back to you. Nothing is transmitted, because there is no backend to transmit it to.

That design choice is deliberate. Most free tool sites upload your files to a server, process them there, and quietly keep a copy. Toolcin cannot do that — the site is a set of static files. If your connection dropped the moment the page finished loading, every tool would still work.

Why the file will not open anywhere

An iPhone saves photos as HEIC by default: an HEVC-compressed image inside a HEIF container. HEVC is a video codec, so desktop photo viewers that never shipped a HEVC decoder simply refuse the file — the extension is unfamiliar and the pixels are in a format they cannot parse.

Renaming it to .jpg changes nothing. The bytes are still HEVC, and every viewer will still reject it. The image has to be decoded and re-encoded, which is what this page does.

The decode is real

libheif, compiled to WebAssembly, parses the container, extracts the primary image and decodes the HEVC bitstream to raw pixels. Those pixels are drawn to a canvas, and the canvas writes the JPG or PNG you download.

Because it is a genuine decode, the output has the full resolution of the original — a 1280 × 854 HEIC comes out as a 1280 × 854 JPG, not a thumbnail.

FormatUse
JPGEverywhere; smallest file
PNGLossless, larger, keeps transparency if any
Original HEICOnly Apple devices open it reliably

Colour and quality

HEIC files from phones often carry a wide-gamut profile, and the canvas works in sRGB. Highly saturated photos can shift slightly on conversion — a known limitation of reading HDR-ish phone images in a plain canvas, not something a quality slider fixes.

The quality slider affects JPG only. Above 92 the file grows quickly for very little visible gain; below 70 flat areas start to band.

Privacy and the one download

The decoder is 1.4 MB and is fetched once from a public CDN, then cached. The photo itself is never uploaded — it is read with a FileReader, decoded in the tab and written back to a download. Nothing about the image leaves the machine.

Good to know

  • Works offline once loaded, including on flights and in locked-down networks.
  • No file size limit beyond your device's own memory.
  • Free to use, with no account and no usage counter.
  • Results are produced locally, so they are not logged or shared with anyone.

Questions

Why can't I just rename the file?

HEIC is HEVC-compressed image data inside a container. Renaming it to .jpg gives a file no viewer can read — the pixels have to be decoded.

Does it work offline?

After the decoder has downloaded once it is cached, so later conversions work without a connection.

What about Live Photos?

Only the still image is decoded; the paired video is ignored. A HEIC containing several frames reports the frames but converts the first.

Does it handle HEIF from other cameras?

Yes — HEIF is the container and HEIC is the common brand; both decode through the same path.

Photo cleanup tools

Keep going

More image tools