I get a lot of questions for my Ask the iTunes Guy column at Macworld. Some are about hardware, but most are about iTunes and some of its quirky behavior.
I got a question a couple of weeks ago that stumped me. A reader was finding that iTunes was arbitrarily changing the tags of some of the tracks in his Music library. He’d change the tags himself, using a customized tagging system, then, some time later, he’d go back and find that iTunes had reverted the tags to the way they were before. This was only happening to purchased tracks, and, after a lengthy back-and-forth, I came up with a hypothesis. I wrote the reader suggesting he change a setting in iTunes’ preferences.
I’ve been having a problem recently, where certain MP3 files, encoded with LAME 3.99 would skip after 30 seconds. I wrote an article about it this morning, and, after writing that article, I decided to try something radical. I deleted my iTunes library, and rebuilt it. To do this, you quit iTunes, delete the iTunes Library file, then import the iTunes Library.xml file. (Read Apple’s tech note for full instructions.)
This took a while, as iTunes needed to read my 70,000-track library. When it was finished, I found that most of my purchased music had the wrong tags. Hmm, I thought, this is exactly the problem that my reader mentioned. It turns out that, when you launch iTunes, the Show iTunes in the Cloud purchases setting, in the Store preferences, is checked by default.
iTunes begins populating your library with your purchased tracks, grabbing their tags from the iTunes Store, with the original tags they contain on the store. When iTunes has finished importing your XML file, it retains the tags for those purchased tracks.
So, for my reader, he had this setting turned on – as most people do – and, most likely, each time he relaunched iTunes, it would check for purchases, and display his purchased music with the iTunes Store tags, not his own customized tags.
Fortunately, this is easy to fix. The original tags are still in the music files, and iTunes only writes the new tags to its library file. Create a smart playlist where Kind contains Purchased; this will find all your purchased tracks, which are the ones whose tags will have been changed.
Select all the tracks in that playlist, press Command-I, then change something. Find a tag you don’t use, and check it; you could use, for example, the BPM (beats per minute) tag, or the Comments tag. Click OK, and iTunes will change that tag, but also read the tags from your music files, reverting them to your customized tags. However, this nuked all my play counts and last played dates, and the only way to get that back is to import the XML file – as I explained above – from just before you made the mistake of turning that feature on.
This is actually quite disturbing, since you may spend a fair amount of time tagging your music, only to have iTunes change it. If you don’t need to download music from the cloud, and you customize your tags, I strongly suggest turning this setting off.