You photograph a road bike leaning against your front wall. A buyer asks for a better picture, you email the original straight off your phone, and that email now carries your street address in a form nobody had to ask for.
That is the whole problem in two sentences, and it is a lot narrower than most privacy writing makes it sound. If you want to check if a photo has GPS location data, the check takes under a minute, and for anything you posted to Instagram or Facebook the answer is almost certainly no, because those platforms threw the tags away when they re-encoded your upload.
The files that genuinely carry your position are the ones you hand over directly. Email attachments. AirDrop and Nearby Share. Cloud share links. Uploads to smaller sites that keep the original bytes. Anything sent through a chat app using the “send as document” path instead of the normal photo path.
So this post is about your own files, and only your own files. What the GPS tags look like, how to read them, how precise they actually are, where the settings live on iPhone and Android, and what to check before you hit send.
The short answer
Open the photo in a metadata viewer and look for a GPS group. If GPSLatitude and GPSLongitude are there, the file knows where it was taken. Both are stored as three numbers (degrees, minutes, seconds) with no sign, so you also need GPSLatitudeRef (N or S) and GPSLongitudeRef (E or W) to know which side of the equator and the prime meridian you are on. Sitting alongside them you will often find GPSAltitude, a UTC GPSDateStamp and GPSTimeStamp, and on iPhones a GPSHPositioningError giving the accuracy estimate in metres.
No GPS group means one of three things: location was off when you took the shot, the device has no way to get a fix, or something already stripped it.
To stop it happening again, turn geotagging off at the camera. On iPhone that is Settings, Privacy and Security, Location Services, Camera, Never. On Android it is a switch inside the camera app itself. Neither setting cleans photos you already took.
The tags that actually carry your position
EXIF keeps GPS data in its own sub-directory, the GPS IFD, separate from the block that holds shutter speed and lens focal length. That separation is why a stripping tool can sometimes remove location while leaving exposure data intact, and why a viewer that only parses the main image directory can show you a full page of camera settings and quietly miss the coordinates entirely.
The tags you will see most often:
| Tag | What it holds | Example value |
|---|---|---|
GPSLatitudeRef |
Hemisphere, N or S | N |
GPSLatitude |
Degrees, minutes, seconds as three rationals | 51, 27, 20.16 |
GPSLongitudeRef |
Hemisphere, E or W | W |
GPSLongitude |
Degrees, minutes, seconds as three rationals | 2, 35, 6.48 |
GPSAltitudeRef |
0 above sea level, 1 below | 0 |
GPSAltitude |
Metres | 62.3 |
GPSDateStamp |
Date of the fix, in UTC | 2026:03:14 |
GPSTimeStamp |
Time of the fix, in UTC | 09:12:04 |
GPSImgDirection |
Compass bearing the lens faced | 217.6 |
GPSImgDirectionRef |
T for true north, M for magnetic | T |
GPSHPositioningError |
Horizontal accuracy estimate, metres | 8 |
GPSProcessingMethod |
How the fix was obtained | GPS, CELLID, WLAN |
GPSSpeed and GPSSpeedRef |
Speed at capture, plus its unit | 0, K |
GPSDateStamp and GPSTimeStamp are worth a second look, because they are recorded in UTC while DateTimeOriginal in the main EXIF block is recorded in whatever local time the camera thought it was. Compare the two and you can often infer the time zone the photo was taken in even when no offset tag was written. That is a small thing, and it is also the kind of small thing people forget exists.
Why degrees, minutes and seconds
EXIF stores each coordinate as three RATIONAL values, and a RATIONAL in EXIF is a pair of unsigned 32-bit integers: a numerator and a denominator. So 20.16 seconds is not stored as a decimal. It is stored as something like 2016/100. Unsigned is the operative word, which is exactly why the Ref tags exist. There is no way to write a negative latitude in that structure.
Not every device fills all three slots the way you would expect. Plenty of cameras write degrees, then fractional minutes, then zero seconds: 51/1, 2736/100, 0/1. That is the same position expressed differently, and if you convert it assuming whole minutes you will land in the wrong county. Read what the file actually says rather than what the format usually says.
Location that is not coordinates
Coordinates are not the only place a location can hide. IPTC has text fields (Sublocation, City, Province-State, Country-PrimaryLocationName) that photo software and agency workflows fill in, and XMP can carry its own copy of both the coordinates and the place names. A file can have a clean GPS IFD and still say “Bristol, United Kingdom” in an IPTC field two blocks away. If you want the full picture of which standard holds what, the breakdown of EXIF, IPTC and XMP covers the division of labour properly.
Converting DMS to decimal, with the arithmetic shown
Say Tobias photographs that road bike in his front garden in Bristol and uploads it to a small classifieds site that keeps original files. His photo’s GPS block reads:
GPSLatitudeRef N
GPSLatitude 51, 27, 20.16
GPSLongitudeRef W
GPSLongitude 2, 35, 6.48
GPSAltitude 62.3 m
GPSHPositioningError 8 m
Latitude first. Divide the minutes by 60 and the seconds by 3600, then add everything to the degrees:
- 27 / 60 = 0.45
- 20.16 / 3600 = 0.0056
- 51 + 0.45 + 0.0056 = 51.4556
GPSLatitudeRef is N, so it stays positive.
Longitude next, same method:
- 35 / 60 = 0.583333
- 6.48 / 3600 = 0.0018
- 2 + 0.583333 + 0.0018 = 2.585133
GPSLongitudeRef is W, so it becomes negative: -2.5851.
Paste 51.4556, -2.5851 into any map and you are standing in central Bristol. That is the entire conversion. Degrees plus minutes over sixty plus seconds over three thousand six hundred, then a sign from the Ref tag. Southern hemisphere latitudes go negative, western longitudes go negative, and everything else stays as it is.
The 8 metre GPSHPositioningError is the phone’s own estimate of how wrong it might be. Apple writes this tag routinely, and I find it more honest than the coordinates themselves, because it tells you the fix is a circle rather than a point.
How precise is four decimal places, actually
One degree of latitude is about 111.32 km anywhere on Earth. Longitude shrinks as you move away from the equator, scaled by the cosine of your latitude, so at 51.5 degrees north a degree of longitude is roughly 69 km rather than 111 km.
| Decimal places | Latitude step | Longitude step at 51.5°N | What it pins down |
|---|---|---|---|
| 1 | 11.1 km | 6.9 km | A city |
| 2 | 1.11 km | 690 m | A district |
| 3 | 111 m | 69 m | A street |
| 4 | 11.1 m | 6.9 m | A building |
| 5 | 1.11 m | 0.69 m | A doorway |
| 6 | 11 cm | 7 cm | A paving slab |
Phone EXIF typically lands somewhere around five or six decimal places once you convert it, which looks alarmingly precise. It is not. The stored precision and the real accuracy are different things, and a consumer GPS fix outdoors with a clear sky is doing well at 5 metres. Indoors, on a Wi-Fi derived fix, it can be a hundred metres out or attributed to a router that moved house last year.
I would still treat “a building” as the working assumption. Four decimal places is enough to identify a house on a street, and that is the level that matters for the situations in this post.
What your iPhone does, and where the settings live
iPhones geotag by default, using the same location permission everything else uses. The control is per app:
Settings, Privacy and Security, Location Services, Camera. You get Never, Ask Next Time Or When I Share, and While Using the App. There is also a separate Precise Location toggle. Turn Precise Location off and the phone hands the camera a coarse fix, which is a reasonable middle ground if you like having your photos on a map but do not want street-level accuracy in every file.
Setting Camera to Never stops new photos carrying coordinates. It does nothing to the fourteen thousand photos already in your library.
The share sheet toggle almost nobody uses
Here is the control most people have never found. Open a photo in Photos, tap Share, and at the very top of the share sheet, just under the row of thumbnails, there is a small Options button. Tap it and you get toggles for Location and for All Photos Data. Switch Location off and iOS strips the GPS block from the copy it sends, whether that is AirDrop, Mail, Messages or a third-party app that accepts the share sheet.
It works well. It is also buried, easy to miss, and Apple has moved it around between iOS releases, so check for it rather than assuming last year’s position still holds. And it applies to that share only, not as a permanent setting.
One quirk worth knowing: Live Photos are a still plus a short MOV, and the video half carries its own location in a QuickTime tag (com.apple.quicktime.location.ISO6709) formatted as an ISO 6709 string like +51.4556-002.5851+062.300/. If you share a Live Photo as a Live Photo, clean the still and you have not cleaned the pair.
HEIC files are the same story. The EXIF structure inside a HEIF container holds the same GPS IFD a JPEG would. Converting a HEIC to JPEG with a tool like HEIC to JPG generally carries the metadata across rather than dropping it, so treat conversion as a format change and not as a privacy step.
What Android does, which depends on who made your phone
There is no single Android answer, because the camera app is the manufacturer’s, not Google’s. The setting exists on essentially every device; the name and the path move.
- Pixel Camera: Settings, then “Save location”.
- Samsung Camera: Settings, then “Location tags”.
- Other manufacturers use “Geotagging”, “GPS tag”, “Store location” or similar, usually under a general or advanced settings group inside the camera app.
Underneath all of them sits the system permission: Settings, Location, App permissions, then your camera app. Deny location there and the toggle in the camera app becomes moot. Android also distinguishes precise from approximate location, and an app granted only approximate location gets a fix good to a few kilometres, which is effectively useless for geotagging and therefore fine for privacy.
Google Photos adds another layer. Its sharing settings include an option to remove geolocation from items shared by link, which affects the shared view. Downloading originals from your own library is a different path and behaves differently. Verify with a test file rather than trusting a description, including this one.
The realistic risk picture
Most articles on this subject open with a stalking scenario. I think that framing does more harm than good, because it is both frightening and, for the largest platforms, wrong.
Here is what is generally true. Instagram, Facebook, X and Reddit re-encode uploaded images and serve a file with no EXIF and no GPS. LinkedIn does the same. WhatsApp and Telegram compress photos sent the normal way and drop the metadata with them. If your entire photo-sharing life happens inside those apps, your coordinates are not reaching the public through the file.
Note the careful wording: through the file. The platform still received your original upload and keeps its own copy on its own servers. Stripping the public file and forgetting the data are not the same thing, and those two ideas get conflated constantly. The full platform-by-platform picture is in the piece on what social platforms actually strip.
The real exposure sits in the boring channels:
- Email attachments, which preserve the file byte for byte.
- Cloud share links from Drive, Dropbox or iCloud, same story.
- Chat apps used in “send as document” or “send as file” mode, which deliberately bypasses compression.
- Uploads to small sites, forums and classifieds that store what you gave them.
- Files handed over on a USB stick or an SD card.
- Your own website or blog, if the CMS keeps the full-size original at a guessable URL.
None of that is dramatic. It is just where the data actually goes.
The marketplace case, which is the common one
Selling things is where this bites people, because the three ingredients line up: photos taken at home, an original file uploaded somewhere that may not strip it, and a stranger who is going to turn up in person.
Say Amara lists a dining table. She photographs it in her kitchen on a Pixel with location tagging on, uploads four shots to a local classifieds site, and adds “collection only, evenings”. The listing page shows a rough area. The photo file, if that site serves originals, shows 51.4556, -2.5851 with an 8 metre error radius. One of those is a neighbourhood. The other is her front door.
Now weigh it properly. Most large marketplaces re-encode and strip, so this often does not happen. But the smaller and more local the site, the more likely it is to just store your JPEG. And when the buyer messages to ask for “the original photo, the one on the listing is blurry”, the file that leaves Amara’s phone by email is definitely not stripped.
The fix costs her thirty seconds: strip the metadata on a copy before uploading, and send the stripped copy if anyone asks for more. She keeps the geotagged originals in her own library, where they are useful.
While you are at it, look at the picture itself. A kitchen window showing the house opposite, a delivery box with a printed label on the counter, a school jumper on a chair, a car number plate through the doorway. Metadata is the invisible half of the problem and it is usually the smaller half. Blur Face and Censor Image handle the visible half.
How to check any photo in about a minute
- Open ToolFiddle’s EXIF Viewer and drop the file in. It parses in your browser, so the photo you are worried about does not get uploaded to check whether it should be uploaded.
- Scan for a GPS group. If there is no GPS heading anywhere, the file has no coordinates.
- If there is one, read
GPSLatitudeRefandGPSLongitudeReffirst. People skip straight to the numbers and end up 100 km east of where they thought. - Convert with the arithmetic above: degrees, plus minutes over 60, plus seconds over 3600. Apply the sign.
- Check
GPSHPositioningErrorif it exists, andGPSProcessingMethodto see whether the fix came from satellites, a cell tower or Wi-Fi. - Scroll on and look at the XMP and IPTC sections for text place names, which live separately from the coordinates.
- If you want it gone, run the file through EXIF Remover or Metadata Remover, then reopen the cleaned copy in the viewer. Always verify the output. A tool that claims to strip metadata and a tool that strips metadata are not automatically the same tool.
That verification step at the end is the one people skip, and it is the only one that actually proves anything. Reading your own file takes seconds in the EXIF Viewer, nothing leaves your device, and you get a definitive answer instead of a guess about how some app behaves.
What goes wrong
Assuming an edit strips metadata. Crop a photo, resize it to 800 pixels wide, apply a filter, save it: most editors faithfully copy the EXIF block into the new file. The image is smaller. The coordinates are identical. This is the single most common wrong assumption in this whole topic.
Screenshotting a photo genuinely does drop the GPS, because a screenshot is a new file created by the operating system rather than a copy of the old one. It also costs you resolution and adds a compression pass, so it is a blunt instrument. Useful in a pinch, bad as a habit.
Trusting a viewer that shows nothing. Some viewers parse only the main EXIF directory and skip the GPS IFD, XMP packets or PNG text chunks. “No location shown” in a weak tool is not the same as “no location present”. If you get a blank result, try a second tool before you relax.
Forgetting that non-phone cameras geotag too. Canon, Nikon, Sony and Fujifilm bodies without GPS chips can pull a fix from a paired phone over Bluetooth, and most photographers set that up once and forget it. Drones write GPS as a matter of course, often with altitude and flight data alongside. Action cameras vary.
Cleaning the file, then letting the library put it back. Apple Photos and Google Photos store location as part of the library record rather than only inside the file. Export a stripped copy, reimport it, edit it, export again, and the app can helpfully write the location back in. Strip at the last step before sharing, not three steps earlier.
Stripping everything without thinking about what you lose. Metadata is also your copyright notice, your camera settings, your date taken and your sort order. If you are a photographer, blanket-stripping every outgoing file removes your creator and rights fields along with the coordinates. Strip location, keep authorship, and decide deliberately rather than by default.
A pre-post checklist
Run this before anything leaves your device by email, link or file transfer:
- Work on a copy. Keep the original with its metadata in your own library.
- Open the copy in a viewer and confirm what is actually in it, rather than assuming.
- Strip GPS (and anything else you do not want to publish) with a metadata remover.
- Reopen the stripped copy and confirm the GPS group is gone.
- Look at the visible image: house numbers, plates, labels, screens, reflections in windows.
- If you are sending via a chat app, use the normal photo path, not “send as document” or “send as file”, unless you specifically need the original.
- If you need a smaller file too, compress after stripping with Image Compressor so you are not re-adding anything.
Frequently asked questions
Do all photos have GPS data in them?
No. A photo only carries GPS tags if the device that took it had a location fix and permission to write one. Phones with location switched off, most webcams, scanners, screenshots and any file that has already passed through a stripping step will have no GPS block at all. Cameras without a GPS chip can still get coordinates from a paired phone app, so “my camera has no GPS” is not a guarantee on its own.
Does Instagram show where my photo was taken?
The image file Instagram serves to the public is re-encoded and generally carries no EXIF, including no GPS. Any location shown on a post is the place tag you chose in the app, not something read from the file. Instagram still received your original upload and holds its own copy, so stripping location yourself before uploading remains the stronger habit, and it protects you if platform behaviour changes.
How do I turn off location on iPhone photos?
Open Settings, then Privacy and Security, then Location Services, then Camera, and set it to Never. That stops new photos being geotagged. For a photo you already took, open it in Photos, tap Share, tap Options at the top of the share sheet, and switch Location off before you send. Apple has moved that control between iOS versions, so look for it each time rather than memorising a position.
Does cropping or resizing a photo remove the GPS data?
Usually not. Most editors and resizers copy the existing metadata block into the new file, so a cropped 800 pixel version can carry exactly the same coordinates as the 12 megapixel original. Screenshotting a photo does drop GPS, because the screenshot is a fresh file created by the operating system, but it also costs you quality and adds a compression pass. Use a metadata remover instead and verify the result.
How accurate are the GPS coordinates in a photo?
Four decimal places of latitude is about 11 metres, five is about a metre. Phone fixes are rarely that good in practice. Apple writes a GPSHPositioningError tag giving the horizontal error estimate in metres, often between 3 and 30 metres outdoors and considerably worse indoors where the position may come from Wi-Fi rather than satellites. Treat the coordinates as identifying a building, not a room.
Can I remove location from photos I have already taken?
Yes. Run the files through a metadata remover, which rewrites the image without the GPS block, then open the cleaned copy in a viewer and confirm the tags are gone. Do this on copies and keep your originals somewhere private, because stripping is not reversible and you may want the location data later for your own library, your own maps, or simply to remember where you were.
The habit worth building
The honest version of this topic is undramatic. Your phone probably does write coordinates into your photos, the accuracy is roughly building-level, the big social networks discard it before anyone else sees it, and the leak happens through email, cloud links and direct file transfers instead.
So build one habit rather than a worldview: before a file leaves your device by any route that is not a mainstream social app, open it, look at it, strip it, and check the stripped copy. That is four steps and under a minute. It works regardless of which platform changed its pipeline this quarter, which is the point, because they change it without telling anyone.
And keep your originals. The geotags are genuinely useful to you. They are just not for everyone else.