What's the Best Lightroom Classic Plugin for Google Photos in 2026?

By David · June 8, 2026 · 8 min read

Quick Answer

In 2026 there are three real options: Jeffrey Friedl's donationware exporter (free, export-only, no edit tracking), an unmaintained GitHub fork of Friedl's work, and the Lightroom Tools Google Photos plugin ($9.99 one-time, actively maintained Publish Service).

If you edit photos after the first upload and want Google Photos to stay in sync without duplicates, you need a Publish Service - that means the Lightroom Tools plugin. If you only push photos once and never touch them again, Friedl's free exporter is perfectly fine.

I built the Lightroom Tools Google Photos plugin, so I am not a neutral reviewer. What I am is someone who has read every line of the Google Photos Library API documentation and has spent real time with the other options. I'll be honest about what each one does and doesn't do, and I'll point you to the free option when it's the right call.

Why photographers need a plugin at all

Lightroom Classic has no built-in Google Photos export. Adobe's ecosystem assumes you either stay inside Creative Cloud or export to disk. If you want your edited photos in Google Photos, your only native path is: export to a folder, open Google Photos in a browser, drag and drop. That works once. It falls apart the moment you touch a develop slider and want the change reflected in your Google Photos library.

The deeper problem is the editing cycle. A typical catalog workflow looks like this: shoot, import, cull, edit, export to client, then continue adjusting. By week three you've changed the exposure on twelve photos from that trip. Do you remember which ones? Can you find and re-upload only those? A plugin that tracks state solves this. One that doesn't leaves you re-uploading everything or managing duplicates by hand.

That's the core split between the two plugin types available today.

What plugins actually exist for Lightroom Classic and Google Photos in 2026

The honest landscape is narrow. Google Photos is not a priority target for plugin developers, partly because the API is significantly more restricted than it used to be (more on that below).

Plugin Type Price Tracks edits Status
Jeffrey Friedl's Export to Google Photos Export plugin Free / donationware No Active (Friedl's primary plugins are maintained, but this one lags behind some API changes)
Unmaintained GitHub forks Export plugin Free No Last commits 2022-2023; OAuth flow may be broken
Lightroom Tools Google Photos Publish Service $9.99 one-time Yes Actively maintained, updates free

That's the full list. There is no Capture One plugin, no Lightroom CC integration, no Bridge plugin. The Google Photos API's restrictions (explained below) make it unattractive to build on compared to, say, SmugMug or Flickr.

Jeffrey Friedl's plugin: what it does well

Friedl's plugin has been around since Google Photos launched and has a large installed base. It works as an Export plugin: you select photos, go to File - Export, choose the plugin from the export dialog, and photos upload to Google Photos. You can target an album, set JPEG quality, and add custom titles.

The limitation is structural, not a bug. Export plugins in Lightroom don't maintain any ongoing relationship with the photos they uploaded. Once you click Export, Lightroom forgets it happened. The plugin has no way to know, three weeks later, that you adjusted the white balance on photo 47 and that photo 47 is already live in your Google Photos album.

For a wedding photographer backing up a shoot to Google Photos once and calling it done, Friedl's plugin is perfectly sufficient and costs nothing. For a travel photographer who edits over months and wants their Google Photos library to mirror their current Lightroom edits, it creates a management problem.

GitHub forks: approach with caution

A handful of developers forked Friedl's plugin or built their own versions and posted them to GitHub. Most haven't been updated since 2022 or 2023. The bigger issue is OAuth: Google rotates and tightens API requirements on a rolling basis, and an unmaintained plugin's OAuth credentials may be revoked or its redirect URIs may no longer match what Google accepts. I've seen reports of broken authorization flows in these forks. If you try one and it fails at the Google sign-in step, that's likely why.

How the Lightroom Tools Google Photos plugin works

My plugin is a Publish Service, which is a different plugin type with a fundamentally different architecture. Publish Services live in Lightroom's left panel under "Publish Services" and maintain a persistent connection between a Lightroom collection and a destination.

Here's what that means in practice. You create a Published Collection inside the plugin (Lightroom creates a matching album in Google Photos). Drag photos into the collection. Click Publish. The plugin uploads them and records each photo's state - which version went up, at what timestamp, with what pixel hash.

When you change a develop setting on one of those photos, Lightroom automatically marks it as Modified in the Published Collection. The next time you click Publish, only the modified photos re-upload. The unchanged ones stay put. No duplicates, no manual tracking, no guessing.

You can have multiple Published Collections, each mapping to a different Google Photos album. Holiday 2025 maps to one album, client work maps to another. They're independent: publishing one doesn't touch the others.

Edit in Lightroom Classic Adjust develop settings on your photos
Publish (Publish Services) Only modified photos re-upload
Google Photos album (auto-synced) No duplicates, no manual tracking
The Publish Service flow: edits in Lightroom Classic move through the Publish step and land in a matching Google Photos album that stays in sync.

