HEIC to JPG
Turn an iPhone HEIC photo into a widely compatible JPEG.
HEIC photo
A single still photo. The file is checked by its brand bytes, not only by its extension. The decoder is bundled with this page and loads on demand for the first conversion.
Up to 25.0 MB, 40,000,000 pixels and 12,000 pixels on either side. Image sequences, Live Photos and AVIF are rejected.
JPEG settings
Higher quality keeps more detail and makes a larger JPEG.
JPEG has no alpha channel. Any transparency is flattened onto this colour, white by default.
HEIC decoding uses the bundled heic-to 1.6.7 library (LGPL-3.0), which includes libheif 1.23.7 and libde265 under the LGPL. Source and licence text: github.com/hoppergee/heic-to and github.com/strukturag/libheif. The decoder runs locally; no image is uploaded.
JPEG result
No JPEG yet. Select a HEIC still image, choose quality, then use Convert to JPEG. The first run may take a moment while the decoder loads.
How to convert
- Select a single HEIC or HEIF still image from your device.
- Choose JPEG quality and a background colour for transparent pixels.
- Use Convert to JPEG. The first conversion loads the bundled decoder, so it may take a moment. Check the dimensions and file size, then download the JPEG.
What is supported
- One still image per file. The primary image is decoded; thumbnails, depth maps and alternate images are ignored.
- HEIC/HEIF files with standard HEIC, HEIX, MIF1, HEIS or HEIM brands. Image sequences, Live Photos (sequence brands) and AVIF are rejected with an explanation rather than silently producing a file.
- Up to 25 MB, 40,000,000 decoded pixels and 12,000 pixels on either side.
- The decoder is the bundled heic-to 1.6.7 build with libheif/libde265, loaded only on this route. No decoder is downloaded from a CDN at runtime.
What is lost
- EXIF, GPS location, camera settings and colour profiles are not copied into the JPEG.
- HDR, 10-bit and wide-gamut images are decoded to ordinary 8-bit sRGB pixels without colour management. Highlights and colour may look different from the original.
- JPEG has no transparency. Any alpha is flattened onto the chosen background colour, white by default.
- If the file is corrupt or uses an unsupported HEIC variant, the tool reports an error and downloads nothing.
Example
Example
A 1,280 × 854 HEIC photo converted at 90% quality becomes a JPEG at the same pixel dimensions. The result panel reports the real JPEG type and byte size.
Privacy
The photo and the generated JPEG stay in this tab. Nothing is uploaded, stored in browser storage or included in analytics. The bundled decoder runs locally.
HEIC decoding uses heic-to 1.6.7 (LGPL-3.0), libheif 1.23.7 and libde265 under the LGPL. Source and licence text are available at github.com/hoppergee/heic-to and github.com/strukturag/libheif.