Music Taste Checker

Connect Spotify to see your actual genre profile. This tool takes your top 50 artists, cross-references Last.fm crowd-sourced tags, and builds a weighted breakdown of what you really listen to.

Share

Connecting to Spotify...

Music Taste Checker: What Your Spotify Listening History Really Says

Spotify's own algorithm determines your "Taste Profile" internally, but it never shows you the raw data directly. You can see your Wrapped summary once a year, and you can glimpse your top artists through the Spotify mobile app, but the actual genre breakdown that drives recommendations stays hidden behind Spotify's proprietary systems. This tool makes it visible.

The genre data here does not come from Spotify. It comes from Last.fm, which has accumulated crowd-sourced tags from over 300 million registered users across more than two decades of listening data. Those tags are more specific, more community-driven, and often more accurate than the broad editorial labels that major streaming platforms apply at the artist level.

Spotify's Genre Labels vs. Last.fm's Crowd Tags

Spotify assigns genre labels to artists based on a mix of editorial decisions, playlist placement patterns, and algorithmic inference. These labels are coarse by design. An artist Spotify calls "pop" might have sub-genre characteristics spanning synth-pop, chamber pop, and art pop. Spotify does not expose those distinctions publicly via its API.

Last.fm's tagging system works differently. Any registered user can apply a tag to any artist. The most frequently applied tags rise to the top. This produces a community consensus view of what an artist sounds like, which often captures nuances that editorial genre labels miss entirely. For niche or cross-genre artists, Last.fm tags are frequently the only accurate description available.

This tool fetches the top 6 Last.fm tags for each of your top 50 Spotify artists, then aggregates them into a single weighted genre profile. Common non-genre tags like "seen live", "favourite", and nationality tags are filtered out before aggregation.

The Weighted Rank Methodology

Not all artists in your top 50 matter equally. Your number one artist has occupied significantly more of your listening time than your number 50. Treating them equally would flatten the profile and make it less accurate.

This tool uses a linear position weighting formula: the artist at rank 1 gets a weight of 1.0, the artist at rank 50 gets a weight of 0.02, and every artist in between scales linearly. The formula is (total - rank + 1) / total. Each artist's tags are added to the genre totals with their position weight applied.

This means your genre profile is driven by your actual listening habits. An artist you have played 500 times carries far more genre signal than an artist you discovered last week. The result is a profile that matches your listening experience rather than just listing who you happen to have heard.

What the Three Time Ranges Show

Spotify's top items endpoint offers three time windows: short term (approximately the last 4 weeks), medium term (approximately 6 months), and long term (calculated from several years of listening history). Comparing your profiles across these three ranges reveals how your taste is shifting.

A genre that appears prominently in your short-term profile but not your long-term profile is a current phase. A genre that dominates all three ranges is a genuine core preference. A genre that ranks high long-term but has dropped in the short term suggests you are drifting away from it, at least for now.

Each time range fetches and caches separately. Once a range loads, switching between tabs happens instantly without additional API calls. This avoids hammering Last.fm's API for data you have already retrieved.

Taste Diversity Score

The diversity score measures genre breadth. It calculates the ratio of genres that account for at least 5% of your total weighted score versus all genres that appeared in any form. A high diversity score means your listening spans many distinct genre categories with significant weight in each. A low score means your listening is concentrated in a small number of closely related genres.

Labels reflect real listening patterns observed across music discovery tools:

  • Wide-ranging (above 60%): Your listening covers multiple distinct genre families with real depth in each. Typical for critics, DJs, and dedicated music explorers.
  • Broad (35-60%): A healthy spread across several genres. Common for most active music listeners.
  • Niche (15-35%): Your listening clusters tightly around a few related genres. Common in genre-specific communities.
  • Specialist (below 15%): Almost all your listening falls within one or two closely related genres. Common for listeners deeply invested in a single scene.

How Recommendations Use Your Taste Profile

According to Spotify for Artists documentation on editorial playlisting, Spotify uses listening history to match listeners with editorial playlists via Autoplay and Radio features. Artists with genre signals that align closely with a listener's profile are more likely to appear in discovery recommendations. Understanding your own genre profile helps you understand why certain recommendations appear.

For a deeper look at how individual playlists shape your genre exposure, use the Spotify Playlist Analyzer. It runs the same Last.fm genre analysis on any playlist you select, weighted by how many tracks each artist contributes to that specific playlist.

To see your raw top tracks and artists without the genre analysis layer, the Spotify Stats tool shows your top items across all three time ranges with time-range comparison and an exportable stats card.

Privacy and Data Handling

This tool requests the user-top-read scope from Spotify. That is the only scope required. No playlist access, no playback control, and no write permissions of any kind. The PKCE authentication flow stores your access token in sessionStorage, which clears when you close the tab. Last.fm requests go directly from your browser using a public API key with no logging or server intermediary involved.

From the Blog

View All