Want your Lightroom edits to sync to Google Photos automatically, with no duplicates and no manual re-uploading?

Get the Google Photos Plugin - $9.99

The publish-only reality: why the Google Photos API changed in 2025

This is the part most plugin tutorials gloss over, and it directly shapes what any plugin can and can't do.

In 2025, Google tightened the OAuth scopes available to third-party apps accessing the Photos Library API. The old read-write scope that let apps both upload and read photos from a user's full library is now restricted to apps that go through Google's enhanced verification process - a process that costs money and takes months, and that Google has been declining to approve for new developer applicants.

For practical purposes: no new plugin can read photos from your Google Photos library. All current plugins, including mine, are publish-only. They can upload and create albums; they cannot read your existing photos, browse your full library, or import photos back into Lightroom. That's a hard API limit, not a developer choice.

The delete restriction is older and equally firm. The Photos Library API has never had a delete endpoint for photos themselves. A plugin can remove a photo from an album it manages, but it cannot delete the underlying photo from your library. If you remove a photo from a Published Collection in my plugin, it moves that photo into a "To Delete" album in Google Photos. You then go to Google Photos in a browser, open that album, select all, and delete them by hand. It is an extra step, and I wish the API made it unnecessary, but there is no workaround that avoids it.

Any plugin that claims it can delete photos from your Google Photos library is either wrong or doing something undocumented that could break at any Google API update.

Step-by-step: installing and setting up the Lightroom Tools plugin

The full walkthrough is in the Google Photos plugin guide, but here's the core flow:

  1. Download and install. Download the plugin zip from lightroom-tools.com/google-photos, unzip it, and use Lightroom's Plug-in Manager (File - Plug-in Manager) to add it. New to plugins? See how to install a Lightroom Classic plugin.
  2. Authorize with Google. In the Publish Services panel, click "Set Up" next to Google Photos. The plugin opens a browser tab to Google's OAuth consent screen. Sign in to the Google account you want to publish to, and grant the requested permissions. The plugin stores only an access token - not your Google password.
  3. Create a Published Collection. Right-click the Google Photos service in the Publish Services panel and choose "Create Published Collection." Give it a name: this becomes both the Lightroom collection name and the Google Photos album name.
  4. Add photos and publish. Drag photos from your library into the Published Collection. Click the Publish button at the bottom of the panel. The plugin uploads them in order and marks each one as Published when done.
  5. Edit and re-publish. Change a develop setting on any published photo. Lightroom marks it Modified. Next time you click Publish, only that photo re-uploads. Everything else stays put.
A Google Photos album showing photos published from Lightroom Classic by the Lightroom Tools plugin, arranged in a grid inside the Google Photos web interface.
Photos published from Lightroom landing in a Google Photos album, created automatically by the Published Collection.

Initial upload speed depends on your internet connection and Google Photos processing queue. A 500-photo batch at full JPEG quality might take 20-40 minutes on a typical home connection. After that initial push, incremental republishing is fast: a handful of modified photos is usually done in under a minute.

Which plugin should you use?

Here's my honest recommendation based on your workflow:

The price difference between the two active options is $9.99 one-time. If you're managing an active catalog and plan to keep editing, the time you save not tracking which photos need re-uploading pays for that in the first month.

Frequently asked questions

Does the plugin work with Lightroom CC or the cloud version?

No. Lightroom Classic plugins use Adobe's Plugin SDK, which only runs in the Classic desktop app. Lightroom CC doesn't support third-party plugins.

Will edits in Lightroom automatically update the photo in Google Photos?

Yes, with the Lightroom Tools plugin. After you change a develop setting, Lightroom marks the photo as Modified in the Published Collection. The next time you click Publish, only modified photos re-upload. Export-only plugins don't track state, so you'd have to manage that yourself.

Can I use a plugin to import photos FROM Google Photos into Lightroom?

No. The Google Photos Library API doesn't let third-party apps read photos from your library. All current plugins are publish-only: upload and album creation, no import.

Is it a one-time purchase or a subscription?

One-time $9.99. No subscription, free updates for life.

What happens if I remove a photo from the Published Collection?

Because the Google Photos API can't delete photos, removing a photo moves it into a "To Delete" album in Google Photos. You then open Google Photos in a browser and delete the contents of that album by hand. It's an extra step, but it's the only path the API allows.

The Google Photos plugin for Lightroom Classic keeps your albums in sync with your edits. One-time $9.99, works on Mac and Windows, no subscription.

Get the Google Photos Plugin - $9.99
David Creator of Lightroom Tools. Building Lightroom Classic plugins to simplify photographers' workflows. Spend less time managing photos, more time shooting them.