Takeoutfix Guides Open Takeoutfix

Guide

Google Takeout photos have the wrong date

You downloaded your library with Google Takeout and a large share of the photos and videos now show the same date: the day you made the export. The real dates are still in the Takeout. They are just in the wrong place.

A photo from Takeout has no date inside; its date sits in a separate JSON file. Writing that date into the photo gives importers the right day. IMG_1180.jpg date inside: none file date: 20 Sep 2026 IMG_1180.jpg.supplemental- metadata.json photoTakenTime: 15 Jan 2017 IMG_1180.jpg (fixed) DateTimeOriginal 2017:01:15 10:00:05 Apple Photos, Lightroom, Immich and Synology read this date first, so the photo lands on 15 January 2017.
Takeout keeps the date beside the photo, not in it. Importers only read what is in the photo, then fall back to the file date (the export day). Writing the JSON date into the photo fixes that.

Why the dates are wrong

Every file in a Takeout zip is stamped with the day the export was made. Most photo apps date a picture by the capture date stored inside the file (EXIF for photos, the creation time for videos) and only use the file date when there's nothing inside.

Photos straight from a phone camera usually carry their own date, so they come out right. These usually don't:

Google kept the correct date for all of them in a JSON file next to each photo, in the field photoTakenTime. Nothing reads those files except tools made for Takeout. Since 2024 the JSON is named IMG_1234.jpg.supplemental-metadata.json, often cut short to something like .suppl.json, which is why older scripts now miss many of them (more on the names).

Fix it free with ExifTool

ExifTool by Phil Harvey is free and runs on Windows, macOS and Linux (exiftool.org). Extract all your Takeout zips into one folder first, and work on a copy: -overwrite_original changes files in place. Then run this from the folder that holds Takeout:

exiftool -r -d %s -api QuickTimeUTC -tagsfromfile "%d%F.supplemental-metadata.json" \
  "-DateTimeOriginal<PhotoTakenTimeTimestamp" "-CreateDate<PhotoTakenTimeTimestamp" \
  "-FileModifyDate<PhotoTakenTimeTimestamp" \
  --ext json -overwrite_original -progress "Takeout/Google Photos"

For an export made before 2024, or a mix of both, run it a second time with "%d%F.json" in place of "%d%F.supplemental-metadata.json". Files without a matching JSON are reported as errors and left alone, so running both is safe.

What each part does:

PartMeaning
-rGo through every subfolder.
-d %sRead the JSON timestamp as seconds since 1970.
-api QuickTimeUTCFor videos: their creation time is stored in UTC, so ExifTool converts it. Photos are unaffected.
-tagsfromfile "%d%F...json"For each photo, read tags from the JSON in the same folder whose name is the photo's full name plus the ending. %d is the folder, %F the file name with its extension.
-DateTimeOriginal<...ExifTool reads photoTakenTime.timestamp from the JSON as PhotoTakenTimeTimestamp and writes it as the capture date.
-FileModifyDate<...Also sets the file date, for apps that only look at that.
--ext jsonDon't try to write into the JSON files themselves.

On Windows, use the same commands in Command Prompt with the backslashes and line breaks removed (all on one line). In a .bat file every % has to be written %%.

Where the commands fall short

For a small library with mostly short names, the commands are enough. For a big one, count how many files your commands skipped before you import.

Without the command line

I made Takeoutfix for people who'd rather not do the above. It handles every name pattern listed here, reads the zip parts without extracting them, dates edited copies from their originals, and writes the time zone offset as well as the date.

  1. Open Takeoutfix in Chrome or Edge on a computer and add all the zip parts.
  2. Read the free scan: the match rate, what will be fixed and how, and what can't be and why.
  3. Fix 100 photos and videos free, import them into your photo app and check the dates.
  4. If they're right, fix the whole library for $9, once.
The Takeoutfix free scan of the sample library: 18 of 20 files found their JSON, every file dated the export day now, May 2016 to August 2021 after the fix.
The free scan, run on the sample library. Before paying you see how many files found their JSON and the date range they'll carry.

Already imported?

If the photos are already in Apple Photos, Lightroom or a NAS with the wrong dates, delete those copies first (and empty Recently Deleted in Apple Photos), then import the fixed files. Otherwise you'll have two of each. Apple Photos specifics.

Related guides

Takeoutfix matches every photo and video in your Takeout to its JSON, writes the date, place and caption back into the files, and files a fixed copy by year and month. It runs in your browser and nothing is uploaded. The scan is free, and so is fixing 100 photos and videos from your own library to check the result. The whole library is $9, once.

Scan your Takeout free