Google Ads Header Ready

Using a Pixel 5 as an Unlimited Google Photos Backup Hub for Familly

Infographic showing a Google Pixel 5 used as a hub for unlimited family photo storage in the cloud.

You don’t need a Pixel phone for every family member to take advantage of Google Photos unlimited backup. In my setup, one Google Pixel 5 acts as the final upload gateway for the whole household.

The idea is simple: family members send their photos to my home server, the server passes those files to the Pixel 5, and the Pixel 5 backs them up to Google Photos using Storage Saver quality.

As of 21 April 2026, I have been running this setup for about 3 months. Around 20,000 photos are already backed up, with roughly 50,000 more still pending.


Important Note About Pixel Unlimited Backup

Google’s policy is different depending on the Pixel model. Pixel 3a to Pixel 5 can back up photos and videos in Storage Saver quality with unlimited storage at no charge. However, Original quality uploads from these models count toward Google Account storage.

Only the first-generation Pixel gets unlimited Original quality backup at no charge. For this setup, the Pixel 5 must be set to Storage Saver, not Original quality.


My Setup Overview

Part Purpose
Family phonesCapture photos and videos
Immich appSends media from each phone to my home server
Old laptop serverTemporary middleman storage
Google Pixel 5Final Google Photos upload gateway
SyncthingSyncs files from server to Pixel 5

The Pixel 5 is plugged in 24/7. I also disable battery restrictions for Syncthing so Android does not stop it in the background. The phone is not being used as a daily phone anymore. Its job is simply to receive photos and videos, then let Google Photos back them up.


How the Photo Pipeline Works

Family phone
> Immich mobile app
> Home server
> Syncthing folder
> Pixel 5
> Google Photos Storage Saver backup

Each family member installs the Immich app on their phone and connects it to my home Immich server. Their photos and videos are uploaded to the old laptop that I use as a server.

From there, Syncthing sends the media folder from the server to the Pixel 5. On the server side, Syncthing is configured as send only. On the Pixel 5 side, Syncthing is configured as receive only. This helps prevent accidental deletion or sync conflicts going backward.


Why I Use Immich Only as a Middleman

In my setup, Immich is not the final archive. I use it as a temporary collection point for all family photos. My family photo library can easily grow beyond 2 TB, so I do not currently want to keep every original full-size photo and video on my own server forever.

  1. Let family members upload everything to Immich.
  2. Sync the original files to the Pixel 5.
  3. Confirm Google Photos has backed them up.
  4. Clear the full-resolution files from Immich.
  5. Keep only thumbnails or preview data where needed.
  6. Repeat the cycle.

The Storage Problem I Had to Solve

The biggest issue is server storage. If I keep every family member’s original photo and video file in Immich, my old laptop server will eventually need several terabytes of storage.

To work around this, I use a fixed-size Linux virtual disk for the Immich server. When that storage gets full, I first make sure all media has already been synced to the Pixel 5 and backed up to Google Photos.

Only after that do I run my cleanup method. My method clears the full-resolution photo data from Immich while keeping the thumbnail data. This saves a lot of server space, while still letting Immich act as a lightweight middleman.

Important: this part is risky if done carelessly. You must confirm the Google Photos backup is complete before deleting anything from Immich.


My Repeatable Backup Cycle

1. Family members upload photos to Immich.
2. Immich stores the files on the home server.
3. Syncthing sends the files to the Pixel 5.
4. Pixel 5 receives the files.
5. Google Photos uploads them in Storage Saver.
6. I confirm the backup is complete.
7. I run my cleanup script on Immich.
8. The server storage becomes available again.
9. The cycle continues.

Things I Always Check Before Cleanup

  • The Pixel 5 has fully received the files from Syncthing.
  • Syncthing shows the folder is up to date.
  • Google Photos backup is complete on the Pixel 5.
  • Google Photos is set to Storage Saver.
  • The uploads are visible in Google Photos.
  • The Google account storage is not increasing unexpectedly.
  • There are no stuck videos or unsupported files waiting to upload.

Photo Quality vs Video Quality

