Saltar para o conteúdo

HEIC: why your iPhone photos will not open anywhere else

7 min read Formats Updated August 2026

You send a photo from your iPhone to a colleague and it arrives as a file nothing will open. You upload one to a web form and it is rejected. The photo looks perfectly fine on the phone that took it, which makes the failure feel arbitrary. It is not — the file is HEIC, and most of the computing world still cannot read it.

This guide explains what HEIC is, why Apple switched to it, exactly where it breaks, and how to get out of it without losing what you paid for in quality.

What HEIC actually is

HEIC stands for High Efficiency Image Container. The container is HEIF; the image data inside it is normally encoded with HEVC, also called H.265 — a video codec. That is the whole trick: still photos are compressed with a modern video codec rather than with a 1992 still-image codec, and video codecs have had thirty more years of research poured into them.

The result is roughly half the file size of a JPEG at the same visual quality. On a 128 GB phone that shoots 12-megapixel photos, halving the size of every image is not a rounding error — it is thousands of extra photos.

HEIC also carries things JPEG structurally cannot: 10-bit colour instead of 8-bit (so skies band less), transparency, image sequences such as Live Photos, and non-destructive edit data. When you crop a photo on an iPhone and can later press Revert, that is the container holding both the edit and the original.

Why it fails everywhere else

Apple made HEIC the default in iOS 11 in 2017. Support elsewhere has been slow, and the reason is licensing rather than difficulty. HEVC is covered by a large, fragmented set of patents administered by several separate licensing pools. Shipping a decoder can mean paying more than one of them, which is a straightforward business decision for Apple and an unattractive one for a free operating system, a browser vendor, or a small web service.

So the pattern you see is not random. Windows can open HEIC only if you install a codec from the Microsoft Store, which for a period was a paid item. Android added support in version 10, but individual apps still refuse it. Most websites reject it at upload because their server-side image library was built before it existed. Older photo software and print kiosks frequently do not know what it is at all.

The confusing part for most people is that the photo works flawlessly on the device that took it and on iMessage, so it does not feel like a broken file. It is a perfectly valid file that most software has chosen not to read.

  • iPhone and Mac: opens natively.
  • Windows 10/11: needs the HEIF and HEVC extensions installed.
  • Android 10 and later: system support, but app support varies.
  • Web upload forms: usually rejected outright.
  • Print shops and older editors: frequently unsupported.

The setting that prevents the problem

If you would rather not deal with this again, the iPhone has a switch. Under Settings → Camera → Formats, 'High Efficiency' shoots HEIC and 'Most Compatible' shoots JPEG. Choosing the second one costs you roughly double the storage per photo and the 10-bit colour depth, and buys you files that open anywhere.

There is a second, subtler setting worth knowing. Under Settings → Photos, at the very bottom, 'Transfer to Mac or PC' can be set to 'Automatic' or 'Keep Originals'. On Automatic, the phone converts HEIC to JPEG as it transfers over a cable. On Keep Originals, it hands over the raw HEIC and you get the problem back. Many people have this set to Keep Originals without knowing.

Neither setting changes photos you have already taken, which is the situation most people are actually in.

Converting without wasting the quality you paid for

Converting HEIC to JPEG means decoding the HEVC data and re-encoding it as JPEG. Because JPEG is lossy, this is a generational loss — you are compressing already-compressed data. In practice the loss is invisible at a sensible quality setting, but it is real, and it means you should convert from the original once rather than repeatedly converting the converted file.

Two things are genuinely lost and cannot be recovered by any converter. The first is colour depth: HEIC's 10-bit channel becomes JPEG's 8-bit, which can introduce faint banding in large smooth gradients such as a clear sky at sunset. The second is anything that depended on the container — Live Photo motion, depth maps used for portrait blur, and the ability to revert edits. A converted file is a flat, final picture.

If you want none of that loss, convert to PNG instead. It is lossless, so the pixels survive exactly, at the cost of a file several times larger than the HEIC you started with. That is the right choice for a photo you intend to edit further, and the wrong one for an email attachment.

  • Converting for a web form or email → JPEG at high quality.
  • Converting because you will edit it further → PNG, or keep the HEIC as your master.
  • Converting a large batch for storage → JPEG; the size saving is the point.
  • Never convert a file that was already converted — go back to the original.

Where the conversion happens matters

Most 'HEIC to JPG' results are upload-based services. Your photo travels to a server, is converted there, and comes back. That is a meaningful thing to agree to for a camera roll, which is typically the most personal set of files a person owns, and the photos usually still carry the GPS coordinates of where each was taken.

A browser can do this work itself. Decoding HEIC in a page requires a WebAssembly build of libheif, which is a few megabytes and then cached — after that the conversion is local, and the file never leaves the machine. Our HEIC converter works this way, which is also why it keeps working with the network switched off.

The practical tell for any converter you are considering: if it can convert with the connection dropped, the work was local. If it cannot, your photos went somewhere.

Batch converting a camera roll

The common real task is not one photo, it is four hundred from a holiday. A few things make that go smoothly.

Convert from the originals in one pass rather than in several rounds, so you take the generational loss once. Keep the HEIC files until you have confirmed the JPEGs are what you wanted — deleting the masters first is the one irreversible step in the process. And if the destination is a web upload with a size cap, convert first and compress second, as separate decisions; a converter that silently shrinks your images to hit a size target has made a quality choice on your behalf.

If the photos are going somewhere public, this is also the natural moment to strip metadata, since you are rewriting every file anyway.

Perguntas frequentes

Does converting HEIC to JPG lose quality?
Slightly, and unavoidably — JPEG is lossy, so re-encoding already-compressed data is a generational loss. At a high quality setting it is not visible. What is genuinely lost is 10-bit colour depth, Live Photo motion and depth data, none of which JPEG can store. Convert to PNG if you need the pixels preserved exactly.
Why does my HEIC photo open on my phone but not my laptop?
Because the file is fine and your laptop lacks a decoder. HEIC uses the HEVC codec, which carries patent licensing costs, so Windows requires an extension from the Microsoft Store and many applications simply never added support.
Can I stop my iPhone saving photos as HEIC?
Yes — Settings → Camera → Formats → Most Compatible. New photos will be JPEG. Existing HEIC photos are unaffected and still need converting.
Is it safe to convert HEIC photos online?
It depends entirely on whether the conversion runs on a server or in your browser. Server-based converters receive your photos, which for a camera roll carrying GPS data is worth thinking about. A browser-based converter decodes locally and uploads nothing — you can verify this by turning off your network and watching it still work.

Tools mentioned in this guide

Keep reading