How to organize your archive

Describe the archive you want to see

ShotPorter does not impose one “correct” structure. It gives you the tools to build your own: simple or detailed, on one drive or several, for new shoots and for material accumulated over years. Sorting rules make it work.

A rule answers three questions

Which files? Rules are assigned by extension. Combine several extensions into any group that makes sense to you — NEF, ARW, CR3, for example — or create a separate rule for one specific file type.

Where? Every rule has its own base destination. RAW files can go to an archive drive, video to a separate high-capacity volume, JPEGs to a working folder, and documents to the Mac itself. One set of rules distributes files across several drives in a single run. Save the complete path — from base destination through the entire sorting tree — as a preset, then switch drives when circumstances change without rewriting the rule.

Along which path? Within the base destination, ShotPorter builds folders from ready-made elements: dates in several formats, camera models, content types, and more. Once you have a useful structure, save it as a template and reuse it in other rules.

Filenames themselves remain unchanged. If the destination already contains another file with the same name, ShotPorter never overwrites it: different versions keep their original names in adjacent VERSION folders.

What can a path contain?

We deliberately keep the list of available elements — tokens — focused. Every token should produce a predictable result that is easy to verify before copying begins, rather than bury you under a million obscure options with little use in real life.

If an important element is missing, tell us what it is and why it matters. We will do our best to add it in a future update.

{yyyy} · {yy}capture year, written with four or two digits
{mm} · {dd}two-digit month and day
{mon} · {month}short or full month name in the language selected in General settings
{camera}camera maker and model; if unavailable — Unknown_Camera
{serial}camera serial number read from file metadata
{file_type}recognized content type; {content_type} works the same way
{user_rule}the name of the rule matched by the file
{ext} · {ext_lower}the file extension in its original form or lowercase
{custom} · {client}
{location} · {jobcode}
variable fields that give folders clear, precise names at run time: a free-form note, client, location, and job code. ShotPorter asks for the required values before processing; blank fields leave no doubled or dangling separators and create no empty folders

Alongside the standard elements, you may use text, spaces, and any special characters allowed by the operating system. A slash / creates another level of nesting — a subfolder. There is no need to memorize the tokens: the visual editor helps you assemble any pattern.

ShotPorter settings with the visual rule and path-token editor

Folders should read well and sort correctly

The same idea can be written several ways. The difference may not matter today; it will matter after a few years, when the archive contains hundreds — perhaps thousands — of folders.

Month name only {month}
April · August · December · February

Easy to read, but Finder sorts the names alphabetically rather than chronologically.

Month number only {mm}
01 · 02 · 03 · 04

Sorts correctly, but every quick glance requires translating numbers back into month names.

Number plus name {mm}_{month}
01_January · 02_February · 03_March

The order remains chronological, while the folder name reads naturally.

Stable structure plus shoot name {yyyy}/{mm}_{month}/{custom}
2026/03_March/Tuscany

The structure stays consistent; ShotPorter asks for the particular shoot name before processing.

The language of month names is set in ShotPorter’s General settings. Classic English is the default, but the archive can speak your own language instead. For an entirely numeric structure, use {yyyy}/{mm}/{dd}; for easier reading, combine the number and name.

Do not force every fact into a folder name

A path answers where the material lives. Keywords explain what the material contains. Those are different jobs, and ShotPorter does not squeeze them into one field.

When enabled by your rules and processing scenario, the application asks for variable values as soon as a run starts. The value entered for {custom} becomes part of the path. Keywords are embedded in fully supported formats; other files receive Finder tags.

Authorship and copyright information need not be re-entered for every shoot either. They live in separate named templates that you can switch as needed.

Examples from real life

Find a situation that resembles your own. The closed row states the problem and recommendation; open it to see only the relevant rules, templates, and resulting paths.

You shoot both photographs and video, then process them in different applications. It makes sense to store them separately: video does not clutter the Lightroom catalog, and photographs do not get in the way when importing into DaVinci. Send photographs to a working SSD and video to a high-capacity RAID or NAS.

Photographs

ExtensionsNEF, ARW, CR3, DNG, JPG, JPEG
Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/WORK_SSD/Photos/2026/07_July-19/DSC_1234.NEF

Video

ExtensionsMOV, MP4, MXF
Destination/Volumes/VIDEO_RAID
TemplateVideos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/VIDEO_RAID/Videos/2026/07_July-19/C001.MOV
You shoot with conventional cameras and a drone. DNG is technically RAW, but aerial material goes through a separate selection process and should not be mixed with Canon and Nikon files. Group CR3 and NEF together, while sending DNG files into their own branch.

“Camera RAW” rule

ExtensionsCR3, NEF
Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/WORK_SSD/Photos/2026/07_July-19/DSC_1234.NEF

“Drone DNG” rule

ExtensionsDNG
Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}/Drone
Result/Volumes/WORK_SSD/Photos/2026/07_July-19/Drone/DJI_0042.DNG
You shoot many different kinds of material and want short, descriptive notes in your folder names. Add the {custom} token to the standard date. Before processing, ShotPorter asks what to call this particular shoot and inserts the answer into the path.

