Why iPhone photos won't open on Windows, and every way to fix it
HEIC is a better format than JPEG and a worse experience on a PC. What the format is, why Windows balks, the free fix, and how to stop the problem at the source.
Someone AirDrops you a photo, or you copy a folder off an iPhone, and Windows shows a blank icon and the message that it cannot open the file. The file ends in .heic. This is the single most common “what is this file” problem of the last few years, and it has a clean explanation and several clean fixes.
What a HEIC file is
HEIC is a photo stored in the High Efficiency Image Format container using HEVC (H.265) compression, the same codec used for 4K video. Apple made it the default camera format in 2017 because the files are about half the size of equivalent JPEGs and can hold things JPEG cannot: 10-bit colour, HDR, Live Photo motion, depth maps, and non-destructive edits.
Technically it is the better format. The problem is not technical.
Why Windows does not open it
HEVC is patented, and decoding it requires a licence. Apple pays for one on every device it sells. Microsoft does not bundle the decoder with Windows; it sells it in the Microsoft Store for 99 cents as “HEVC Video Extensions”, and many PC manufacturers license it for their machines so it appears pre-installed. Chrome and Firefox refuse HEVC for the same reason, which is why HEIC does not display in most browsers either.
So a fresh Windows install can read the HEIF container (that part is free) but cannot decode the picture inside it.
Fix 1: install the decoder (free, usually)
In the Microsoft Store, search for HEVC Video Extensions from Device Manufacturer. On most PCs this installs at no cost. If the Store shows only the paid listing, it is 99 cents, once. Install the free HEIF Image Extensions as well if Windows does not already have it.
After that, Photos opens HEIC, Explorer shows thumbnails, and Paint can open and re-save the files as JPEG or PNG.
Fix 2: convert the files
If you would rather have JPEGs, or you need to send the photos somewhere HEIC will not go:
- On the PC, after fix 1: open in Photos, Edit, Save as, choose JPEG. For batches, IrfanView (File, Batch Conversion) or the free CopyTrans HEIC tool, which adds a right-click Convert to JPEG without needing the Store extension at all.
- On the iPhone, before sending: share through Mail, Messages or most apps and iOS converts to JPEG automatically. Or in the Files app, use the Shortcuts app’s Convert Image action for a batch.
- From the command line, on any system with ImageMagick:
magick photo.heic -quality 92 photo.jpg
for f in *.heic; do magick "$f" -quality 92 "${f%.heic}.jpg"; done
Convert at quality 90 or higher. HEIC to JPEG is lossy to lossy, and a low setting throws away detail twice.
Fix 3: stop the phone producing them
Two settings on the iPhone, depending on what you want.
Keep shooting HEIC, convert on transfer. Settings, Photos, scroll to Transfer to Mac or PC, choose Automatic. Photos copied over USB arrive as JPEG; the originals on the phone stay HEIC and keep their quality and space savings. This is the best option for most people.
Shoot JPEG from now on. Settings, Camera, Formats, choose Most Compatible. Photos take about twice the space and lose HDR, but nothing ever needs converting again. Existing photos are unaffected.
The video version of the same problem
iPhones record video in HEVC too, in .mov files, with the same licensing situation. The HEVC Video Extension from fix 1 solves it; so does the same Transfer to Mac or PC setting, which converts video to H.264 on copy. A .mov that plays audio but shows no picture on Windows is almost always this.
What about Android, Google Photos and the web?
Android has decoded HEIC natively since version 10, and Samsung phones shoot it as an option. Google Photos displays it on every platform and converts on download. For the web, HEIC is a dead end: no major browser except Safari renders it. Convert to JPEG for compatibility or AVIF for a modern format that every browser does support; AVIF is the royalty-free sibling of HEIC, same container, different codec.
Checking a file you are not sure about
A .heic file that still will not open after installing the extensions may not be HEIC at all. The first bytes tell you: a real one has ftypheic (or ftypmif1) at offset 4, and the detector will confirm it in a second without uploading anything. A file that turns out to be a JPEG, a PNG or an HTML page has simply been misnamed somewhere along the way, which happens often with downloads and cloud exports.
The short version
- Install the free HEVC and HEIF extensions from the Microsoft Store.
- Set the iPhone’s Transfer to Mac or PC option to Automatic.
- Convert any existing files you need to share with
magickor CopyTrans HEIC.
HEIC is not going away, and after step 1 it stops being a problem.