Why iPhone photos arrive as HEIC
Since iOS 11, iPhones have saved photos in HEIC — the High Efficiency Image Container, Apple’s use of the HEIF standard. It holds a photo in roughly half the space a JPEG needs for the same visible quality, which matters on a phone full of pictures. The catch is support: Windows needs an extra codec to open it, many upload forms reject it, and plenty of photo software simply does not recognise the file.
JPEG is the opposite trade. It is less efficient, but every device, browser, website and editor made in the last thirty years opens it. Converting is how you get a HEIC photo into the places that only accept JPG.
How the conversion works
Each file is first checked by reading its opening bytes, which name
the format inside, so a file that only has a .heic
extension without HEIC data is turned away before anything else
happens. When you press Convert, the page starts a background worker
and loads a HEIC decoder into it — libheif, the open-source library
used by many image applications. The worker decodes the primary image
from the file to pixels, and the page writes those pixels out as a
JPEG at the quality you picked.
The decoder runs on a separate thread, so the progress bar, the Cancel button and the rest of the page keep responding while a large photo is being decoded. Photos are handled one at a time, which keeps memory use predictable on a phone.
Quality and file size
The quality slider controls the JPEG compression. 92% is a sensible default: the result is visually indistinguishable from the original in normal use. Expect the JPG to be larger than the HEIC it came from — that is the efficiency difference between the two formats, not wasted space added by the converter.
Dropping the slider to around 80% shrinks the JPG further with little visible cost on an ordinary photo, and is a reasonable choice if you are converting a large batch to email or upload somewhere with a size limit. Below about 70%, compression starts to show as soft blotches in flat areas — skin tones and sky are usually where it is noticed first — so it is worth checking one converted photo at a low setting before converting the rest of the batch the same way.
Transparent areas, which are rare in camera photos but can appear in HEIC screenshots or exported graphics, are filled with white because JPEG cannot store transparency at all — there is no setting that preserves it, since the destination format is the limit, not this converter.
When a file will not convert
Every file is checked by its actual contents before conversion, not
by its name, so a file that only carries a .heic
extension without real HEIC data inside is turned away with a plain
reason rather than producing a blank or broken JPG. Three things can
go wrong once decoding starts: the photo reports dimensions the
decoder will not attempt, the HEIC data is genuinely damaged or uses
an unusual HEIF variant this decoder does not support, or decoding
takes so long that the tool gives up and stops it after three
minutes. Each case is reported as its own message rather than a
generic failure, and the file is simply skipped — nothing else in the
batch is affected.
Common mistakes
Converting a burst-mode or Live Photo HEIC and being surprised the result is a single still is expected behaviour, not a bug: this tool converts the primary image stored in the file, not every embedded frame. Assuming the JPG will be smaller than the HEIC is the other common surprise — HEIC's whole advantage over JPEG is that it stores more efficiently at the same quality, so converting to JPEG almost always costs some file size even though nothing about the visible picture gets worse.
If your files are already JPG, PNG or WebP rather than HEIC, this page will not help — try WebP to JPG or JFIF to JPG depending on the source format. If you need the photo inside a Word document rather than as a standalone JPG, see Image to Word.
Where your photos go
Nowhere. Personal photos are exactly the kind of file that should not be sent to a stranger’s server, and this converter does not need to: the decoder is downloaded to your browser like the rest of the page, and all the work happens on your device. The new JPEG does not carry over the original’s EXIF metadata, so location data recorded by the phone is not included in the converted file.
Limits
Up to 30 files of 25 MB each per batch. HEIC files holding several images, such as bursts, are converted using their primary image. Decoding HEIC in a browser is slower than opening a JPEG — a typical 12-megapixel photo takes a few seconds on a laptop and longer on an older phone. AVIF files share a container with HEIC but are a different format and are not accepted here.