Build a file system structure from the data


When I successfully tagged multiple artists and albums, can I use picard to put these files into a filesystem folder structure like music/artist/album/tracknr - title.mp3 ?


Yes, you can configure the folder and file naming in Options > File Naming. You have to enable both “Move files when saving” and “Rename files and saving” to create both the folder structure and the file name change.

The default file naming pattern will pretty much look like what you suggested, but it is very flexible and can be customized. Have a look at these forums for different discussions on this. Especiall the following thread:


Thx it works fine. But it would be MUCH better in my opinion to have it seperated and not all included in the saving button. It would be better to have a save tags and move files button apart from each other. Because this way you don’t have a good feedback what is actually happening.


I’m not sure about separating them – I, at least, think of the file name as a reflection of the tags and needing to remember to press two buttons every time the metadata changes strikes me as more redundant and error-prone than necessary. I do definitely see where you’re coming from with it being opaque, though, and agree that the default should be that moving/renaming is disabled, if it’s not already. On the other hand, if someone does enable an option labeled “Move files on save”, I’d think it would be clear enough what’s happening that we don’t need too much more signposting. Make the toggle more prominent, perhaps, (those pages of options can be rather intimidating), but the workflow seems clear enough as it is.


it is, fortunately.

One of the problems I encountered is for example, that I wanted to adjust the move folder for one single release. I then have to go to the settings change it, click save, go again to the options and change it, go forward with work. I really would appreciate to have it more visible in the working GUI and under my control.


As you’ve found, Picard is really not great with exceptions. In situations like that, your options are either going to be doing what you did (every time you work with that release), or tweaking your naming script in such a way that it is able to do what you want automatically – and because most of us use Picard for batch editing, I wouldn’t hold my breath for that choice changing.

What I have done, though, is write my script to recognize custom fields like %artistfolder% and %albumfolder%, so if I do want to make an exception for something, I can add a new entry in the bottom pane with the value I want, and it will be saved into the files themselves as well as being part of the path/name. That way, Picard is able to see that I did indeed mean to put it somewhere other than where the rest of the tags would have it, and it will “remember” that every time I load that file in the future as well.

The other solution I’ve heard mentioned would be to support multiple profiles to easily switch between options for classical and pop music, say, but that feature’s not currently implemented and I’m not sure how much traction it’s gotten. Besides, it can already be emulated in scripts by wrapping them in a check for an %is_classical% flag (manually set or from Classical Extras), so there’s not as much impetus to add it.