What is HEIC?
HEIC is the format an iPhone saves photos in by default: HEVC-compressed images inside a HEIF container, roughly half the size of the equivalent JPG, and unreadable by most software that is not made by Apple.
HEIC at a glance
- MIME type
- image/heic, image/heif
- File extensions
- .heic, .heif
- Specification
- ISO/IEC 23008-12 (HEIF), with HEVC (ISO/IEC 23008-2) as the image codec
- Compression
- Lossy, using HEVC intra-frame coding. A lossless mode exists but is rarely used.
- Transparency
- Supported by the container, though camera photos do not use it.
- Animation
- Supported — live photos and image bursts are stored as multi-image HEIC files.
- Colour depth
- Up to 10 bits per channel, with HDR gain maps on newer iPhones.
- Metadata
- Full EXIF, including GPS coordinates, plus Apple-specific extensions.
- Support
- Native on iOS 11 and later and on recent macOS. No mainstream browser decodes HEIC. Windows needs a codec from the Microsoft Store; many websites and upload forms reject it outright.
Strengths and weaknesses
- About half the size of a JPG at the same visible quality.
- Keeps 10-bit colour and HDR information a JPG would flatten.
- Stores live photos, depth maps and bursts in a single file.
- Effectively unusable outside the Apple ecosystem without conversion.
- Encumbered by HEVC patent licensing, which is why browsers never adopted it.
- Carries detailed location metadata that most people do not intend to publish.
Why your iPhone photos will not upload anywhere
Since iOS 11 the camera saves in HEIC unless told otherwise. The photo looks fine on the phone because the operating system decodes it, but the moment it reaches a browser, a Windows machine or a web form, nothing there knows how to read it.
You can switch the camera back to JPG under Settings → Camera → Formats → Most Compatible. For photos you have already taken, converting to JPG is the practical fix.
The patent problem, briefly
HEVC — the codec inside HEIC — is covered by patent pools that require licensing for decoders. That is why the standard image library used across most Linux and server software ships without HEIC support, and why browsers chose the royalty-free AVIF instead.
It also means converting HEIC requires a separately installed decoder rather than being built in, which is worth knowing if you are wondering why so few tools handle it.
Working with HEIC files
Convert or edit a HEIC file
Formats people compare this with
- JPGJPG (also written JPEG) is a lossy image format that discards visual detail the eye is least likely to notice, which is why photographs stored as JPG are typically 5–15 times smaller than the same image stored losslessly..
- AVIFAVIF stores a still image using AV1 video compression inside a HEIF container.
- PNGPNG is a lossless image format: it stores every pixel exactly as it was saved, supports a full alpha transparency channel, and never degrades no matter how many times the file is opened and saved again..