X Tutup
Skip to content

feloex/GoogleTakeoutFixer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

130 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoogleTakeoutFixer

GitHub Repo stars GitHub Downloads (all assets, all releases) GitHub Downloads (all assets, latest release) Go Report Card

drawing

A tool to easily clean and organize Google Photos Takeout exports.

The Issue

When you download your files from Google's "Google Photos" service through "Google Takeout", the exported data is inconsistently organized and often fragmented/broken. This can lead to problems:

  • Files cannot be reliably sorted or grouped by date or location
  • The export contains unnecessary files and a cluttered folder structure
  • Your takeout having a big file size due to duplicated media and unnecessary JSON files

Solution

GoogleTakeoutFixer solves these issues by:

  • Writing EXIF metadata directly into your media.
  • Organizing your files into a clear and structured folder structure for easier navigation.
  • Automatically removing unnecessary JSON files.

Preview

GoogleTakeoutFixer Window

Tutorial

1. Preparation

To use GoogleTakeoutFixer, you must have downloaded your photos from Google Takeout and extracted them. Follow these steps:

  1. Go to takeout.google.com and click "Deselect all".

    Google Takeout deselect button
  2. Scroll down and select "Google Photos".

    Google Takeout Selected
  3. Scroll down to the bottom and click "Next Step".

  4. In the "Transfer to" section, choose how you'd like to receive your download link. I recommend choosing email. For "File size", select 50 GB for easier handling.

    Create Export options
  5. Click "Create export" and follow the instructions.

Note

  • If your Google Takeout exceeds the 50 GB limit and is split into multiple archives, extract all the archives and move the extracted files into a single folder. This ensures that GoogleTakeoutFixer can process all your files correctly.
  • Select the folder named "Google Photos" as your input folder. This folder should contain subfolders like "Photos from (year)" and folders with the names of your albums. Do not select a parent folder of "Google Photos".

2. Installation

  1. Download the latest release of GoogleTakeoutFixer from the release page. Choose the version that matches your operating system.
  2. Extract the downloaded archive.
  3. Run the executable file.

Important

When running the executable, a window about security can pop-up if you are using Windows. Click "more info" and "run anyway".

3. Using GoogleTakeoutFixer

  1. Click "Select Google Takeout folder" and choose the folder where you extracted your Google Takeout photos. This folder is named something like "Google Photos".
  2. Click "Select output folder" and choose the folder where you want the fixed photos to be saved.
  3. Choose the options that you want to apply:
    • "Write metadata": Writes metadata from JSON files into the media files. May not be necessary.
    • "Use symlinks for albums": Creates file links instead of duplicating files for albums.
    • "Ignore album folders": Ignores album folders and only processes year folders.
    • "Create month subfolders": Creates month subfolders (labeled 1-12) inside of the output folders.
    • "Flatten output structure": Puts all files directly in the output folder.
  4. Click "Start processing" and wait for the process to finish. The time it takes depends on the number of photos and videos you have.

Once the process is complete, you can find your fixed files in the output folder you selected.

You will be able to find a full log file inside of the GoogleTakeoutFixer folder inside of the logs folder.


CLI usage

You can also use GoogleTakeoutFixer through the CLI. Use the following flags:

  • --input "PATH": Path to Google takeout directory
  • --output "PATH": Path to output directory
  • --symlink: Use symlinks inside of albums instead of duplicating images
  • --skip-metadata: Skip writing metadata to files
  • --ignore-albums: Ignore album folders and only process year folders
  • --month-subfolders: Create month subfolders (labeled 1-12) inside of folders
  • --flatten: Flatten the folder structure and put all files directly in the output folder
  • --version: Show version
  • --help: Show help message

Example usage:

./GoogleTakeoutFixer --input "/path/to/takeout/Google Photos/" --output "/path/to/output/folder/" --symlink

You might have to give the executable permissions to run on Linux and macOS using chmod +x GoogleTakeoutFixer before you can run it through the terminal.

Planned Features

  • Better looking and more user-friendly GUI
  • The ability to apply different settings to different albums or folders
  • A simple website for users who are not familiar with Github
  • Pull request and issue template

Credits

This project modifies metadata using the ExifTool library by Phil Harvey. ExifTool is licensed under the Perl Artistic license, or the GNU General Public License (see here for more details).

Disclaimer

Not affiliated with Google LLC.

X Tutup