How to remove metadata from an image (all of it, not just the location)
Short answer: to remove metadata from an image completely, rebuild the file from its pixels or strip every block with a tool like ExifTool, then check the result. The quick options in your phone or file manager mostly remove location only. Camera model, timestamps, edit history and AI provenance stay behind.
That distinction is the whole problem. Most guides treat "remove metadata" as one action. In practice each method removes a different subset, and you can't tell which from the button label.
What's actually in the file
An image file carries several separate metadata blocks, and each one is written by different software:
- EXIF: written by the camera or phone. GPS coordinates, capture time, device model, lens, often a camera serial number, and sometimes an embedded preview thumbnail.
- XMP: written by editors and some phones. Edit history, software names, and document IDs that can link exports back to one original.
- IPTC: captions, creator names, copyright and keywords, mostly from photo-management software.
- PNG text chunks: free-form text fields. AI image tools often keep the full prompt and settings here (Stable Diffusion and ComfyUI do).
- C2PA: a signed provenance record, increasingly added by AI generators and some cameras. How Content Credentials work.
A method only "removes metadata" if it removes all of these. Most don't.
What the common methods actually remove
| Method | What it removes | What survives |
|---|---|---|
| iPhone: Share → Options → Location off | Location, for that one share | Everything else in EXIF and XMP |
| iPhone/Mac Photos: Adjust Location → No Location / Image → Location → Hide Location | Location as Photos shows it | Everything else |
| Windows: Properties → Details → Remove Properties and Personal Information | Properties Windows knows how to edit | Anything outside its property list. Results vary by format |
| Cropping, resizing, filters | Nothing | All of it |
| Converting HEIC to JPG | Depends on the converter. Many copy it all | Often GPS included |
| Screenshotting the photo | The original's metadata | The screenshot's own metadata, plus resolution |
ExifTool -all= | Every block it can write | Nothing you need, if run correctly |
| Re-encoding from pixels (canvas, Pillow copy) | Every block | Nothing, but lossy formats lose a little quality |
The Apple steps come straight from Apple's personal safety guide, and that guide is explicit that they cover location. They're useful if location is the only thing you care about, and we cover them step by step for iPhone and Android. They are not a general metadata wipe.
Method 1: rebuild the image from pixels (any device)
The most thorough approach is also the simplest idea. Decode the image to a plain grid of pixels, then encode a fresh file from that grid. A bitmap has no place to store EXIF, XMP, IPTC, text chunks or a C2PA manifest, so none of them make it into the new file. That includes the embedded thumbnail, which lives inside EXIF.
This is how our metadata cleaner and the GPS remover work. The image is drawn to a <canvas> in your browser and re-encoded, and the file is never uploaded anywhere. That matters, because an online cleaner that uploads your photo has received the original with every field intact before it hands you back a clean copy.
Two trade-offs to know:
- JPEGs are re-encoded. Our tool saves JPEG at quality 0.95, so the result is a new encode, not bit-identical to the original. For sharing, the difference is very hard to see. For archival masters, keep the original and share the cleaned copy.
- Formats: JPEG, PNG and WebP. HEIC isn't accepted, so convert iPhone photos first. The converted file still carries the metadata until you clean it.
If an AI tag or Content Credentials label is the specific thing you want gone, the AI info remover uses the same pixel rebuild.
Method 2: ExifTool (desktop, batches, lossless)
ExifTool is the free reference tool for reading and writing image metadata on Windows, macOS and Linux. It removes metadata without touching the pixel data, so there's no re-encode:
exiftool -all= photo.jpg
Things worth knowing before you run it on a folder:
- By default ExifTool keeps a backup named
photo.jpg_original, and that backup still has all the metadata. Delete it, or add-overwrite_originalonce you trust the command. -all=also removes the ICC colour profile, which can shift colours in wide-gamut photos. The ExifTool FAQ suggests keeping it:exiftool -all= --icc_profile:all photo.jpg.- Don't run
-all=on RAW files. The ExifTool FAQ warns that some formats need part of their metadata just to display the image. - For a folder:
exiftool -all= -ext jpg -ext png -overwrite_original ./to-share/.
Method 3: Windows' built-in remover
Right-click the image, open Properties → Details, and click Remove Properties and Personal Information. Choose Create a copy with all possible properties removed. The copy appears next to the original, and the original is unchanged.
It's convenient, but "all possible" means all the properties Windows itself can edit, not every block in the file. Treat it as a first pass and check the copy before you send it.
Check that it worked
Whatever you used, inspect the file you are about to send, not the one you started with. Editing after cleaning puts fields back. Editors write their own Software and XMP history tags on save, so clean last.
exiftool -a -G1 cleaned.jpg
A clean file shows only structural fields like file size, dimensions and encoding. No GPS, no Make or Model, no XMP, no C2PA. No terminal? The image metadata viewer runs in your browser and lists what it finds.
What removing metadata doesn't protect against
Stripping metadata removes the hidden data. It does nothing about the visible picture, and that is where most identification actually happens.
- The pixels still show what they show. A street sign, a window view, a reflection, a face or a uniform can locate or identify you with no EXIF at all.
- The account still posts it. The platform knows who uploaded the file and when, and logs that regardless of what the file contains.
- Copies you already shared keep their metadata. Cleaning your local file doesn't reach a copy you emailed last week or a cloud album shared with a link.
- Pixel watermarks aren't metadata. Some AI generators embed watermarks in the image content itself. A metadata strip, including ours, doesn't remove those.
- Platforms don't reliably do it for you. Some strip EXIF on the copies they serve, others keep it, and messaging apps vary by how you send. Which platforms strip what.
The short version
The location toggle on your phone removes location. Windows' remover removes what Windows can edit. For a file with no metadata at all, rebuild it from pixels with a local tool, or run exiftool -all= and delete the _original backup. Then check the exact file you're about to share, and remember that a clean file can still give you away through what it shows.