• Welcome to Photography Forum. Our photography community!

    Photography-forum is dedicated to those who have passion, desire and love of photography and want to improve their photographic technique. It doesn't matter what you photograph, landscapes, weddings, portraits or your photographic experience, it's about learning and loving what we do. Photography!

    If you want learn and expand your photography skills then there is one place to do it Photography Forum !!!

    You are viewing photography-forum as a guest which gives you limited access to view most forums and enjoy other features. By joining our free community you will be able to post photographs for critique, join in the monthly photography competitions, respond to polls, upload content and enjoy many other special features. Registration is fast, simple and absolutely free so please join Photography Forum.

    If you have any problems please contact us.

    The Photography-Forum Team
    Click here to see Forum Rules

Photo Inventory using EXIFTOOL


Always on
Premium Member
I have some excellent prime lenses that provide better image quality than my zoom lenses. Unfortunately, the convenience of the zoom lenses and my own laziness results in a lot of photos captured with compromised image quality. I have known that to be a problem for some time but lacked the detail that will help my decision-making in the field. Using the 5D3, the difference between a high resolution lens and a medium resolution lens is marginal. The compromise was not significant. The lower the resolution of the sensor (pixels per millimeter squared), the less a higher resolution lens adds to the image quality for that camera. The opposite is also true - the higher the resolution of the sensor, the greater the benefit of using a high resolution lens.

I need a photo inventory.

I use Photoshop and only use Lightroom, with its excellent file management capabilities, to keep my skills up for photo club tutoring. So I have been struggling to create an up-to-date photo inventory so that I might, in this case, assess my lens use by focal length and photo category (landscape, architecture, etc.).

Adobe Bridge offers some capabilities but they are limited.

EXIFTOOL can read, write, and edit metadata. It can handle EXIF, IPTC, XMP, JFIF, GPS, and many more metadata types including many manufacturer's MakerNotes. It is multi-lingual.

I downloaded EXIFTOOL some years ago and struggled with it. No problem using it on individual photos or even on all photos in one directory. It was the recursion function that automatically allows it to search all subdirectories that had me stumped. Until now.

EXIFTOOL is a free application that's been around for years. The latest version came out January 2016. It is an application written in the script language PERL and can be downloaded as a stand-alone Windows or Mac application.

It is a powerful tool but can be a challenge to operate. It is a command line tool - there is no easy to use graphical user interface. You have to use the Command Prompt to use it in Windows.

The following command reads every raw file (.CR2) in a directory (folder) and its subdirectories and creates a comma separated value (CSV) file that can be imported into a spreadsheet application.

exiftool -csv -canon -k -r -ext cr2 . >> inventory.csv

Here's what is going on:
-csv format data with a comma delimiter
-canon provide basic data for Canon cameras (-nikon, etc, are other options)
-k stop the window from closing when done, helpful should there be errors
-r recursive implementation, run the application through all of the subdirectories
-ext tells the application to look for a specific extension - in this case cr2
. very important for recursion, tells the application to start in this directory (whatever the directory may be)
>> filename.csv write to the identified file keeping it open for further writing for each directory.

Here's a sample file. The column headers are the first block of text (a long line that is wrapped here) and data for each raw file are the lines of text that follow.

f:/photos/2015_12_27/151227-5DR-3745.CR2,151227-5DR-3745.CR2,Canon EOS 5DS R,2015:12:27 10:53:08,Aperture-priority AE,1/160,5.6,Spot,0,320,100.0 mm,100.0 mm,8688x5792,RAW,"Off, Did not fire",Auto (ambience priority),Manual Focus (3),Normal,0,Normal,Normal,Uncalibrated,Off,65 MB,Single-frame Shooting,,042021000694
f:/photos/2015_12_27/151227-5DR-3746.CR2,151227-5DR-3746.CR2,Canon EOS 5DS R,2015:12:27 10:53:20,Aperture-priority AE,1/160,5.6,Spot,0,320,100.0 mm,100.0 mm,8688x5792,RAW,"Off, Did not fire",Auto (ambience priority),Manual Focus (3),Normal,0,Normal,Normal,Uncalibrated,Off,63 MB,Single-frame Shooting,,042021000694
f:/photos/2015_12_27/151227-5DR-3747.CR2,151227-5DR-3747.CR2,Canon EOS 5DS R,2015:12:27 10:53:41,Aperture-priority AE,1/200,5.6,Spot,0,320,100.0 mm,100.0 mm,8688x5792,RAW,"Off, Did not fire",Auto (ambience priority),Manual Focus (3),Normal,0,Normal,Normal,Uncalibrated,Off,59 MB,Single-frame Shooting,,042021000694

This is using the command line shown above with the -canon tag. Microsoft Excel will open a CSV file and correctly sort out the rows and columns.

You can also fine-tune what you get by being more explicit. The application allows you to reference a separate text file that contains the tags for the information you actually want. The separate file is called an ARGFILE and here's an example.


Each tag has to be on a separate line. Each tag begins with a - symbol. The # symbol tells the application to ignore that line, this allows me to turn a line on or off as I want. I am getting old and if the instructions refer to the file as an ARGFILE, I am happy to call my implementation argfile.txt.

The ARGFILE is used like this:

exiftool -csv -@ argfile.txt -k -r -ext cr2 . >> inventory.csv

All of the spaces and special symbols (-@.) are important.

Clearly this is just touching the surface for what the application can do. It can also edit, update, or delete metadata which I am fearful of and will not use.

The application can be found here:

There are several discussions on the Web about the application. Unfortunately, for me, they are very esoteric. Years ago I wrote scripts in PHP and PERL but today they are rather like a foreign language that I once spoke.

So here is an option for creating a photo inventory that won't cost you any cash by will gobble up some time learning what it is capable of.
Last edited:


Always on
Thanks Mike, I've had a copy of EXIFtool for years but wasn't aware it could do so much... I think it's time I used it to help index/sort my images :)