Sorting geotagged photos into sub-directories, using Darktable?

I recently returned from an overseas holiday with over 9000 raw (Nikon Z9 NEF HE*) images (geotagged).
What I want to do now is sort these images by location, and move them into sub-directories (which I’ll manually create) according to their location. I have Googled and tried several suggested programs, but most don’t even show my images on a map.

Yesteroday I installed Darktable, and it goes close, but I can’t see how to do the final step!

It shows thumbnails of my photos on a map (that’s a good start!), with the number of shots taken at each location. But despite trying all combinations of keys and mouse clicks, I can’t find how to ‘select’ a group of images (represented by a single thumbnail and an image-count) shown at a specific location so I can then move the files to an appropriate sub-directory.

Can anybody please help me?

Daniel (Australia)

1 Like

Define locations (darktable 4.4 user manual - locations), then right-click on location, see sub-menu.


Welcome to the forums!

What @pehar said regarding locations.

What you may find most helpful is defining locations that are defined by polygons - this will allow a hierarchy by country/state/region/locality to the extent that you choose. In order for this to work for large areas (say, a country), you will need to set the max polygon points in map settings to a fairly high number. See screenshot portion:


Thank you Martin and (especially) Pehar. With a bit of trial-and-error, after defining a location containing a bunch of images, I eventually worked out I needed to ‘switch to the lighttable view’, select all the images in that view, then use the Export facility to copy them to a sub-directory I had created for that location.

This is essentially what I wanted to do, but I encountered a minor hiccup along the way (learning as I go!). Though I specified the copy location as E:\Photos\Nikon_Digital\KSA,EG,ET2023\Raw\Z91\Bull-jumping, Darktable instead created a new directory named E:\PhotosNikon_DigitalKSA,EG,ET2023RawZ91Bull-jumping, and placed the copies there!

No problem, it takes only seconds to move the copies to the intended directory, and I’ll know next time that Darktable uses the Linux directory naming convention.

So thanks again to the two responders to my question, and thanks too to the maintainers of Darktable for providing this facility to do just what I needed, which no other Windows software seems to do!

export does not make a copy. Even if your input is a jpg, and you export to jpg, the image is run through darktable’s pipeline and gets re-compressed.


You might want to re-check your copy of Darktable 4.4.2…

Amongst the Export Storage options is ‘format options’, and one selection is ‘copy’ This makes a straight (1:1) copy of the original NEF files, along with their Darktable-created .XMP files.

1 Like

If you have selected all images from a location in lighttable
lighttable → selected images → move
should also work.


Wonderful! That’s even better for my purpose – saves me having to later delete the files from the original directory.

You’re a lifesaver, pehar, and thank you so, so much!

And once again, thanks very much to the authors/maintainers for such a wonderful program. The answer to my dreams! :-))


Thanks. I wasn’t aware of that format, and it never occured to me there would be one like that - if I want to copy files, I use a file manager or a command (and I never wanted to duplicate files which are already in darktable). I knew about move being available as an operation (but never used that one, either).