How every number is worked out
Every figure on depth.fm comes straight from your export, with no estimates or sampling. These are the definitions, and the limits of what the exports contain.
What do plays, streams and skips mean?
- Stream
- Any record in the export, however short. A track you skipped after one second is a stream.
- Play
- A stream of at least 30 seconds, the same line Spotify uses for royalty counts.
- Listening time
- Every millisecond played, added up. Streams overlapping on two devices both count, so a day can pass 24 hours.
- Skipped
- The platform flagged it as skipped, or it ended because you pressed next. Spotify only started filling in its own skipped flag reliably in late 2022; the next-button check keeps earlier years comparable.
- Session
- A run of streams with no gap longer than 30 minutes between one ending and the next starting.
- Day
- A calendar day in local time where you were streaming (see below).
- Days with listening
- Days with at least one stream. Days played, in tables, counts days with any stream of that artist, track or album.
- Streak
- Consecutive days with at least one play (30 seconds or more).
- First and last
- The first and last stream in the selected period.
- Milestone
- The 1,000th, 5,000th, 10,000th (and so on) stream in your whole history, counted in the order the streams happened. Every stream counts, however short.
- Biggest binge
- The most plays (30 seconds or more) of one track on a single local day, in your whole history. Shown from 5 plays.
- Comeback
- An artist you played at least 20 times (30 seconds or more each), then not at all for a year or more, then again. The biggest comeback is the one with the most plays in the 90 days after the return, from 5 plays.
- Mostly in the morning, afternoon, evening or at night
- The part of the day (night 22:00 to 05:00, morning 05:00 to 12:00, afternoon 12:00 to 18:00, evening 18:00 to 22:00, local time) with the largest share of your listening time.
- Longest-running favourite
- Among artists you've played at least 50 times (30 seconds or more), the one with the longest time between your first and last play, from one year up.
- Newest obsession
- Among artists you first played in the last year and have played at least 20 times, the one with the most listening time.
- Biggest day
- The calendar day, in local time, with the most listening time.
- Daily listening up or down
- In each year, your average minutes per day compared with the year before, so a part-year can be compared with a whole one.
Which time zone are the times in?
Spotify records when each stream ended, in UTC. depth.fm works back to when it started by subtracting the time played, then converts it to the local time of the country you were connected from, including summer time. For countries with several time zones (the United States, Canada, Australia, Russia, Brazil and others) it uses the most populous zone.
When an export has no country for a stream, the country you stream from most is used instead, or the time zone of the browser you uploaded from.
What happens to duplicates?
Spotify's files overlap: the same stream can appear in two files, and a second export repeats the first. Streams that match exactly are kept once. Spotify's 1-year Account data rounds times to the minute; when a stream from that file matches a stream in the extended history (same time played, ending in the same minute, same track, artist or title), only the more detailed one is kept.
How do the services differ?
- Apple Music
- Apple's Play Activity file gives the start and end of every play and how long it lasted, so times and listening time are exact. A song counts as skipped only when Apple records a skip forwards; picking another song or scrubbing doesn't. Scrubbing can split one listen into two rows, so a few plays may be counted twice (listening time is unaffected). If you only have Apple's daily summary, times are to the hour.
- YouTube Music
- Google records when you opened each song, not how long you listened. Every entry counts as a play, and listening time is estimated: the gap to your next play if it is within 7 minutes, otherwise 3.5 minutes. Play counts are exact, hours are approximate. Artists come from the channel name with “- Topic” removed. Ordinary YouTube videos are left out, and there are no albums, devices, countries or skips.
- Last.fm
- Scrobbles record that you listened and when, not for how long, so length is estimated as for YouTube Music. Last.fm collects scrobbles from other apps, so the same listen can also appear under Spotify or Apple Music; choose one service in the filter bar to compare them.
- Deezer
- Deezer's data arrives as an Excel workbook with the song, artist, album, how long you listened (-1 when unknown, which is estimated), the platform and the date, which appears to be UTC.
- Using several
- Each service is read on its own terms, then everything is added together. A stream is never merged with a stream from another service; an artist spelled the same way on two services is one artist. Choose a single service in the filter bar to see only its numbers. Uploading a file you've uploaded before changes nothing: repeated streams are counted once.
What can't the exports tell you?
- Track lengths aren't included, so completion compares each stream with the longest time you ever played that track.
- Artists have no ids in Spotify's export, so artists with exactly the same name are treated as one.
- Device names are decoded from the platform strings Spotify logged; newer exports only say “windows” or “ios”.
- The 1-year Account data has no skips, shuffle, devices or countries.