Spotify Streaming History

Spotify Streaming History

The methodology can be found here.

The code can be found here.


Updated: June 8, 2023. Includes streaming data from October 2015 through May 2023.


If you're asking if I had the foresight to begin tracking my Spotify streaming history using last.fm in 2015 so that one day I could analyze myself, the answer is yes. And, today is that day.


Using my listening history, I pulled atributes from Spotify's Audio Features to get song attributes, such as danceability, tempo, energy, and valence. I then used these features to construct Principal Compenents, with which I clustered the songs into 8 unique clusters. Below are the results for every stream since January 2022.



Below, you can also see my total streams by artist since January 2022.



If you've read this far and haven't clicked away, I'm assuming our musical tastes somewhat align. In short, I like music that's generally danceable, synth-heavy, and a mood booster.


The songs that I listen to from these artists fall into one of the following 8 clusters:


1: Instrumental Songs: Characterized by extremely instrumental tracks.

This is the smallest of the clusters. Compared to all the songs I listen to, these songs are often less danceable, have lower loudness levels, and are quite instrumental. These tracks also have lower valence levels, so they're less possitive/happy/euphoric than average. Many of these are instrumental Christmas songs.

Example Tracks: "About You" - The 1975, "Levels" - Avicii, and "Carol of the Bells" - David Foster


2: "The Feels": Characterized by more acoustic and more emotional songs.

Compared to all other songs I listen to, these have the lowest levels of danceability, energy, and loudness. These also have the lowest valence and lowest average tempo, which is just north of 100 bpm. A lot of Disney songs seem to find their way into this category.

Example Tracks: "Say Something" - A Great Big World and Christina Aguilera, "Rescure" - Lauren Daigle, and "Happy Loner" - Marina


3."Speak" Pop: Characterized by songs that have more spoken words.

This cluster tends to have high danceability, energy, loudness, and valence, but what sets it apart is the high speechiness level, meaning there are more spoken words in the song.

Example Tracks: "Born Ready" - Disco Fries (Halogen Mix), "Shake It Off" - Taylor Swift, and "Don't Let Me Down" - The Chainsmokers ft. Daya


4. Sad Bops: Characterized by songs with sadder themes but have heavier production than "The Feels".

These songs tend to have more energy and loudness than "The Feels" but still have low danceability and the lowest valence of any cluster. There is very wide variability of acousticness and tempo for this group. For an example, Adele songs generally all fall in this category.

Example Tracks: "Hello" - Adele, "All Too Well" - Taylor Swift, and "Shallow" - Lady Gaga and Bradley Cooper


5. Live Songs: Characterized by songs with high liveness scores, often due to multiple singers or artists harmonizing with themselves.

These songs have high danceability and energy. They have high valence and sit right under 125 bpm, which is where a typical pop song falls. The defining feature is the high liveness score, which seems present in the cases where (1) there are multiple artists singing or (2) the artist harmonizes with themself quite predominantly throughout the song.

Example Tracks: "I'm Good (Blue)" - David Guetta and Bebe Rexha, "Side Effects" - The Chainsmokers ft. Emily Warren, and "Everytime We Touch" - Cascada


6. Energy Pop: Characterized by songs with higher energy levels and the fastest average tempo.

This cluster is characterized by high energy and loudness levels. There is also low valence, but the defining feature is the fastest average tempo of over 160 bpm.

Example Tracks: "Blinding Lights" - The Weeknd, "Mr. Brightside" - The Killers, "My Life Would Suck Without You" - Kelly Clarkson, and even All I Want for Christmas Is You - Mariah Carey


7. Dance Songs: Characterized by songs with the highest average danceability and valence.

This is your party category. These songs have the highest danceability and are the most positive with the highest average valence. There's also a ridiculous number of songs that have the word "dance" in the title. To name a few: "Just Dance" - Lady Gaga ft. Colby O'Donis, "Shut Up and Dance" - Walk the Moon, and "I Wanna Dance With Somebody" - Whitney Houston

Example Tracks: "Physical" - Dua Lipa, "Used To Know Me" - Charli XCX, and "Bad Romance" - Lady Gaga


