HEIC to JPG: help & limits
About this tool
Turn a supported HEIC photo into a JPG for a document, older photo editor, or upload form that does not accept HEIC. A local decoder runs in your browser, so native HEIC viewing support is not required. Conversion starts when you choose a photo. Review the result before downloading; unusual HEIF variants may still be unsupported.
How to use
- Choose one still HEIC or HEIF photo within the displayed limits.
- Conversion starts automatically. The local decoder loads when needed; larger photos take longer.
- Review orientation and color in the preview, then download the JPG.
Supported files
Still HEIC / HEIF · Up to 32 MiB · 64 megapixels. One image at a time. Maximum 16,384 pixels per edge and 128 MiB output.
How it works
A bundled libheif WebAssembly decoder reads the HEIC inside a dedicated worker. Reqly checks image count and dimensions, decodes pixels, and uses the browser’s JPEG encoder. Output is an ordinary 8-bit JPG encoded at quality 92. The decoder is served with this site; there is no external conversion service.
Examples
An iPhone portrait for a document
Convert a supported 3,024 × 4,032 still photo to JPG so a document editor can import it. Review its orientation before sharing.
A landscape product photo
Convert a supported 4,032 × 3,024 product photo to JPG. If the output is too large, use the image compressor afterward to adjust compression.
Limitations
- Requires WebAssembly, Web Workers, and worker Canvas support. Low-memory devices may fail below the limits; processing stops after 60 seconds.
- Multiple-image HEIF files, image sequences, AVIF, and HEIC alpha channels are rejected. Live Photo motion, depth information, and auxiliary images are not exported.
- JPG is lossy. HDR, wide-gamut appearance, source metadata, and exact colors are not preserved as a guarantee. Check the preview against your original.
- Not every iPhone, Android, or camera HEIF variant has been verified. If decoding fails, export JPEG from your photo app; Reqly will not upload the image as a fallback.
Privacy
Your photo is passed to a worker on your device, not to a server. The site downloads decoder code when needed, without attaching your file or its name to that request. Start over releases the result preview and stops any active worker.
Local processing explainedCommon questions
Does my browser need native HEIC support?
No. Reqly uses a bundled WebAssembly decoder. The browser still needs the local worker and Canvas capabilities used to create a JPG.
Why does my HEIF file fail?
HEIF is a container with multiple possible codecs and image arrangements. This tool accepts a supported single still image and rejects unsupported variants rather than silently discarding multiple pictures.
Will my Live Photo still move?
No. JPG is a still image. This tool does not convert the separate video component of a Live Photo or preserve depth and HDR data.