Renaming Photos Prior to Import for Lightroom CC (or Apple Photos)
Lightroom CC (that's the new Cloud version, not the now-renamed-“Classic” version) is lacking the ability to rename photos on import. This is one of the few significant limitations of it for me. Personally I really like Lightroom CC. I love that all my photos are synced across all devices. The vast majority of features that I need from Classic are in CC, and the cleaned up interface is, for the most part, welcome. But there is one missing feature that really irks me, and that's the ability to rename files on import.
Why bother renaming?
Let's think about why we want to rename files in the first place. Historically, your photos were stored in folders on your hard drive that you could easily peruse. If you were/are using Lightroom Classic, that folder structure is mimicked in the Folders view. If you were an Aperture user and working referenced, then you had a folder structure in the Finder that was set up however you wanted (yet wasn't mirrored in Aperture). However in Lightroom CC and in Apple Photos, the original is hidden from view and so you don't need to worry about organization or, presumably, file names.
For long time readers, you'll know that my preference was always to store images in a year > month > day folder hierarchy, meaning I had a folder for ever year, and inside of that one for every month, then in that, one for ever day (for which photos existed, of course). Each photo was renamed on import with my own special formula. This formula told you everything you needed to know about the file without opening it or looking at its metadata.
Here's a screenshot of an old set of photos of mine in the Finder…
From the filename alone, we can see that it's a photo of a Black Bear, shot on January 03 of 2012 at 5:48 in the evening. Here's the breakdown of my naming structure, for those unfamiliar:
At the time of import, you typed in whatever the event name was, and the system took care of the rest. The date and time are written in a way that is actually ISO 8601 standard (thank you Frank for telling me that!) and is the only format that's truly chronological, from largest increment (year) to smallest (second). I leave the original camera-assigned file name on there too because multiple photos can be taken in the same second (and there's no sub-second naming available in these DAM apps), and that keeps from having duplicate names, and also forces them in order of capture. Finally I liked having my name attached because it's just one more way to identify the file if it ends up on someone else's system and oops the metadata got stripped.
Anyway back to it… so why go to all this trouble? Two reasons. First, because no matter the app used, I've seen Finder files get disconnected from the proprietary file system, and suddenly your app is telling you that it can't find IMG_1234.JPG. “Um, thanks… so which of the two dozen IMG_1234.JPG files on my computer is the one you want?” My method ensures that every single photo you take in the history of forever will always have a unique name, and the only chance of a duplicate would be if you had a second camera shooting at the same time, and both cameras happen to run through the exact same file number — at the exact same second. Pretty damn unlikely.
The second reason is more relevant to every day use, and that's export. When you export versions of photos from Lightroom, they inherit the original file name. So you can export a bunch of files with names like IMG1234-1.jpg, or names that actually mean something. (In Photos, you actually have a choice of the exported name — more than you get in Lightroom, surprisingly! — and one of those choices is Use File Name.)
OK, so how do we rename in Lightroom CC today?
Since you can't rename at the time of import, and you can't rename the photos once they're imported, you have to do it before you import. As you can see from the Lightroom screenshot below, the File Name is a non-editable field (and even if it were, there's no batch function, so you'd be doing this one at a time). And if you take the time to add a Title or Caption, that does not become the file name on export — I've tried.
Therefore if you want to rename files, you have to do it before you import. Which unfortunately turns every import into a four step process, instead of one. But we'll make it easy, I promise.
- Copy files to a location in the Finder
- Rename files
- Import into Lightroom CC
- Delete originals from the Finder
Copy is just a finder copy, but renaming can be done any number of ways. You can use the Finder's built-in rename function (did you know that you can right-click on any selection of multiple files in the Finder and choose Rename (n) items…? Pretty cool… but very limiting).
Automator to the rescue!
The better way is with Automator, which is free in macOS! And even better… with Automator, you can even automate the copying of the files. I've created an Automator script which you can download below to try on your own. Here's a screenshot and an explanation of what each step does. Keep in mind that for the file renaming, you have to build it backwards, so it can append the next step of the rename to the front of the file.
I've built this as a Service, which means you access it via a contextual menu. You mount your memory card, dig into it to find your photos, select all of them, right-click and choose the command. You could also save it as an applet that you drag-and-drop the photos on to. Totally up to you.
- This first step copies the selected photos to a new location in the Finder. You will need to choose your own folder to copy them to when you first set this up; I created a folder called _IMPORT into Lightroom CC but of course you can call it anything you like. Technically you could skip this step and just rename the files on the memory card, but I think that's risky. Plus, the files have to be copied eventually. If you do it now, then when they import into Lightroom, that stage will go much faster.
- The first name change is to add my copyright to the end of the file name. You'll notice two changes here to what I originally outlined. First, there's no year. Automator can add a full date but not just a year. I figure since the complete date will be added to the file name, I'm OK losing the year here. And second, instead of using the © copyright symbol, which does occasionally cause problems or turn into a weird character with some file systems, I have replaced that with simply “(c)”. Keep in mind that it is not legally required (at least in the US) to include any kind of copyright designator for a file to be copyrighted — I just do it as a simple, obvious, no-excuse indicator.
- Now to add the time. It's set to Hour Minute Second with dash and underscore separators. I don't want spaces in my file names.
- Next is the date. Same criteria as above. Also, Use Leading Zeros is enabled because I want to ensure that a single-digit date is represented as “01” instead of just “1”.
- Now for a simple dash to separate the custom name (up next) from what we've already added.
- Finally, the custom “shoot” name! Notice that this the very important Show this action when the workflow runs is enabled. That way you can re-type your shoot name every time you run the script, if needed. I'll point out that this tends to become unchecked as you work with the action, so if you tweak anything, be sure to verify that this is still enabled.
YYYY-MM-DD. Dashes are a separator, so if you have
YYY_MM_DD-HH_MM_SSthen the date and time are separated when selecting. But I don't always have the option I want in automator, so whatever… as long as there's a visual separation, that's what matters most.
Installing the Automator script
First… download it!
To install it…
- Double click to unzip the file if it didn't automatically, then double click on the
.workflowfile and the system will prompt you to install it!
- If it doesn't automatically install, then navigate to
~/Library/Servicesand copy the script there
- If it doesn't automatically install, then navigate to
- You can name it whatever you like if you don't like my name
- Double-click to open it if it isn't already, and change the destination in the first action, Copy Finder Items, to whatever folder you want on your computer. If you use iCloud Drive, I don't recommend putting it on your Desktop or Documents folder, or you'll kick off a big iCloud upload the instant you start running this script. Putting this folder in the same drive as your Lightroom library or originals is stored is a good idea though, as that means on the actual import step, Lightroom won't have to copy files between drives.
- Save and close, and you're ready to go!
Time to import your photos
Here's how you use the script and import your photos.
- Insert your SD or CF card into your computer / card reader like always
- Open the card in the Finder, and navigate to there the photos are stored. It's usually a few levels deep, perhaps in a
- (The first time you do this, I recommend you also open the folder you're copying to in your script, so you can watch it and verify everything is working properly. You may want to test the first time with just a few photos.)
- Select all the photos (or all the new photos, if you've already imported some photos from this card), right-click or control-click on the photos, and from the bottom of the contextual menu that pops up, choose Services > Copy & Rename Photos for Lightroom CC (or whatever you renamed it to)
- Once the copy is complete, a dialog will pop up asking you to enter name. This is your “shoot name”, and should be something that represents the photos (a client name, project name, destination, whatever!). You should NOT include spaces here, and you also don't need to include a trailing underscore. Just enter a name.
- Shortly after, you'll see all of your photos copied and renamed!
- Now, open Lightroom (or Photos) and import as usual.
- Once the photos are imported, go back to the Finder and move all those new photos to the trash. They will be living in Lightroom's database now, and are no longer needed in the Finder. You can also do this later, and if you forget, next time you import, Lightroom will recognize that these are duplicates and not import them again.
That's it! What do you think? Is it worth the hassle?