A scrollytelling journey through the emotional landscape of today's most popular music, built from 114,000 Spotify tracks.
I build playlists around how I feel. So I kept circling one question: the feelings are obvious to us instinctively, but can the emotional landscape of popular music actually be seen? and could a visualization evoke the same emotions and rhythm as the music itself??
Spotify already turns feeling into numbers. Every track carries a valence (musical positivity), plus danceability, energy, tempo and speechiness. This is what those numbers look like when you let them glow.
A quick note on the visual grammar you'll see throughout: magenta means lower valence — sadder, heavier, more reflective. cyan means higher valence — happier, brighter, euphoric. Cool for positive, warm for negative. Hold that in your eye.
First, the big picture. I isolated the real hits (popularity ≥ 90) and grouped them by genre. Each tile's size is the genre's total popularity; its colour is its average valence. A whole landscape of mood, in one glance.
Zooming from genres to individual tracks. Every dot is one popular song: how long it runs (x), how danceable it is (y), and its mood (colour). Watch where the cloud gathers.
Speechiness captures how much a track resembles spoken word rather than traditional singing, encompassing styles such as rap, spoken interludes, and theatrical performances. Each bubble represents a song, sized according to its speechiness and colored by mood. The tracks with the highest levels of speechiness, often paired with strong emotional expression, stand out as the largest bubbles.
Finally, a close read. I broke three well-known songs into five normalized, rescaled features so that each track's bars sum to 100%. This reveals not the raw values, but what each song leans on to the sound itself.
Everything so far has been my reading of the data. Here's yours: search any artist, line up their songs — or whole artists — and watch them land on the mood map, the audio fingerprint and feature-by-feature.
Tip: opens fastest on desktop. If it feels cramped, open the dashboard full-screen ↗.
Put together, these views suggest that mood is not random noise in the data. It forms recognizable patterns. Danceable songs tend to be happier, speech-heavy songs often carry heavier moods, and the genres listeners gravitate toward are largely the brighter ones. The numbers behind a feeling, it turns out, have a shape of their own..
The interactive dashboard above takes this further, letting any listener filter by artist and song to read their own emotional fingerprint. And there's room to grow:
Track how valence, energy and danceability drift across months and years.
Compare emotional expression by country, region and language.
Link skip and replay rates to a song's emotional tone.
Years of listening data, with mood mapped against life events.
Data source: Spotify Tracks dataset (Kaggle). Visualizations were recreated using the same filtering criteria as the original RStudio analysis, with genre views limited to tracks scoring 90 or higher in popularity and scatterplot views limited to tracks scoring 80 or higher. Palette and visual concept inspired by the Glow Wave dashboard.