Usage Analytics: Global Tracks and Plays

Usage Analytics: Global Tracks and Plays

Goal: To convert some of the reports currently being managed by a CSV export into reports on a free BI tool (probably klipfolio) to both achieve faster reporting cycles and to prototype, with real data, future reporting features.

As an admin, I would like to know if the platform is meeting its weekly and monthly usage goals in semi-real-time.

As a new developer, I would like to be able to run the tracks API locally and generate dummy tracks and plays data with which to test.

Reports based on tracks and plays tables:

  • Num Tracks Created by Week (requested by someone)
  • Top 20 Tracks By Total Plays by month (conversion of existing report, a list of tracks)
  • Num Plays per month (conversion of existing report, a line graph)
  • Num Artists Played per month (distinct artists in plays) (conversion of existing report, a line graph)
  • Paid tracks played in past X hours (a small number, for sanity checking, maybe a @Hakanto request)

Implementation thoughts:

add a new /reporting path for these


  • Starting small with reporting from just 2 tables (Plays and Tracks)
  • Klipfolio doesn’t really support pagination

Hi :wave: - I am new around here and looking for some ways to start helping out. I’ve built a lot of BI reports in the past and could certainly help on that front of turning data into visualizations. Let me know if there is still any need for reporting to be built around this and if there is any way I can help with this or other analytics/data things


This could be a fundamental skillset for us in the future, absolute no doubt.

Perhaps you can take a shot at improving the one existing visualization on the history page? @bwall

Hey @boopboop - I poked around in html and github and think I found the chart you are referencing here /beta/src/components/charts/plays.js. I don’t currently have any experience with javascript so I don’t know that I could do anything immediately, although I am not opposed to learning javascript so that I can be more helpful - I generally have made charts in BI tools primarily but also have made charts in python, R, excel, and ms paint :laughing:

I would say from looking at the chart (my chart currently below) we might want some descriptive text around it like a chart title and a clearer x axis labels possibly with the day of month # shown. I imagine the data is my historical # of listens by day from poking around but I couldn’t fully tell what the dataset was for this.

Let me know what you think about my thoughts on the chart and also if I should start learning some javascript to be more helpful with chart/visualization building or if there are other things I could do that would help out more. Feel free to DM me as well separately to discuss more what I might be good at helping with :+1:


@bwall see this topic and thread:

And further down, examples of existing stats

@bwall could you consume the API and put up something in a little python repo as a prototype?

For example:

  • user downloads your repo
  • user authenticates with resonate
  • user can view your better version of that chart ^

Then we can build on that?

@boopboop I wouldn’t recommend I make a python repo for this since I haven’t made one before for anything and I’m just not that great at python development lol - I also don’t make UI focused charts in python so I don’t have any cool tricks off the top of my head. I think I understand what you are saying in the abstract though I think and I think I can help with developing the chart with the existing javascript.

Watched a youtube video on javascript basics to gain more javascript readability and took another look at plays.js I linked earlier and saw it is using Chartist, which I don’t personally know but I could probably pick it up quickly. I think I still would need to learn/do is (1) setting up a way for me to locally test changes and then (2) actually submit changes to someone else for review.

Both of those I think I have seen some instructions on how to do so I will research more into that and update you again if I have questions or a working demo of a changed chart - let me know what you think about my recommendation to keep using Chartist and also if you have any good links to help me with learning about getting set up locally / submitting changes