Yearstack

Open this page in Safari or Chrome

You're viewing this in a preview that doesn't run JavaScript.
Tap the share icon () and choose "Open in Safari" or "Open in Chrome".

If you're already in Safari and still see this message, please refresh the page.

Yearstack

Your years of listening, in one page

Connect your Spotify, Last.fm, or Apple Music history and get a personal Wrapped — every year, not just one. Your listening history is processed in your browser — only track and artist names are sent out, to fetch cover art.

Drop your Spotify zip or JSON files here
or click to choose — works with the .zip Spotify emails you, or the unzipped folder
Pull your scrobble history from Last.fm

No file needed — works for any public Last.fm profile. Reads up to 50,000 of your most recent scrobbles.

Tip: if you scrobble Spotify, Apple Music or Tidal to Last.fm, this gives you a unified multi-year archive — often longer than your Spotify export reaches.
Powered by the Last.fm API.

Drop your Apple Music export

Request "Apple Media Services information" at privacy.apple.com. You'll get a ZIP in ~7 days. Drop the ZIP or the Apple Music Play History.csv here.

Beta — Yearstack auto-detects Apple's CSV format and normalises it. Plays without timestamps are skipped.

How do I get my Spotify history?

Log in to spotify.com/account/privacy, scroll to the bottom and request "Extended streaming history". Spotify emails you a zip file within ~3 weeks. That's the file you drop here. (The basic "Account data" zip only covers the last year — you want the extended one for a real Wrapped.)

What does this tool do with my data?

Your listening data stays in your browser — Yearstack has no server that processes or stores it. Refreshing the page wipes everything. There are three outbound calls and you can opt out of each: (1) cover art lookups send track/artist names to Deezer's and iTunes' public catalogs (no personal data) — stay offline while loading to skip; (2) Last.fm scrobble fetching sends only your public username (skip by not picking the Last.fm tab); (3) "Share Online" uploads your rendered Wrapped to wrap.yearstack.com so you can share a URL — only when you click that button.

Why doesn't it match my Spotify Wrapped exactly?

Spotify's official Wrapped uses some private signals (skip behaviour, listening segments, podcast separation) we can't see. Numbers here come straight from your raw history — sometimes higher, sometimes lower than Spotify's. Plays under 30 seconds are still counted; phantom multi-week records are capped at 10 minutes per play.

Yearstack is an independent tool. It is not affiliated with, endorsed by, or sponsored by Spotify, Apple, Last.fm, or Deezer.
Spotify and Spotify Wrapped are registered trademarks of Spotify AB. Apple Music and iTunes are trademarks of Apple Inc. Last.fm is a trademark of CBS Interactive. Deezer is a trademark of Deezer S.A. All cover art and metadata are the property of their respective rights holders and are used here for identification purposes only.

Reading your data
0
plays counted
Total listening
Unique artists
Your top artist
Top artists emerging
     

    Wrapped

    2
    1
    3
    Total plays
    across every year
    Time listened
    full days
    Unique tracks
    different songs
    Unique artists
    you met along the way

    All-time top 20

    The names, tracks, and albums that defined it all.

    Top artists

      Top tracks

        Top albums

          Year by year

          Every single year you pressed play.

          Top of each year

          The year of your listening, in one screen.

          Top artists that year

            Top tracks that year

              Listening patterns

              When you actually press play.

              By hour of day

              By day of week

              Day × hour heatmap (darker = more plays)

              New artists discovered

              First time a new name entered your life.

              Highlights

              Moments that stood out.
              Biggest listening day
              Longest daily streak
              Artist spotlight

              Most-played tracks

                How you listen

                Devices, habits, and a few confessions.

                Device journey

                From your first listen to today.

                  Platforms

                  Habits

                  Skip rate
                  of all tracks you never let finish
                  Shuffle rate
                  of plays on shuffle
                  Offline plays
                  tracks listened without a connection

                  Where in the world

                  Every country you connected from.