HEIC EXIF Viewer: Read HEIC Metadata
A HEIC EXIF viewer lets you view HEIC metadata without uploading your photos: where the EXIF lives in ISOBMFF boxes and why HEVC decoding is needed.
HEIC files do contain EXIF metadata — you can read it, but you need a tool that understands the container. HEIC is part of the HEIF family (ISO/IEC 23008-12), an ISO Base Media File Format container that holds HEVC-coded images plus a full metadata payload. Inside a typical iPhone HEIC, EXIF sits in a standard Exif image file directory inside the file’s meta box, alongside item-level properties that JPEG never had, such as irot rotation and colr colour information. A browser can parse that metadata without decoding a single pixel, which is why HEIC EXIF viewing works in any modern browser — but rendering the picture needs a HEVC decoder that only some browsers ship.
What HEIF and HEIC actually are
HEIF (High Efficiency Image File Format) is the container specification: a box-based structure inherited from ISOBMFF, the same family MP4 uses, in which one or more items (images, sequences, depth maps, alpha masks, gain maps) are described by metadata boxes. HEIC is the HEIF brand used for still images whose pixels are coded with HEVC (High Efficiency Video Coding), usually with the heic or heix brand in the ftyp box.
The practical consequence: “HEIC” is not a format with its own bespoke metadata. It carries ordinary EXIF, XMP, and ICC data in a different wrapper, and it may also hold grids (a tiled image assembled from smaller tiles), sequences, or auxiliary layers. Any tool that understands TIFF/IFD structures can read the EXIF inside a HEIC, provided it can find the item.
Why Apple made HEIC the default
HEIC became the default capture format on iPhone with iOS 11 in 2017. The reason was efficiency: HEVC roughly halves the storage of a JPEG at the same perceptual quality, and it carries more than 8 bits per channel, which is what makes HDR capture possible without a separate file. Later revisions added HDR gain maps (iOS 16.1 onward), where a main image is paired with an auxiliary image carrying gain-map parameters. The capture metadata still lives in a normal Exif IFD.
Where the EXIF lives inside a HEIC file
Abridged box layout of a typical HEIC:
ftyp (brand: heic / heix / mif1)
meta
├── hdlr, pitm primary item id
├── iloc item locations (where each item's bytes are)
├── iinf → infe item info: "Exif" item, its type and name
├── iref references (e.g. dimg links a grid to its tiles)
└── iprp
├── ipco item properties: ispe, pixi, irot, imir, colr, hvcC
└── ipma which properties apply to which item
The Exif item’s payload follows the JPEG convention closely: a 4-byte offset to the start of the TIFF header, then the standard TIFF/EXIF block with IFD0, an Exif SubIFD, and a GPS IFD. A HEIC’s EXIF is therefore byte-compatible with the EXIF in a JPEG, and the same parsers work — which is exactly what a browser-based HEIC EXIF viewer relies on.
The item-level properties are the genuinely new part: irot (rotation in 90° steps, counter-clockwise) and imir (mirror transform) for orientation; colr for colour information, either an nclx record of primaries, transfer function and matrix coefficients, or a reference to an embedded ICC profile; ispe for the image’s true pixel dimensions; auxC marking alpha, depth, or gain-map layers; and hvcC, the HEVC decoder configuration record.
A trap worth knowing: HEIC can express orientation in both the EXIF Orientation tag and an irot property. Tools that honour both can rotate twice and show you an image on its side.
Why a browser cannot simply open a HEIC
HEVC is a video codec with patent and licensing constraints, so support is uneven: Safari on macOS and iOS decodes HEIC natively, Chromium-based browsers do not reliably decode it in an <img> element (though some builds can decode HEVC through WebCodecs where the platform offers a decoder), and Firefox has no general HEVC support.
That splits HEIC tooling in two. Metadata inspection needs no decoder at all — the boxes are a simple, well-specified binary structure, so parsing EXIF, irot, colr, and dimensions works in any browser with a FileReader and an ArrayBuffer view. Pixel rendering needs a real HEVC decoder, such as a WASM build of libheif (with libde265 or an ffmpeg-derived decoder), CanvasKit, or WebCodecs where available: tens of megabytes of code and a noticeable cold start, which is why many web tools that claim to “open HEIC” are really only reading its metadata.
The same split applies to a sanitised export: you can always produce a metadata-free result if the pixels can be decoded, and a metadata audit if they cannot.
What you will find inside an iPhone HEIC
| Field | Typical location | Notes |
|---|---|---|
DateTimeOriginal |
Exif SubIFD | Capture time, with OffsetTimeOriginal for the zone |
| GPS latitude / longitude | GPS IFD | Present when Camera location access is enabled |
Make / Model |
IFD0 | “Apple” and the device model |
LensModel |
Exif SubIFD | Descriptive string, e.g. focal length and aperture of a lens |
FocalLength, FNumber, ExposureTime, ISOSpeedRatings |
Exif SubIFD | Exposure triangle and optics |
Orientation |
IFD0 | Legacy orientation flag, often mirrored by irot |
Software |
IFD0 | The iOS build that wrote the file |
| Rotation / mirror | irot / imir items |
Item-level transform, not an EXIF tag |
| Colour information | colr item |
nclx primaries and transfer, or an ICC profile |
Because Make, Model, Software, and LensModel are all present, an iPhone HEIC tells you a great deal: the device, the OS version, the lens, and where the shot was taken. Treat it as sensitive.
Viewing HEIC metadata in your browser
- Open the freexifdata EXIF viewer.
- Drop the
.heicor.heiffile onto the upload area. - The container is parsed in memory: EXIF, GPS, camera, lens, exposure, and timestamps are grouped into the standard sections, and the GPS photo checker will show coordinates if they exist.
- Export a clean copy with remove EXIF data to get a sanitized JPEG or PNG with the metadata block gone.
Honest limitation: the metadata audit works in every modern browser because it only needs the file bytes. The pixel export depends on whether the browser can decode HEVC — Safari can, most Chromium and Firefox builds cannot. Where decoding fails you still get a complete metadata report, and the practical route is to convert the file to JPEG first. The EXIF tag reference helps interpret what comes back, particularly the camera model, lens model, date time original, orientation, and software entries.
Converting HEIC to JPEG for metadata work
Converting is sometimes the fastest way to get a file that any tool can open, and it flattens the HEIC-specific items into plain EXIF:
- macOS — Preview (
File → Export) orsips -s format jpeg input.heic --out output.jpg. - Command line —
heif-convertfrom libheif, orffmpeg -i input.heic -c:v libheif output.jpgwith an ffmpeg build that includes the HEIF demuxer. - ImageMagick —
magick input.heic output.jpg, provided the build was compiled with a HEIC delegate. - Windows — the Photos app can open and export HEIC; GIMP with a plugin also works.
- Online converters — they work, but you upload your photo, coordinates and all, to somebody else’s server, which defeats the purpose of checking the metadata.
Two things to know about conversion: rotation is usually baked into the pixels, so the resulting JPEG is upright and may have no Orientation tag at all. And EXIF is not copied over by default in most converters, so add an explicit “keep metadata” option and re-inspect the result.
Cautions
- HEIC is a moving target: the container spec is stable, but vendors keep adding item types, and the HDR gain-map structure is not universally handled by third-party parsers.
- Any tool showing a HEIC preview in Chrome or Firefox is bundling a decoder — check what it downloads before you trust it with an unpublished photo.
- Sanitising a HEIC by re-encoding is only possible if the pixels can be decoded. In browsers without HEVC support, convert first and sanitise the JPEG instead.
- Verify the result: run the exported file through the EXIF viewer and check the field count is zero.
Related guides
What is EXIF Data? Photo Privacy Guide
Learn what EXIF data is, what information your camera and smartphone embed in every photo, the hidden privacy risks, and how to safely inspect and remove it.
7 min readRAW EXIF Viewer: CR2, CR3, NEF, ARW, DNG
A RAW EXIF viewer reveals camera, GPS and MakerNote data inside CR2, CR3, NEF, ARW, DNG and RAF files, plus why browsers cannot decode RAW pixels.
7 min readfreexifdata vs ExifTool: Which Is Better?
Compare freexifdata vs ExifTool: a zero-install browser EXIF viewer against Phil Harvey's command-line gold standard, feature by feature, honestly assessed.
8 min readDoes Instagram Strip EXIF Data?
Does Instagram Strip EXIF Data? Yes for feed posts, carousels and Stories, but not always for document uploads. See what is removed and what survives.
7 min read