Anyone who has been reading the tunequest for a while knows that statistics, numbers, figures and graphs have played a large part in its progress. In fact, it was the discovery that 10% of my songs were responsible for 49% of my total play counts that prompted me to set out on this endeavor in the first place.
To this day, I’m still surprised by the lack of sophisticated options available for gathering and analyzing iTunes’ stored data. That XML file has been a statistical treasure trove since the day it started recording star ratings and play counts. You’d think that in the four years since, there would be a more mature market of programs to choose from.
However, 2006 has actually seen some positive developments in that regard. While there is still no killer app for iTunes stats, there are a number of solutions for parsing your XML file and learning more about your music, and yourself.
For Mac OS X and Windows. Super Analyzer is a nice, fairly sophisticated tool. It analyzes an iTunes XML file and returns a variety of data. Super Analyzer tells you general stats, such as number of tracks/artists/albums/genres, total play counts, total listening time, average track length, plus a couple oddballs such as the time of day that most songs are played and the most common word in your song titles.
The program also provides a number of spiffy graphs, such as a scatter plot of star ratings vs. total play counts and a line graph showing the distribution of your songs by year. If you’ve got a surge of early 90s music, that graph will let you know.
Any statistics program will only be as good as the data being fed into it and Super Analyzer will inform you of how many songs are missing information (year, artist, album, etc). It’s good information to know, but it can be a little too strict. The program relies on the ‘track total’ number for calculating the number of complete albums in the library. If you don’t have that number stored in your iTunes, the program considers the file’s data to be incomplete. That particular stat doesn’t affect the functionality of the app, but it is an annoyance. It would be grand if I were able to choose which data points to analyze.
One of Super Analyzer’s best features is that it reads iTunes formatted XML files, meaning that you can export any playlist from your iTunes library and have it examined by the program. If you’re curious about the stats of just your rock music, create a smart playlist in iTunes with
genre contains rock. Or all your songs from 1999:
year is 1999. Export that song list from the File menu, then open it in Super Analyzer. If it can be made into a smart playlist, it can be studied.
Finally, Super Analyzer exports its results as a nice looking web page. Here’s the results from my library using a smart playlist genre contains rock.
The developer’s site seems to have disappeared, so until an official source pops up, I’m making this program available for download here.
A Mac-only program that quickly sifts through your data. I’ve written about it before, so please allow me to quote myself:
It analyzes your library data to calculate your top 100 songs, artists, albums and genres, based on play counts (and optionally weights for star rating). Additionally, it calculates the total number of plays of all your songs and tells you how much total time you’ve spent listening to your music. It also tells you the average length of your songs (4:23 in my case) and average number of songs you play each day.
It gives a good overall view of your listening habits, but it does have a couple drawbacks. First of all, the program samples the entire library and doesn’t allow you customize the data it analyzes. Secondly, it’s case-sensitive. While iTunes itself is smart enough to know that “Mouse on Mars” “Mouse On Mars” and “mouse on mars” are all the same artist, iTunes Statistician is not. It will analyze them each separately. If you wish to have completely accurate stats, make sure your tags are consistent.
To that end, let’s look at a program called…
beaTunes (for Mac OS X and Windows) isn’t an iTunes statistics program per se. It’s raison d’être is to help put together better playlists by matching songs in your library to each other. But it’s notable for two reasons:
- It inspects your library for misspellings and differences in artist, album and genre names;
- It offers a song stat I’ve not seen anywhere else, Play Frequency.
There’s no documentation for that feature, but it looks like it compares the play count of the song to the date it was added to the library (Update: the writer of beaTunes sheds some light on Play Frequency in the comments. It tends to skew toward the more recently added songs, but it’s interesting to see nonetheless.)
These AppleScripts provide piecemeal stats from within iTunes itself (Mac only, of course).
Most Played Artists
Totals all the play counts for individual artists and saves to a text file.
Averages the star ratings for all the songs on an album and saves to a text file. This script will ignore any album that does not have all its songs rated.
Total Play Count of Selected Tracks
Adds the play count numbers of all selected songs and displays that number on screen.
Time of Selected Tracks
Adds the total running time of selected songs and displays it on screen. Saves you from having to create a new playlist to find total time.
Two scripts here. One calculates the average daily listening time of the entire library. The other calculates the total playing time (time X play count) of all selected songs.
Here’s an XSLT script that tells you the distribution of your star ratings.
If you’re comfortable with MySQL and PHP, here is a do-it-yourself solution. I didn’t try this method, so I can’t vouch for it.
iTunes Stats (different from above)
This method will show you the artists with the highest ranking, weighted by the number of rated songs. Possibly more. It does of course require a web server to run.
Not really iTunes-related, but it does have some overlap. The site uses a plugin to track your listening habits. It stores aggregate play counts and uses them connect you to similar fans and recommend music. It doesn’t track nearly as much data as iTunes itself, but it’s still a pretty good site.
Internet iTunes Registry
UPDATE: The registry has been down for quite a while and I don’t think it’s coming back. Reportedly, the site was fairly expensive to run and I guess it just couldn’t stay operational. I’ll leave the write up below here for posterity. Maybe it will inspire someone to attempt something similar.
This site promises to be the godfather of all iTunes statistics. Simply upload your XML file and the website goes to work picking apart your data. All the usual top artists/albums/songs/genres stats are well represented with graphs and charts. One thing I especially like about the Registry’s reports is that you can see which artist/albums/songs/genres you actually spend the most time, not just play clounts, listening to. The iTunes Registry also integrates some social features by tracking and comparing each individual’s stats.
In addition to just totaling play counts or averaging star ratings, the Registry features a stat called ‘effective rating’ that combines the total play count with star ratings to give a better overall look at your library. Like Super Analyzer, you can export any song list to XML and upload it, making the site a very versatile tool for looking at your listening preferences.
Mainstreetmark, the proprietor of the Registry, is generally quick to respond to problems and suggestions, so if there’s something missing that you’d like to see, just drop a line in the forum.
So there you have it, the state of iTunes-related statistical programs at the end of summer 2006. Some fine options out there, but none of them are a slam dunk. For me, the ultimate iTunes stat program would do everything the existing apps do, as well as create a wide variety of graphs and charts. Ideally, it would use an interface similar to iTunes’ own smart playlist creator to select the data points and criteria to be analyzed. Hopefully one day soon something like this will exist.