Jeffrey’s “Workflow Delete Options” Lightroom Plugin

This plugin for Adobe Lightroom Classic helps save you from two unfortunate quirks about how Lightroom handles image deletion: sometimes Lightroom deletes less than you intend, and sometimes more. The former can create a storage-workflow mess; the latter can destroy your precious photos.

Details below.

This plugin works in Lightroom Classic, and older versions as far back as Lightroom 4 (though some features depend on the version of Lightroom).

The same download works for both Windows and Mac. See the box to the upper right for the download link (in orange) and installation instructions.


The plugin currently addresses two unrelated issues with image deletion...

  • When you invoke a delete operation on a photo or group of photos, Lightroom sometimes deletes virtual copies that you have not selected. It would be better if Lightroom didn't silently delete extra things you didn't ask for. The plugin alerts you to this via its “Virtual-Copy Protection” feature.

  • When you delete a file from Lightroom that happens to be “offline” at the moment (e.g. on an external disk that is not currently attached), Lightroom lets the delete happen even though this leaves the master image file orphaned on the external disk. It would be better if Lightroom would alert you to the situation so you could abort the delete operation if you wanted. The plugin handles the alert for you via its “Orphan Master-File Protection” feature.

You can use either feature, or both (though the latter feature is supported only from Lr5).

Virtual-Copy Protection

The Problem: when a delete operation is invoked in Lightroom, if a selected master image has virtual copies that are not selected, the unselected virtual copies are silently deleted as well. This could be a big problem if you didn't realize the other virtual copies existed; their existence may mean that you want to actually keep some of the master image files that are about to be deleted, so it'd be nice to be warned in these cases.

When this plugin's Virtual-Copy Protection is active, you get such a warning, a dialog that lets you decide how to proceed:

If you hadn't been expecting this, it's your opportunity to isolate the relevant photos to a collection so that you can inspect them and then take action as you see fit.

Orphan Master-File Protection

The Problem: with Smart Previews introduced in Lr5, it's easy to forget that you might be working with photos whose master image is not currently available (because, for example, it's on a network drive that's not connected, or an external drive that's not attached). If you delete such a photo from Lightroom, the master-image file is not deleted as it would be had the drive been connected, thus leaving “orphan” master image files that are no longer connected to anything in Lightroom.

So, as a matter of workflow policy, you might wish to be alerted when trying to delete a file whose master image is not available. This plugin's Orphan Master-File Protection feature does that, alerting you to an impending delete of an image that does have a Smart Preview, but does not have access to its master image file.

As an aside, I'll mention that my PhotoSafe plugin is another useful tool for image preservation in Lightroom, allowing you to mark specific photos as “not deletable”.

You might use it, for example, to ensure that you don't delete any five-star photos, or photos that you've published to an external site, etc.


This Workflow Delete Options plugin piggybacks on Lightroom's “Publish” infrastructure to provide its protection, so to set it up, after installing the plugin, visit the “jf Workflow Delete Options” publish service in the “Publish Services” section of Library. Clicking on “Set up” brings up a configuration dialog.

In the configuration dialog, you can choose one or both features (though only one is available in Lr4).

When you finally create the publish service via the “Save” button, the plugin will make one publish collection that includes your entire library, aptly named “Entire catalog”.

Until images are actually “published” in that collection, they are not subject to the plugin's protection, so it's important to publish the collection soon, and the plugin will offer to do this. The very first publish could take a while (for example, a couple of hours on my laptop for my 130,000-image library), but after that it goes much faster.

Background Helpers

As you add new images to Lightroom, the nature of the plugin's “Entire catalog” collection draws them in automatically, but they are not “published” automatically, and so they are not subject to protection automatically.

To get around this, the plugin automatically scans for photos to publish (and publishes them) when Lightroom starts, and optionally, every so often while Lightroom is running. The default is to perform a publish scan every 30 minutes.


This plugin is distributed as “donationware”. I have chosen to make it available for free — everyone can use it forever, without cost of any kind — but unless registered, its functionality is somewhat reduced after six weeks.

Registration is done via PayPal, and if you choose to register, it costs the minimum 1-cent PayPal fee; any amount you'd like to add beyond PayPal's sliding fees as a gift to me is completely optional, and completely appreciated.

Note: a Lightroom major upgrade, such as from Lr10 to Lr11 de-registers the plugin in the upgraded version, so if you want to maintain registration, a new ($0.01 if you like) registration code is needed in the upgraded version. It makes for a hassle every couple of years, I know. Sorry. See this note for details.

For details on plugin registration and on how I came into this hobby of Lightroom plugin development, see my Plugin Registration page.

Version History
( Update Log via RSS )


Whack-a-mole with PayPal's random changes.


Warn when PayPal seems to have given a bogus code in the web-confirmation page.

working around 'constant table overflow' error


Updates for Lr10

Work around a Windows bug related to canceling out of the registration dialog.

Added some extra debug logging to note whether the plugin is enabled.


Updates for Lr9 (Lightroom Classic CC Version 9).


Updates for Lr8 (Lightroom Classic CC Version 8).

Better handling when the plugin is reloaded in the middle of a session.

Clicking on the version number in the Plugin Manager now copies version info to the clipboard


Oops, more Lr7 stuff.


Updates for Lightroom 7

Update registration support to handle a stupid bug at PayPal that PayPal refuses to fix )-:

Switch the log-sending mechanism to https.


Try to avoid yet another place where Lightroom gets hung because it can't handle certain kinds of dialogs at the same time.


In the POODLE-vunerability dialog, display a raw URL of a page on my site that discusses the issue, so that folks can be independently sure that the dialog is indeed from me and not malware.

