Migration Guide Amazon S3 Long-Term Archive

Uploading Takeout to AWS S3 Will Break Your Timeline

Google Takeout exports strip real dates and buries GPS in JSON files. Uploading directly to AWS S3 causes thousands of photos to appear as "taken today". FolioSort completely restores your EXIF metadata locally on your Mac before your migration.

Google Photos ──── FolioSort ────→ 🌐 Amazon S3

Choosing the right S3 storage class for photos

S3 offers several storage tiers. For a personal photo archive, your main choices are two:

S3 STANDARD_IA
Standard Infrequent Access ⭐ Recommended
~$0.0125/GB/month. Low retrieval cost. Perfect for a photo archive you occasionally browse. Files available in milliseconds. The best price/access balance for personal libraries.
S3 GLACIER_IR
Glacier Instant Retrieval
~$0.004/GB/month. Even cheaper than STANDARD_IA but higher per-retrieval cost. Best if you rarely access individual files — e.g. a pure cold backup that you only restore in a disaster scenario.
S3 STANDARD
Standard
~$0.023/GB/month. Highest availability. Only worth it if you're actively serving photos from S3 (e.g. a website). Expensive for a personal archive.
S3 DEEP_ARCHIVE
Glacier Deep Archive
~$0.00099/GB/month. Cheapest, but 12-hour retrieval delay. Only for disaster recovery archives you truly never access. Too slow for browsing your library.

The migration workflow

1

Export & Fix with FolioSort

Export from takeout.google.com. Extract all zips. Run FolioSort's Takeout Import to restore real dates and GPS from JSON sidecars. Run the Mover with {YYYY}/{MM}/ to organize.

2

Create an S3 Bucket

In the AWS Console, create a new S3 bucket. Choose a region close to you. Enable versioning if you want protection against accidental deletes. Keep "Block Public Access" on — this is a private archive.

3

Upload with AWS CLI

Install the AWS CLI (brew install awscli), configure with aws configure, then sync your organized library to S3 with the command below.

# Install AWS CLI (if not already installed)
brew install awscli
 
# Configure with your AWS access keys
aws configure
 
# Sync your FolioSort-organized library to S3
# Using STANDARD_IA storage class (recommended for photo archives)
aws s3 sync ~/Pictures/Organized/ s3://your-bucket-name/photos/ \
--storage-class STANDARD_IA \
--exclude "*.DS_Store" \
--no-progress
 
# Verify the upload count
aws s3 ls s3://your-bucket-name/photos/ --recursive --summarize

Why FolioSort matters before S3 upload

Meaningful Folder Paths in S3

S3 stores files as flat objects — but the key prefix acts as a folder path. A FolioSort-organized structure like photos/2023/07/IMG_4567.jpg makes browsing, lifecycle rules, and future retrieval infinitely easier than dumped Takeout chaos.

Correct Timestamps in S3 Object Metadata

S3 stores a LastModified timestamp for each object. When FolioSort fixes your EXIF dates first, the file system dates are also corrected — so S3's object metadata reflects when photos were taken, not when you exported them.

Zero Duplicates = Lower Storage Cost

Takeout duplicates photos in album folders. If 10,000 photos become 28,000 objects in S3, you're paying for 18,000 objects you shouldn't have. FolioSort removes duplicates before upload — saving real money.

S3's Durability Deserves Good Data

S3 Standard gives 11 nines of durability. It's pointless archiving broken, misdated files for decades. FolioSort ensures what goes into S3 is correctly dated, GPS-restored, and deduplicated.

Other migration options

Archive your memories correctly — for decades.

FolioSort fixes your Takeout files before they reach S3. Correct dates, real GPS, no duplicates. One time — forever.

Local processing — nothing uploaded by FolioSort 14-day guarantee