What it is for
Lightroom records where every photograph lives. Move the files with Finder, restore from a backup to a different path, or swap a drive letter, and the catalog is left pointing at places nothing exists — every affected photo marked missing, all its edits and metadata intact but detached from any actual pixels.
The files usually still exist. They are on the backup drive, or the NAS, or the old disk in a drawer. What is missing is the correspondence between the catalog’s expected path and where the file actually sits now. This plugin rebuilds that correspondence and, if you want, copies the files back to the paths the catalog already expects — so no relinking is needed afterwards.
The workflow
Use Lightroom’s own Find All Missing Photos, select what you want to recover, and run the plugin. It shows the paths the catalog is expecting, and optionally saves them to a text file for reference. Then you point it at a folder that might contain replacements — a backup drive, a NAS share, an old export — and it scans.
The selection is captured when the workflow starts and held for its whole duration, so it survives you clicking around in Lightroom mid-scan. It is discarded when the workflow ends.
Indexing, and why it counts rather than estimates
Indexing walks the chosen folder once. There is deliberately no preliminary counting pass, because counting the tree takes about as long as indexing it and would nearly double the wait for a progress bar. So the dialog shows a running count — Indexing files… (1,250 indexed) — rather than a percentage it would have to invent. It can be cancelled, and a cancelled index is discarded rather than half-used.
Each folder’s index is kept in memory for the rest of the Lightroom session. Scanning the same share again — including on a later Search Another Folder pass — reuses it instead of walking the tree a second time. Nothing is written to disk, and a plugin reload or a Lightroom restart always forces a fresh scan.
Because a reused index describes the folder as it was earlier, every match is verified to still exist immediately before it is accepted. One that has since moved is dropped from the index so it is not offered again, and the results report how many were caught that way.
When something goes wrong
If the source disk or NAS share disconnects part-way through, you get an explicit Indexing Failed error with a path to the error log — not a generic Lightroom task failure, and not a results screen full of “not found” that looks like a completed scan. An incomplete index is never treated as a finished one. That distinction is the difference between retrying a scan and wrongly concluding your backup does not have the files.
Duplicates
When several files match one missing photo, you choose how it behaves: manual review, where you decide each case, or first match, where it takes the first and keeps moving. The active mode is shown in the folder-picker title before every scan, so it is never a surprise, and it can be changed from the plugin’s menu or from Plug-in Manager — both read and write the same setting.
What it does not do
Instead of
Touching your catalog. The plugin copies files into place. It does not rewrite catalog paths, edit metadata, or modify the originals it finds.
Searching anything you did not point it at. It reads the folders you choose and the photos you selected, and nothing else.
More in Lightroom Plugins
| Tool | Version | Platform | Status | Availability |
|---|---|---|---|---|
| Similars and Photo StatisticsGroups visually similar photos, reports file-type statistics, and repairs wrong capture dates | 1.8.1 | Plugin · macOS | Private release | Request |
| Restore Missing PhotosPuts files that Lightroom reports as missing back where the catalog expects them | 1.22.0 | Plugin | Private release | Request |
| Location Caption AssistantSuggests the landmark a GPS-tagged photo was actually taken at | 0.1.10 | Plugin | Beta | Download |
