HEIC, EXIF and the location data in your photos
What is stored in an ordinary iPhone photo
Every photo carries an EXIF block — a small metadata section written by the camera at the moment of capture. It is not hidden or encrypted; it is simply invisible in most file browsers.
| Field | What it says | Why it matters |
|---|---|---|
| DateTimeOriginal | Capture time to the second | Establishes when you were there |
| GPSLatitude / GPSLongitude | Position, typically within 10 m outdoors | Places you at a street address |
| GPSAltitude, GPSSpeed | Height and movement at capture | Can reveal a floor or a moving vehicle |
| Make / Model | Apple, iPhone 15 Pro | Narrows the device, and often the owner |
| LensModel, ExposureTime, ISO | Optical fingerprint of the shot | Links photos taken by the same camera |
| Software | iOS version at capture | Dates the device state |
What a HEIC adds on top
None of this is unusual for a modern camera file, but it is more data than most people assume is travelling with a photo they forward in a chat.
- A depth map. Portrait mode stores a separate greyscale depth channel, which is effectively a 3D scan of the scene.
- An HDR gain map. Extra highlight data layered over the base image.
- Apple MakerNotes. A vendor-specific block with settings the standard EXIF fields do not cover.
- A video track, for Live Photos — a second or two of footage around the still.
Why it matters in practice
The pattern is the same each time: the photo is fine, the metadata attached to it is not.
- A marketplace listing. Photos of a sofa taken at home, uploaded to a resale site, carry the coordinates of the room the sofa is in.
- A document sent to an agent. A passport or ID photographed on a kitchen table and sent to a visa service includes the address of that kitchen, plus the exact time it was photographed.
- A photo posted in a forum. Hobby communities, local groups and comment sections all accept image uploads; most do not strip metadata before storing the original.
Three ways a file can lose its metadata
Not every "safe" route actually strips anything. These behave differently, and the difference is the whole point:
| Route | What happens to the metadata | Verdict |
|---|---|---|
| Browser converter using a canvas | New file written from pixels; no EXIF carried over | Strips everything, including the date |
| Desktop converter that copies tags | Metadata block is transferred to the output | GPS survives — check before sending |
| iOS share sheet with Location off | Location removed from the shared copy, other fields kept | Good default for sending to people |
| Screenshot of the photo | New capture, no original metadata | Strips everything, but loses resolution and colour |
| Uploading to a social platform | Varies — most large platforms strip on upload, DMs often do not | Never rely on it |
Checking a file yourself
If the GPS fields are populated, treat the file as identifying a location. If they are empty, the photo was either taken with location services off or has already been through a converter.
- macOS: open the image in Preview → Tools → Show Inspector → GPS tab.
- Windows: right-click → Properties → Details, and look for Latitude and Longitude.
- Command line:
exiftool -GPSLatitude -GPSLongitude -DateTimeOriginal photo.heicprints just those three fields. - Anywhere: the ExifTool tag reference explains what each field means if you are unsure.
Strip everything, or keep the date?
Full stripping is the safest default for anything public, but it is not always what you want. Photo archives, insurance claims and construction documentation all depend on the capture date surviving.
Browsers cannot selectively remove one EXIF field — the canvas API writes a clean image with no metadata at all. Per-field control needs a tool that can rewrite the EXIF block, such as ExifTool or a desktop utility with that option. We do not offer it yet; when we do, it will be opt-in rather than the default.
Practical habits
- Turn off location for the Camera app unless you actually need geotagged photos: Settings → Privacy & Security → Location Services → Camera → Never.
- Before posting a photo of your home, workplace or documents, run it through a converter that produces a clean file.
- When sending by chat or email, use the share sheet and switch Location off — it is faster than converting and keeps the original intact.
- Assume a crop does not help. Cropping in Photos keeps the metadata; only a screenshot or a re-encode removes it.
- Check one file from a batch. If the first photo has GPS, assume the rest do too — the setting is per-app, not per-photo.
Common questions
Does converting HEIC to JPG remove GPS data?
Through a browser converter that re-encodes via canvas, yes — the output has no EXIF block at all. Through a desktop converter that copies metadata, no. The tool decides, not the format.
Does iCloud strip location from shared photos?
A shared iCloud album keeps the metadata for people in the album. A shared link behaves differently depending on the options chosen at share time, so treat it as unchanged unless you verified otherwise.
Do Instagram and Facebook remove EXIF on upload?
Large platforms generally strip metadata from public posts, but this is a policy rather than a guarantee, it changes over time, and it does not reliably apply to direct messages. Strip it yourself if it matters.
Does cropping a photo remove the location?
No. Cropping in the Photos app keeps the EXIF block, including the original GPS coordinates. Only a screenshot or a re-encode through a canvas produces a file without it.
Can the location be recovered after conversion?
Not from the JPG — the data is not there. But the original HEIC still has it, so delete or keep that file deliberately rather than assuming the converted copy replaced it.
Sources
- ExifTool: EXIF tag reference — the full list of fields, including GPS and MakerNotes
- Wikipedia: Exif — how the metadata block is structured and where it is stored
- Wikipedia: HEIF — depth maps, gain maps and image sequences in the container
- Apple: Photos User Guide — where to inspect metadata and control location sharing on macOS