8. Anthem Songs: Characterized by songs that often have big, anthemic choruses.

The thing that is so defining about these songs is that there really isn't one definining thing. For the most part, they're the average song I listen to. They have higher energy and loudness levels. They have lower liveness scores. However, what sets these songs apart is that they are so middle-of-the-road. They're the perfectly average tempo, danceability, and loudness to make those big, anthemic choruses we all love.

Example Tracks: "Run Away With Me" - Carly Rae Jepsen, "Since U Been Gone" - Kelly Clarkson, and "All You Need To Know" - Gryffin and Slander ft. Calle Lehmann


Below, you can see the full chart of every song (with at least 5 streams) that I've listened to since October 2015.



Looking at the how I've been streaming songs in the clusters over time, there has been a little bit of growth for the Energy Pop cluster, which has come at the expense of Sad Bops and "The Feels". However, the clusters appear to be quite stable over time for the most part.



The stability of the clusters doesn't mean there haven't been trends bubbling under the surface. For example, when examining my top genres, Hopebeat, which is defined as "a genre of music that combines elements of pop, rock, and electronic music to create a sound that is uplifting and inspiring," grew from almost nothing prior to 2020 to almost a quarter of all my steams in the most recent quarter.



Artists classified in the Hopebeat genre that I stream are The Band CAMINO, Nightly, The Strike, joan, and Hotel Apache (as well as others). You can see the full chart of the songs I stream from Hopebeat artists below.



Another interesting pattern to observe is that my music has become more explicit over time, pretty much making a level shift up in 2021 from roughly 8% of streams being explicit to around 16%. (Sorry mom.)



If you're wondering what the difference is between some of the clusters, I hope the following can help you visualize the difference between songs that may be quite similar. For example, take the songs "Alice" and "Rain On Me" off of Lady Gaga's 2020 album Chromatica. Just listening to these two songs back-to-back, you would think they are quite similar. Both are 90s House-influenced tracks that have a tempo of 123 beats per minute with very similar dance and energy scores according to Spotify's Audio Features. However, "Alice" is classified as an Anthem Song while "Rain On Me" is a Dance Song. Under the surface, the former is in a minor key while the latter is in a major key. Additionally, "Rain On Me" has higher valence.


Below, you can view the clusters by Danceability and Energy. As you will probably note, there is quite a bit of overlap between the Dance Songs and Anthem Songs clusters, just like described in "Alice" and "Rain On Me."



However, when we look at a chart displaying Tempo and Valence, we can see that the Dance Songs and Anthem Songs separate quite neatly across their valence - like "Alice" and "Rain On Me" do.



One thing I want to bring to attention is the lifecycle of a song. Typically, most songs follow a pattern of a peak in streaming near release and then tailing off over time.



However, there are some exceptions. Christmas songs have a seasonality to them, where they get streams annually around Christmas. For example, below is the chart for the poster child of Christmas music: "All I Want for Christmas Is You" by Mariah Carey.



And then, there are some that just never fade over time. My favorite album is Emotion by Carly Rae Jepsen. (Well, technically it's Emotion + Emotion: Side B + "Cut to the Feeling" in the chart since these were all one era.) If you haven't heard it and you love 80s-inspired synthpop as much as I do, CHECK IT OUT RIGHT NOW!



The production is so good. Carly Rae Jepsen can write a hook like few others. And, it all culminates in an amazing modern take on an 80s album. Below, you can see a break out for all of the Emotion songs.



In conclusion, was this project a little self-conceited? Yes. Did I use it as an excuse to link to some of my favorite songs? Also, yes. Should you listen to Emotion by Carly Rae Jepsen because it is the greatest album of all time? Yes, yes, and yes. But really, this was a fun project to understand my own music tastes better. And if you've made it this far, maybe you've been convinced to set up your own last.fm account so that you can track what you listen to as well. (You don't have to go crazy like me. You can just see your top songs and artist on the site.)


If you have a similar style of music and want to explore what I'm currently listening to, these are the songs currently in the cycle.