Standard path — unique shoot name

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}-{custom}
Entered nameParis
Result/Volumes/WORK_SSD/Photos/2026/07_July-19-Paris/DSC_1234.NEF
Commercial shoots are occasional and share one archive with personal work. The commercial jobs still need to stand out: they receive a client name, while personal shoots do not. Add the {client} token and an ordinary separator — a hyphen, underscore, or space. Leave the client blank and ShotPorter prevents both run-together names and dangling separators.

One template for commercial and personal work

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}-{client}
Client entered/Volumes/WORK_SSD/Photos/2026/07_July-19-Acme/DSC_1234.NEF
Client left blank/Volumes/WORK_SSD/Photos/2026/07_July-19/DSC_1234.NEF
Commercial work is your main business. You want to group shoots by client while keeping individual assignments separate. Use separate tokens for the client name and job identifier. Either field may be left blank, and the resulting tree still remains clean.

Clients and individual assignments

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{client}/{jobcode}_{month}-{dd}
Fields completed/Volumes/WORK_SSD/Photos/2026/Acme/JOB-042_July-19/DSC_1234.NEF
Fields left blank/Volumes/WORK_SSD/Photos/2026/July-19/DSC_1234.NEF
You work as a team and need each crew member’s material kept separately on commercial projects. Two Canon cameras produce the same CR3 format, but during processing you need to know which camera produced each file. Add camera serial-number and model tokens to the job path, giving every camera its own folder.

Two cameras, two folders within one job

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{client}/{jobcode}_{month}-{dd}/{serial}-{camera}
Canon EOS R5/Volumes/WORK_SSD/Photos/2026/Acme/JOB-042_July-19/1200123456-Canon EOS R5/IMG_1234.CR3
Canon EOS R6 Mark II/Volumes/WORK_SSD/Photos/2026/Acme/JOB-042_July-19/2300654321-Canon EOS R6 Mark II/IMG_5678.CR3
You travel often and want the archive to read both as a calendar and as a map of your journeys. Use {location} for the country or region, and {custom} for a more precise note about each shoot.

Country, date, and a short note

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{location}/{mm}_{month}-{dd}_{custom}
Rome/Volumes/WORK_SSD/Photos/2026/Italy/05_May-12_Rome/DSC_1234.NEF
Venice/Volumes/WORK_SSD/Photos/2026/Italy/05_May-15_Venice/DSC_2345.NEF
Vineyards/Volumes/WORK_SSD/Photos/2026/Italy/05_May-18_Vineyards/DSC_3456.NEF
While travelling, you store material on a portable SSD; at home, it goes directly into the main archive. The folder tree itself should remain identical. Save two complete-path presets and switch only the destination.

“On the road” preset

Destination/Volumes/TRAVEL_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/TRAVEL_SSD/Photos/2026/07_July-19/DSC_1234.NEF

“At home” preset

Destination/Volumes/WORK_SSD
TemplatePhotos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/WORK_SSD/Photos/2026/07_July-19/DSC_1234.NEF
An action camera writes THM and LRV support files beside every clip. They serve no purpose in the archive and only create noise. Classify THM and LRV as junk; copy and verify the video as usual.

“Video” rule

ExtensionsMOV, MP4
Destination/Volumes/VIDEO_RAID
TemplateVideos/{yyyy}/{mm}_{month}-{dd}
Result/Volumes/VIDEO_RAID/Videos/2026/07_July-19/GX010042.MP4

“Junk” rule

ExtensionsTHM, LRV
Actiondo not copy
Cleanupremove from the card only during an explicitly permitted safe cleanup
The photographs show the finished story; the video captures the same job behind the scenes. They need different keywords for search. Add “client, portrait” to the photographs and “client, backstage” to the video.

Photographs

FilesNEF, CR3, JPG
Keywordsclient, portrait
ResultDSC_1234.NEF → client · portrait

Video

FilesMOV, MP4, MXF
Keywordsclient, backstage
ResultC001.MOV → client · backstage

How to begin untangling an old archive

You do not need to turn an old archive into a perfect source by hand. Select any folder or available drive, and ShotPorter performs the same process: scan, copy, verify, and sort.

  1. Start with a small but representative folder. It will quickly reveal extensions that still lack rules and the kinds of conflicts present in the real archive.
  2. Run the first pass manually. Check destinations, {custom} values, and final paths before entrusting large volumes to the system.
  3. Leave unknown files alone at first. A file without a rule remains untouched in the source folder. Later, assign its extension to a suitable group, ignored types, or junk.
  4. Work in batches. After several folders, you will see which rules are truly universal and which were invented for a single exception.
  5. Do not confuse organization with backup. A major reorganization of an old archive still calls for an independent copy beforehand.

Begin more simply than you are tempted to

A flexible system makes it tempting to account for everything down to the last support file. It is usually better to begin with a few obvious groups — RAW, finished images, and video, for example. After several real runs, you will know what genuinely needs a separate destination or template.

This is precisely why ShotPorter does not impose ready-made groups. A photographer, a videographer, and a mixed team mean different things by “order.” The best system is not the most detailed one; it is the one you understand and will actually use every day.

Then stop spending effort on keeping it that way

Run the first jobs manually: check destinations, see real conflicts, and make sure the outcome matches your intentions. There is no reason to keep repeating decisions you have already made.

Once the rules have settled, register your working cards and let Hands-Free mode perform the routine steps. On future connections, ShotPorter applies the same system and stops only for a decision you did not delegate. The order remains yours; maintaining it ceases to be a separate job.