What's inside
Each .json file is a small text file describing one photo or video. The parts that matter most:
| Field | What it is |
|---|---|
title | The photo's file name |
description | The caption you added in Google Photos |
photoTakenTime | When the photo was taken, as a timestamp |
geoData | Where it was taken: latitude, longitude, altitude |
creationTime | When it was uploaded to Google Photos |
Why Google uses separate files
Google Photos lets you edit dates, locations and captions without changing the original file. Takeout gives you the original file plus a record of those edits and of what Google knew about the photo. Photos from messaging apps, scans and screenshots often have no date or location inside them at all, so the .json file is the only place that information survives.
The names can be confusing
- Older exports:
IMG_1234.jpg.json. Newer ones:IMG_1234.jpg.supplemental-metadata.json. - Long names get cut off, for example
…supplemental-metad.json. - Duplicates put the number in an odd place:
IMG_1234.jpg(1).jsonbelongs toIMG_1234(1).jpg. - An edited copy such as
IMG_1234-edited.jpgshares the original's .json file.
What to do with them
Don't delete them before the information is back in your photos. ZipCombiner reads them, writes the date taken, location and caption into each photo and video, then removes them. See how to restore Google Photos dates and locations.
Questions
Can I delete the .json files from Google Takeout?
Not before their information is back in your photos, or you lose dates, locations and captions that may exist nowhere else. ZipCombiner restores it and then removes the .json files.
Why is there a .json file for every photo?
Google Photos keeps dates, places and captions separately from your files. Takeout exports that record as one .json file per photo or video.
What is supplemental-metadata.json?
The newer name Takeout uses for the same per-photo .json file, sometimes cut short on long file names.
Can Apple Photos or Lightroom read the .json files?
No. They read information inside the photo. That's why it has to be written back into each file.