Once you have more than a handful of images it’s going to be very important to use a systematic naming scheme. Having an organized system for numbering your files will allow you and your clients to identify images precisely. Instead of a client asking for a picture of that “prison cell in Alcatraz” (I have about 160 images of Alcatraz and most contain prison cells), the client can just look at my website and say I want to license image #22140. Given the ID number, I can quickly find the file in my Lightroom database or on my hard disk.
Every image on my website has an image identifier displayed by the caption: “Isolation cell in D-block at Alcatraz. Photo #22140.”
There are many different numbering systems, but the only rule that must NEVER be broken is that each image file should have its own unique identifier. You should never have two different images with the same file name.
The most common naming methods use identifiers based on the following:
- SEQUENCE. A single number that increments for each new image. E.g. 10001, 10002, 10003. etc. This may start at 1 or at a number such as 10,000 or 100,000 to ensure that all images have the same number of digits.
- DATE + SEQUENCE. The date the image was captured followed by a short sequence number, for example, 20140121_0141 (photo #141 taken on Jan 21, 2014). In this case, with only four digits the sequence number may repeat but together with the date is unique (as long as you don’t shoot more than 10000 images in that day). I recommend YYYYMMDD as the date format so that sorting puts the files in chronological order.
- SUBJECT + SEQUENCE. A string representing the subject followed by a sequential number. E.g. utah_2341, utah_2342, etc. The combination of subject and sequence is unique.
It’s also possible to use both date and subject to create file names such as 20120121_GrandCanyon_0123. In general, one can always encode additional information by adding fields to the name such as the following:
- The photographer’s name.
- The client’s name. This may be helpful for photographers who primarily do assignment work.
- Designations for derivative images. For example, one can add suffixes such as BW for black and white, MASTER for a finalized version which has all editing and retouching done, or CMYK for images converted for commercial offset presses.
These additional fields can appear anywhere in the file name string but generally you would want designations for derivative images to be at the end so that images based on the same original would be sorted together.
Additionally, all image files should have an extension such as .jpg, .tif, .NEF, or .CR2 indicating the file type. Depending on your workflow, these extensions can also indicate specific versions of the image. For example, my website images are always .jpg, master files are always .tif, and original RAW captures are .NEF (Nikon) or .CR2 (Canon).
When choosing a naming system there will be a tradeoff between length and informativeness. Shorter file names are easier to work with but tell you little about the image. A long name will let one encode additional information describing the image but may be cumbersome in day-to-day image management.
Filename Length and Special Characters
Because your digital image files will likely be viewed on and transferred to multiple different computers, it’s important that your identifiers are valid file names on a wide variety of systems. Thus, for maximum compatability, you should restrict your file names as follows:
- Use all lower case names (or all upper case). Do not use case sensitive names and have AM901.jpg be a different file from am901.jpg.
- Limit the filename to 31 characters or less including the extension (e.g. .jpg or .tif). Although most modern file systems should support 255 characters (see file system name limitations), 31 characters is a reasonable compromise for compatability.
- Limit punctuation to underscores “_”, dashes “-”, and a single period “.” before the file extension.
- Never use spaces in the filename.
For my own professional catalog, I use a simple scheme that results in short file names such as bay032104 or bay032105c. The first part “bay” is simply my last name and is there so that a client they can identify me as the photographer. The second part is a 6 digit sequence number that covers all of my images (starts at 1 and is now around 33k). Finally, I include a letter suffix if the image is part of an HDR or panorama set and is not intended to be a standalone picture.
In general my philosophy has been to use a short file name and and let my database (Lightroom) handle management of all associated meta-data.
I also have a separate catalog for my family photos, many of which are scans of old prints. For these images I use a DATE + SEQUENCE scheme resulting in identifiers like 20120421_2341. When I do not know the exact date of the picture, I will use XX to represent unknown (e.g 201204XX indicates the picture was taken in April 2012).
Here are a few more examples taken from other photographers and stock agencies:
- Seth Resnick, a corporate and stock photographer, uses a DATE + SUBJECT + SEQUENCE scheme for his images resulting in names such as 20090328_indiancreek_0003.CR2.
- Peter Krogh, the author of The DAM Book (DAM is an acronym for digital asset management) uses PHOTOGRAPHER + DATE + SEQUENCE: e.g. Krogh_050101_1234.DNG (note: only two digits for the year).
- John Shaw, author of John Shaw’s Business of Nature Photography, uses a CATEGORY + SEQUENCE + DUPE scheme (e.g. NP547c, NP547d, NP548a). The category is a 1 or 2 character string based on the main subject of the photo. For example, M = Mammals, B = Birds, F = Flowering plants, NP = National Parks, and MA = Mammals, Africa. As Shaw spent much of his career shooting film, he made multiple in camera dupes which he denotes by a letter suffix. For example, the c in NP547c corresponds to the third in camera dupe.
- Alamy, an editorial focussed stock agency, uses a 6 digit sequence number such as ADW38N, ADW38O, and ADW38P with both decimal digits and alphabetical letters. This results in a very short sequence even for a very large image collection (Alamy currently has ~50M images) and with 6 digits they can handle over 2 billion images. The main drawback of Alamy’s system is that their programmers need to work in base 36.
- Getty Images, the largest traditional stock agency, uses a 9 digit decimal number such as 169960287 to identify images. This isn’t as short as Alamy’s identifier but is still compact. This approach is popular with other agencies as well.
Tieing the Filename to Image Storage
In general, you will want to link your storage system (digital files or film) to the file numbers. Given a file number you should be able to go straight to it’s location on your hard disk or where you physically store it (for film).
For example, I use a sequential number and on my master drive I divide my digital images into folders that each store 1000 images. For the few film images I have (less than 1000), I keep these in slide pages organized in numerical order.
Folder structure for images named sequentially.
With my personal images that use a date based numbering scheme, I store images in folders by year. Note that I used the automatic number assigned from my scanning software as my 4-digit sequence number. Thus, the numbers may not be consecutive within a given year.
Folder structure for images named by date.
Which Method is Best for Me
Before deciding on a method, you should spend some time thinking about how you will access your images and how others, with whom you will share your images, will work with your pictures. Once you start a system, you won’t want to change it as there will be large migration costs especially if you’ve already sent out images to clients.
My preference is for a simple sequence number due to its shortness and ease of working with my website (I do all the programming for my website and it’s convenient to represent each photo ID with a simple integer). I also rely on a database (Lightroom) to manage metadata so there is no need for me to encode additional fields in the filename. However, if the majority of my work were assignment based I would probably use a DATE + (CLIENT or SUBJECT) + SEQUENCE filename.