Photo Location & Postal Code Tools

Batch Photo GPS Map

Drop a set of photos and see every embedded GPS position on one local vector map, ordered by capture time, with the ones that carry no location listed separately and the route exportable as GPX, KML, CSV or JSON.

  • All positions on one local map
  • Table of photos with and without GPS
  • GPX track, KML, CSV, JSON
Runs in your browser

Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics.

Batch photo map workspace

1 Choose your photos

Drop a folder of photos here, or choose them below.

Only the metadata is read, one file at a time, in this tab. Nothing is uploaded and no map tile is requested.

No photos to hand?

The samples are hand-written Exif tag sets, not photographs. Three carry a position and one does not, which is the point of the second table.

2 Options

Distance units

To strip the metadata instead of reading it, use the EXIF Privacy Remover.

3 The set on one map

Every photo that carries a position appears on one local plot, numbered in capture order. Photos without GPS are listed underneath rather than dropped.

What the Batch Photo GPS Map does

Drop a folder of photos here and every embedded GPS position appears on one plain vector map, numbered in capture order, with the distance between consecutive shots and a separate list of the files that carry no location at all. It is the batch version of reading a single photo's metadata: useful after a trip, a site survey or a property inspection, when you want to know where a hundred files came from without opening them one by one.

Each file is read in your browser, one at a time, and only its metadata is parsed. Nothing is uploaded, and the map is drawn from the coordinates themselves rather than fetched from a tile server, so the positions are never disclosed to anyone.

How to use it

  1. Drop the photos onto the box, or choose them with the file picker. Up to 300 files at a time, 40 MB each; only the metadata block of each file is read.
  2. Watch the counter as the files are read. Large RAW files take a moment each, because the metadata sits inside a much bigger container.
  3. Read the summary: how many photos carried a position, how many did not, and how far the set spans from first to last in capture order.
  4. Use the second table - the photos without an embedded location. They are listed with the reason rather than quietly dropped, because a missing position is itself a finding.
  5. Export the set as GPX for a mapping tool, KML for Google Earth, CSV for a spreadsheet, or GeoJSON for anything else. Read the warning first: every one of those files carries the coordinates.

Reading the results

The numbers on the map are capture order, not a route. The dashed line joins consecutive fixes in a straight line; the photographer may have walked round a building between two of them, and the line will cut straight through it.

Along-the-track distance is the sum of those straight lines and is therefore a lower bound on how far anyone actually walked or drove - usually a considerable underestimate over a day.

A photo with no position is not necessarily suspicious. Most social networks strip metadata on upload, indoor shots often have no fix, and many cameras have no GPS receiver at all.

Where one photo sits far away from the rest, check its capture time before assuming a journey: a stale fix written by a phone that had not updated its position looks exactly like a short trip.

Worked example: a morning in central Delhi

Four files are read. Three carry GPS: Rashtrapati Bhavan at 28.614306, 77.199389 taken at 09:48:12; India Gate at 28.612806, 77.229167 at 10:32:07; and Humayun's Tomb at 28.593333, 77.250556 at 12:05:44. The fourth, from a camera with no receiver, carries a capture date but no position.

The first leg is 2.912 km on a bearing of 93.3 degrees - almost due east along the Kartavya Path - over 43 minutes 55 seconds, which works out at 1.10 metres per second: a walk. The second leg is 3.008 km on a bearing of 136 degrees, south-east, over 1 hour 33 minutes.

The summary reads 4 photos read, 3 with a position, 1 without, and 5.920 km along the track. The straight line from the first photo to the last is shorter, 5.513 km, which is what you would expect from a path that bends.

What a batch tells you that one photo does not

Reading a set together makes two things visible that a single file hides. The first is a clock problem: if half the photos are in one place at 09:00 and the rest somewhere else at 09:05, one of the cameras is on the wrong time. The second is a gap in coverage - a run of files with no position in the middle of a trip usually means the receiver lost its fix indoors, and any conclusion drawn about that stretch has nothing behind it.

This is also the quickest way to check what a set is about to disclose. If you are sending a hundred photos to a client, an insurer or a forum, the table here tells you in one glance how many of them carry a home address.

Limitations: what the result does not prove

  • Only photos with embedded GPS tags appear on the map. The rest are listed with the reason; nothing is placed on the map by guesswork.
  • The line between points is not a route. It is a straight line between consecutive fixes, and the distance along it understates any real journey.
  • Reading is sequential and metadata-only, so a few hundred large RAW files take a while. The limit here is 300 files per batch, which keeps the tab responsive.
  • Capture order depends on camera clocks. Photos from two cameras set to different times will interleave wrongly, which is worth checking with the Photo Time-Zone Estimator before you trust the order.

Privacy: where your data goes

Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics. Session recording and tag-manager scripts are switched off on this page.

Standards and sources

Frequently asked questions

How many photos can I plot at once?

Up to 300 files in one batch, each up to 40 MB. The files are read one after another so the browser stays responsive, and a counter shows the progress. For a bigger set, run it in batches and merge the exported CSV files afterwards.

Do the photos get uploaded to build the map?

No. Each file is read locally with the browser's file reader and only its metadata block is parsed. The map is drawn from the coordinates as vector shapes, so not even a map tile is requested - a tile request would tell the tile server where the photos were taken.

Why do some of my photos have no location?

Common reasons are a camera with no GPS receiver, a phone that had not acquired a fix indoors, location tagging switched off in the camera app, or metadata stripped by a social network or messaging app during an earlier upload. All four look identical in the file: no GPS tags at all.

What is the difference between the GPX and KML exports?

GPX is the format most GPS units and mapping tools read, and the export writes each photo as a waypoint with its time and elevation. KML is the Google Earth format and writes each one as a placemark with a timestamp. CSV suits a spreadsheet, and GeoJSON suits anything that draws web maps.

Can I use this to build a track of a walk?

You can export one, but read it for what it is: a set of points where photos were taken, joined in capture order. It is not a recorded track log, and the distance along it will be shorter than the distance actually walked, often by a lot.

Why are the photos numbered by time rather than by file name?

File names are set by the camera's counter, which resets, repeats between bodies and does not survive copying. The capture time is the only ordering that means anything across a mixed set, so photos are sorted by it, with undated files listed last in name order.

How do I strip the location from all of these photos?

Use the EXIF Privacy Remover, which removes the metadata in your browser and gives you clean copies. This page deliberately does not rebuild that: reading and removing are different jobs, and it is safer to have one tool that does each properly.

Last reviewed by the A2Z.Tools team against the sources listed above.

Rate this tool

Was this tool useful? Your feedback helps us improve it.

No ratings yet — be the first to rate this tool.
Your rating (required)
0 / 2000

Please do not include passwords, payment details or other sensitive information.

Your feedback is sent privately to the A2Z.Tools team and will not be posted publicly.