20141019.18 Windows Only: Add a one-time check for the POODLE security vulnerability, and alert the user if it exists.
20140902.17 New build system
20140731.16 Registration fix for Lr5.6
20140720.15 More Creative-Cloud support.

Fixed an issue with Creative-Cloud revalidation.


Lr5.5 and later Creative-Cloud installs can now revalidate themselves if needed.

20140710.12 Sigh, had a bug in the Creative-Cloud support.

Now supports Lr5.5+ Creative-Cloud Installs.

20140704.10 Sigh, introduced an error for some folks with the rebuild the other day.
20140630.9 Build-system update

Fixed a bug in the "smoother revalidation" stuff recently added.


Make the revalidation process smoother, especially for folks using Lr5.4 and later.


Worked around a Lightroom bug to disable Lightroom's meaningless "Downloading Comments" task.

20130713.5 Added the ability to turn off the automatic scan when Lightroom launches. It turns out that with Lightroom's current infrastructure the scan is a pretty heavy task when the catalog is big (mine has 130,000 items), so I'll just have to manually remember to manually publish the publish-service's "Entire catalog" each time I import new photos.
20130713.4 bug fix.
20130712.3 Fix a spelling typo
20130712.2 bunch of improvements
20130710.1 Initial public release

All 6 comments so far, oldest first...

Do I have to re-register to upgrade?

Not to upgrade the plugin, but major Lightroom upgrades (e.g. from Lr4 to Lr5) break plugin registration, as per this page. —Jeffrey

— comment by Barry Wolf on July 12th, 2013 at 10:00am JST (11 years ago) comment permalink

Hi Jeffrey,

I do not catch the diffence to the PhotoSafe plugin. Does PhotoSafe not solve the same problem in a more genaral way?

They’re completely different, except that they both help you avoid accidentally deleting things. PhotoSafe protects specific photos you identify; if you include the photo it’s protected, if not it’s not. On the other hand, Workflow Delete Options tries to work around what I consider a bug in Lightroom that causes extra unseen photos to be deleted when you invoke a delete operation. —Jeffrey

— comment by Thorsten on November 24th, 2013 at 3:06am JST (10 years, 8 months ago) comment permalink

Found you link from a thread on locking images in LRCC. I don’t know if it is possible but a simple lock switch on each image to lock it from further edits would be nice. Thanks

Yes, it’d be very nice, but it’s not possible until Adobe implements it. —Jeffrey

— comment by Michael Rogersq on March 6th, 2017 at 4:50am JST (7 years, 4 months ago) comment permalink

I have the jr workflow delete options. I cannot find the item in my finder and the lightroom services panel shows a ? and says (missing plug in). My plug in manger shows to copies of the plug in. Only once can be active at a time. I have images that I wish to delete but cannot do so. What do you think? I use new iMac, 10.12.6 along with very. later version of LIGHTROOM. This is making me crazy. What can I do? HELP PLEASE!!!!
Vincent L. Solomito, M.D.

Unlike pretty much every other bit of software on the planet, Lightroom treats plugin “installs” differently. When you “install” a plugin, you’re actually just telling Lightroom where Lightroom can find it. Therefor, you should moved the downloaded/unzipped plugin to some folder on your system where you’ll keep it indefinitely (e.g. a “Lightroom Plugins” folder within your “Documents” folder), then point Lightroom at it. You can go ahead and remove the other various references within the Plugin Manager to the plugin at other locations. —Jeffrey

— comment by on February 2nd, 2019 at 6:21am JST (5 years, 6 months ago) comment permalink

Hello Jeffrey,

I get this message after 1000 photos uploaded. Is that the maximum number?

google-photos#11 +61392.5>155443 [x60001f7d4cc8] @basic_utils line 460:
no newMediaItemResults:
[x60001f7d4cc8] @basic_utils line 460
[x60001f7d4cc8] @GooglePhotos line 727
[x60001f7d4cc8] @Export line 2200
–task jump from [x60001f7d4cc8] to [x60001f7c92c8] —



It may well be. If you could send a plugin log immediately after encountering the error, I can check for an error message from Google…. —Jeffrey

— comment by peter samuelsson on January 1st, 2020 at 12:21am JST (4 years, 7 months ago) comment permalink

Hi Jeffrey, recently I have upgraded to Lightroom Classic 11, OS Windows 10/64, the latest version.
Having used your Bulk development plugin for some years, I tried to test now the workflow delete plugin.
Loading the plugin, Workflow delete options failed half way. LR didn’t react anymore either.
After a new start, “Watcher scan…” appeared…
Publisher: Workflow delete options: Entire catalog 69416.
6914, that’s approximately the amount of pictures in LR.

The plugin manager shows the plugin active, but it is not available for use.

At the end, I discontinued the connection to the Publishing Service….

Could you explain, more thoroughly, what the plugin is actually doing? Maybe, it does not work properly because ists made for an earlier version of LR? Maybe, I did something wrong, lacked patience….

I appreciate your advice,

Robert, Vienna, Austria

The problem is likely that the initial publish operation is working with so many photos, and even though the plugin doesn’t actually publish anything, Lightroom doesn’t know that and so it has to go through the preparations to publish 70,000 photos, and that takes a while. Lightroom is not very efficient at large publish operations. It might be better to select a bunch of photos (10,000 at a time?) and hold down the alt/option key to turn the [Publish] button into [Publish Selected], and do it in batches that way…. —Jeffrey

— comment by Robert Specht on November 7th, 2021 at 12:22am JST (2 years, 8 months ago) comment permalink
Leave a comment...

All comments are invisible to others until Jeffrey approves them.

Please mention what part of the world you're writing from, if you don't mind. It's always interesting to see where people are visiting from.

IMPORTANT:I'm mostly retired, so I don't check comments often anymore, sorry.

You can use basic HTML; be sure to close tags properly.

Subscribe without commenting