How to Remove GPS Location From Photos Before You Share Them

What a phone actually stores in a photo, how lossless metadata stripping differs from re-encoding, and a verified routine for checking and cleaning location data in batches.

Guide Published 2026-11-09

A photo is not just pixels. Most phone cameras write a second layer of data alongside the image: the camera model, the capture time, exposure settings, sometimes a serial number, and — when location services are on — the latitude and longitude where the shutter fired, often accurate to a few metres.

That is useful in a photo library and unnecessary in a listing, a marketplace message, or a form. This guide shows how to look at what is actually embedded, how to remove it without touching the image, and where the limits of that removal are.

The measurements below were taken on 2026-10-10 in Chromium using the tool’s binary segment reader, and are saved in docs/test-results/remove-exif.json. The test photo is a synthetic fixture, so the tag values are placeholders; the structure is the same as a real camera file.

What the metadata block contains

A JPEG is a sequence of segments. It starts with a start-of-image marker, followed by blocks that describe the image, and ends with the compressed scan data — the actual pixel information. The metadata lives in named segments before the scan:

  • APP1 carries EXIF, which is where GPS coordinates, camera make and model, timestamps, and orientation usually sit. XMP data can also live here.
  • APP2 is often used for colour profiles and auxiliary data.
  • APP13 can carry Photoshop resources such as IPTC captions and keywords.
  • Comment segments hold free text some cameras and editors write.

None of these change the pixels. That is the key fact behind lossless stripping: the tool can cut the metadata segments out of the file and leave the compressed scan data untouched.

See the tags before you delete them

The tool includes an inspector that reads the header and lists what it finds, before any cleaning happens. In our fixture it reported four tags: the camera make, the camera model, the capture date, and a GPS latitude of 37° 46’ 30.0”.

Do that check first, for two reasons. You may discover data you did not know was there — a serial number, an editing history, a caption. And you may discover data you want to keep, such as a capture date that a client or a form expects. Stripping is one-way: the cleaned file does not carry the block, and the original is the only copy that still does.

Lossless for JPEG, re-encoded for everything else

The tool treats formats differently, and the difference matters.

JPEG is cleaned by binary segment excision. The reader walks the marker boundaries from the start-of-image marker, removes the APP1, APP2, APP13, and comment segments, and writes the remaining bytes back out. The compressed image data is copied, not decoded, so the pixels are bit-for-bit identical to the original. In our fixture, a 312-byte file became 134 bytes with the image data unchanged — a 178-byte reduction from metadata alone. On a real photo, the metadata is usually a small fraction of the total size; the point is not the saving but the fact that no quality is lost.

PNG and WebP cannot be cleaned the same way, because their metadata is structured differently. The tool falls back to drawing the image in a canvas and re-encoding it. That removes the metadata, but it also re-encodes the pixels, so the result is a new image rather than a byte-identical copy. For a standard 8-bit PNG the re-encode is usually visually lossless, though a 16-bit or colour-managed PNG can shift slightly, because the canvas works at 8 bits per channel. WebP is lossy to begin with, so this is another generation on top. Neither format gets the byte-perfect treatment that JPEG does.

One caveat applies to both paths. Orientation is often stored as an EXIF tag rather than baked into the pixels. Remove the block and a photo that relied on the tag can appear rotated. Open the cleaned file and confirm it is upright before you send it; if it is not, rotate it in an editor and save that version.

The routine for a batch of photos

  1. Start from the originals. Work on copies, or keep the originals untouched — the cleaned output is written as a new download.
  2. Drop the photos into Remove EXIF Data. Multiple files at once is fine.
  3. Read the tag list. Confirm what will be removed, and note anything you need to keep before it is gone.
  4. Clean and download. Files download individually, or as one ZIP if you processed a batch.
  5. Inspect the output. Drop a cleaned file back into the tool and check that the tag list is empty. Open it and confirm the orientation is right.

Batch size is limited by device memory, not by a quota. In our limit runs, a 50 MB image batch completed in about 1.17 seconds and a 100 MB batch in about 1.21 seconds. A 200 MB synthetic file was rejected with a message about the 150 MB recommended in-browser limit. Batches above 100 MB raise a warning you can skip; phone browsers warn earlier.

What stripping does and does not achieve

It removes the metadata layer: coordinates, camera details, timestamps, embedded thumbnails where they are stored in the stripped segments. That is the part most people mean when they say “remove location from a photo”.

It does not remove information that is visible in the picture itself. A street sign, a house number, a landmark, or the view from a window can identify a place without any metadata at all. If the concern is that a photo reveals where you live, look at the photo, not just its header.

It also cannot recall copies. If you have already posted the original, the coordinates may be in someone else’s download, a cache, or a screenshot. Cleaning the file you are about to share prevents the next disclosure; it does not undo the last one. Treat the original as compromised if it was public with GPS intact.

Finally, it applies to images. Video files carry their own metadata and are outside the scope of this tool.

Where this fits in a normal workflow

If a photo is going to a form with a size limit, do the size work first and the privacy work last. Resizing and compressing with Compress Image produces a new file, and stripping the final version guarantees the metadata does not survive a step you forgot about. Our guide to getting a photo under 100 KB covers the size levers in detail.

If the photo is a HEIC from an iPhone, converting it with Convert HEIC to JPG already drops the metadata block, because that pipeline re-encodes from raw pixels. You can still run the output through the inspector to confirm nothing was carried over.

And if you want proof that the cleaning happened locally, the Network panel check is the same as for any other tool here: clear the panel, drop a photo, clean it, and watch for upload requests. The saved test run for this tool recorded zero external HTTP requests. The full walkthrough covers Chrome, Firefox, and Safari, plus the offline test.

A photo with GPS is a record of where you were. Removing it is a few seconds of work, and it is worth doing before the file leaves your device rather than after.

Tools used in this guide