Skip to content

Conversation

@mcclown
Copy link

@mcclown mcclown commented Dec 17, 2025

This is a much bigger feature than the other pull requests I've added.

This year's Spotify Wrapped added a feature to calculate your listening age....I've implemented something similar for Plex/Tautulli. It also includes a graph showing your viewing, by year, over the previous year. TVs and Movies are processed separately, so if you have enough data for both, you will see two age estimates.

Movie Card

image

TV Card

image

A few details about the implementation:

  • Movies are calculated using the release year of each movie watched
  • TV Shows are calculated using the release year of each episode watched (not just the show's premiere date)
  • The calculation includes a logarithmic weighting of content to manage the bias for more recent content to be watched more often.
    • Older content has more weight.
    • We also include in the calculation how often a movie/episode is rewatched
  • The visualisation shows the percentage of content that has been watched, per year. The chart is also scaled logarithmically to make it easier to read when individual years account for the vast majority of viewing.
  • There is no support for music, yet. I've written the code to be as generic as possible, so it should be relatively easy to add that later. I have no test data for music because I don't use Plex for it.

@mcclown
Copy link
Author

mcclown commented Dec 17, 2025

I forgot to mention the methodology for working out the year, once we've identified the median year from the weighted analysis of the viewing history.

The general theory seems to be that people's tastes are established between the ages of 10-25 years of age. So we use 18 years old as the rough middle of that. When we calculate the peak nostalgia year we then take assume that the user would have been 18 years old during that year...and take away 18 years to get their estimated birth year.

It's not amazingly scientific but it seems to be getting approximately right answers for most of the users I've tested with....or also hilariously wrong answers for some others. A conversation starter either way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant