Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a large number of MP3s (> 10000) organized in a directory structure like


Many of them are missing the correct ID3 tags for artist and album.

Does anybody know from own experience a tool that can do this automatically? A Windows solution would be preferred but I'd be ready to set up a Linux VM for this if some nifty shell script exists.

share|improve this question
Do you want to set them automatically according to the folder names? Or would you be fine with tagging according to fingerprints? For the latter, we have plenty of questions here already, suggesting MusicBrainz Picard (cba to find the duplicates now). – slhck Feb 15 '12 at 11:29
check out musicbrainz picard it's really popular and I think it can do what you want – Raystafarian Feb 15 '12 at 11:30
@slhck, Raystafarian thanks, but they've been ripped CD-wise and I have often removed those songs I didn't like, so I guess album fingerprinting won't work. A solution that automatically sets them according to the directory structure is probably the only way to go. – Pekka 웃 Feb 15 '12 at 11:31
If you use picard, you'd want to group the tracks in the same album together. In this case, and with the number of files and the organisation of the files, using the path seems to be a faster option, IMO. – Journeyman Geek Feb 15 '12 at 11:38

MP3tag would do it - using the filename to tag option, and using a partial path.

For example:


It's one of the situations that's in the MP3tag manual.

share|improve this answer
This looks promising, thanks very much! I'll give this a try. – Pekka 웃 Feb 15 '12 at 11:34

How to tag MP3 files by its directory structure

Use foobar2000 together with its plugin masstagger

|__ 1st folder = artist  
   |__ 2nd folder = album  
      |__ file name  = track 1
      |__ file name  = track 2
  1. Download & install foobar2000 (preferable in portable mode)
  2. Start foobar and drag & drop your music files into its main window
  3. Download masstagger plugin
  4. Install masstagger via Foobar → File → Preferences → Components → Install
  5. Select all music files, right-click them and choose: Tagging → Manage Scripts
  6. Add the following three lines

    Guess values from other fields
    Source format:     $directory(%path%,2)
    Guessing pattern:  %artist%
    Guess values from other fields
    Source format:     $directory(%path%,1)
    Guessing pattern:  %album%
    Guess values from filename
    Scheme:            %title%

    It should look like this (thats the important part) enter image description here

  7. Click run & be happy
share|improve this answer

You can try easytag. I used it to tag all my 20GB+ music collections.

If you have the same structure for all your music (for example, everything is "Artist/Year - Album/Track# - Title") you can tag everything in just a few clicks.

It requires GTK runtime for Windows.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.