Spotify Wrapped: My Submission for Maven Music Challenge (Jan 2025)
A Nostalgic Journey
Introduction
Every December, Spotify Wrapped floods social media with personalized listening stats, sparking curiosity and nostalgia. For the Maven Music Challenge, I took this idea further, analyzing streaming data to uncover listening habits, top artists, and the timeless appeal of music legends like The Beatles, ABBA, and Bob Dylan. Let’s dive into how this data-driven exploration reveals the power of nostalgia and personal connections in music.
About the Dataset
The dataset (before cleaning) contained 146,127 records and 11 fields, detailing Spotify streaming activity. It includes data on playback timestamps, platforms used, track names, artist names, album names, play durations, playback start and end reasons, shuffle mode, and whether tracks were skipped.
Data Cleaning and Transformation
Before diving into analysis, thorough data cleaning and transformation were necessary to ensure accuracy and consistency. Here’s what was done:
1. Corrected Data Types:
- Adjusted data types for key columns such as Track Name, Artist Name, and Album Name to text.
- Fixed track names that Excel had altered due to incorrect perceived data types.
2. Consolidated Duplicate Track Codes:
- Some tracks appeared multiple times with different track codes.
- Consolidated these to ensure each track had a unique code, no matter how many times it appeared.
3. Created Track URLs:
- Added a Track URL column by appending
"https://open.spotify.com/track/"
to each track code for easier access to the tracks on Spotify - for example:
"https://open.spotify.com/track/6b8Be6ljOzmkOmFslEb23P"
for Bruno Mars — 24K Magic).
4. Fixed Text Case:
- Standardized the Platform column using the
PROPER
function to ensure consistency in text formatting.
5. Converted Milliseconds to Minutes:
- Divided the Milliseconds column by 1,000 to convert it into seconds, then added another column for play durations in minutes by dividing the seconds by 60.
6. Split Timestamp into Date and Time:
- Split the Timestamp column into separate Date and Time columns to facilitate time-based analysis.
7. Checked and Fixed Column Data Types:
- Ensured data types were correctly assigned across all columns for seamless analysis.
8. Node.js Usage for Extracting Extra Track Information
- Using Node.js, I automated the process of retrieving additional track data directly from the Spotify API. This included:
- Artist images were fetched to enhance the visual appeal of the dashboard.
- Album images and Track URLs allow more interactive and visually engaging dashboards.
- Track durations (in milliseconds) were crucial for calculating total play durations and average play times.
- These scripts handled large datasets, processed thousands of tracks in batches, and saved the results to a CSV file for seamless integration into Power BI.
9. Removed Unrealistic Streams:
Removed all streams with less than 1 second of play, as these were deemed illogical and likely errors. Also removed tracks with links that were not working. This reduced the dataset significantly:
- Streams: From 149,860 to 146,110.
- Tracks: From 15,268 to 15,189.
- Albums: From 7,906 to 7,832.
- Artists: From 4,112 to 4,075.
KPIs Measured
After data cleaning, the dataset comprised 15k tracks, 7.8k albums, 4k artists, and 146k streams. The total play duration spanned 320k minutes (nearly 32 weeks), with an average playtime of 2 minutes per stream.
Insights
1. Top Streamed Artists
- The Beatles lead in (almost) every category, including total streams, number of tracks, and total play duration.
- Other top artists include The Killers, John Mayer, Bob Dylan, and Paul McCartney, showing a mix of legacy and contemporary acts.
2. Shuffle and Skipping Behavior
- 75% of streams were played in shuffle mode, indicating a strong user preference for variety and playlist-based listening.
- 5% of streams were skipped, highlighting user disengagement with some tracks and the importance of maintaining playlist relevance.
3. Android Device Supremacy
Android dominates as the preferred platform, with 136,355 streams, far outpacing other devices.
4. Top Tracks and Albums
- The most-streamed tracks include Ode To The Mets and In the Blood.
- The Beatles’ albums dominate the top five — Four out of the top five are The Beatles’ Albums.
5. Hourly Trends
- Streaming activity is lowest during the daytime hours (7 AM — 3 PM), likely due to work, school, or other daytime responsibilities.
- Activity picks up in the evenings and late nights, peaking around midnight, as people wind down or relax before bed.
Spotify Music (Preview) Player in Dashboard
With the help of HTML5 and a Custom HTML Viewer Visual, I embedded a fully functional Spotify Music Player in the dashboard's Tracks tab. Check it out in action here: YouTube Demo.
Conclusions
This project revealed our listener’s deep connection to timeless classics and their love for music as a constant companion. From legendary artists like The Beatles and ABBA to late-night streaming sessions, the data reflects personal tastes shaped by nostalgia and routine.
More than just numbers, the insights show how music brings comfort, joy, and familiarity, proving that great tracks remain timeless. As streaming platforms continue to blend the old and new, one truth remains: music evolves, but its impact stays the same.
Tools Used
- Microsoft Excel: For initial data cleaning and preparation.
- Microsoft Power BI: For advanced cleaning, transformation, analysis, and creating dynamic visualizations.
- Figma: Designed the sleek dashboard background.
Access the Interactive Dashboard
Dive deeper into the insights with our interactive dashboard, where you can explore key trends, streaming patterns, and listening behaviors in real-time—and even play your favorite tracks directly from the dashboard!