For photos, I am happy with Storage Saver quality. In normal viewing, the images still look very good. Unless I zoom in heavily or compare side by side with the original file, the difference is not a major problem for family memories.

Videos are different. Google Photos Storage Saver can compress videos quite heavily. For some videos, I can clearly see the quality drop. This is the biggest downside of the setup.

Media Type Storage Saver Result
PhotosGood enough for normal family use
VideosNoticeably compressed sometimes
Important original videosBetter to keep another backup

Final Thoughts

After using this system for around 3 months, I feel the Pixel 5 is still one of the most useful old phones for a home server setup. It is compact, quiet, and efficient, and its Google Photos Storage Saver backup support makes it valuable even in 2026.

My setup is not about keeping perfect original files forever. It is about building a practical, low-cost family photo pipeline:

Phone > Immich > Home server > Syncthing > Pixel 5 > Google Photos

As long as I verify the backup before clearing Immich storage, this workflow lets me handle a very large family photo library without needing huge local storage or a big monthly cloud bill.


FAQ

Can one Pixel 5 back up photos for the whole family?

Yes, if all family photos are transferred to the Pixel 5 first. Google Photos sees the files as being uploaded from the Pixel 5.

Does Pixel 5 support unlimited Original quality backup?

No. Pixel 5 supports unlimited backup at no charge only in Storage Saver quality. Original quality counts toward Google Account storage.

Is photo quality still good in Storage Saver?

For normal viewing, yes. Photos still look good unless you zoom in heavily or need the original file for editing or printing.

Is video quality good in Storage Saver?

Video quality is the biggest weakness. Some videos can look heavily compressed, especially compared with the original version.


📝 Update: Solving the "Hidden" 30GB Video Storage Drain

After running this setup for a while, I noticed my server was still holding onto 30GB of used space, even though the original photos in my library folder were successfully cleared.

The Culprit: The encoded-video folder.
Even when the original videos are backed up and cleared, Immich automatically generates compressed, web-friendly video previews so they play smoothly in the app. If you shoot a lot of videos, these generated previews will quickly eat up massive amounts of storage.

The Solution:
Since my Pixel 5 already sent the original, full-quality video to Google Photos, I don't need these local web previews taking up server space forever. I updated my cleanup script to target both the main library and the encoded-video folder.

Here is the updated script for my notebook:

#!/bin/bash
# TARGET_DIR is the main library folder containing all user ID folders
TARGET_DIR="/home/chinadmin/immich-data/library"

# VIDEO_DIR is the folder containing the generated video previews
VIDEO_DIR="/home/chinadmin/immich-data/encoded-video"

echo "Starting ghost cleanup in $TARGET_DIR and $VIDEO_DIR..."

# 1. Handle Original Library Files
# Finds all files inside library, EXCLUDING hidden files (like .immich),
# and shrinks them to 0KB "ghosts"
find "$TARGET_DIR" -type f ! -name ".*" -exec truncate -s 0 {} +

# 2. Handle Encoded Videos
# Does the exact same thing for encoded videos to preserve the database structure
# and ignores hidden files (like .immich), shrinking the video previews to 0KB.
find "$VIDEO_DIR" -type f ! -name ".*" -exec truncate -s 0 {} +

echo "Cleanup complete! All photos and video previews are now 0KB 'ghosts'."
echo "Your disk space is now free for the next batch."

Important Notes for Future Me:

  • Why truncate -s 0 instead of deleting? Shrinking the files to 0KB creates a "ghost" file. This tricks Immich into thinking the file is still there, preventing it from trying to re-transcode the video or re-upload the file, which avoids an endless upload loop!
  • Why ! -name ".*"? This specifically tells the script to ignore hidden files. Immich relies on hidden .immich ID files to link the media to the database. If you delete those, the database breaks. This script safely bypasses them.
  • Syncthing Bonus: Syncthing sees the file size change from 30MB to 0KB and syncs that 0KB change to the Pixel 5, which automatically frees up the Pixel's local storage too!
Harvard Chin Yihao

Harvard Chin Yihao

I explore tech, markets, and build in public. Documenting my journey, practical insights, and DIY projects. Join me as I learn and grow. View Linktree

Comments