xAPI and real-time student dashboards

I have developed an open learning analytics system that will track student interaction data at the “activity level” or the “transaction level”, depending on what you call it. This system is currently composed of a quiz web application, a video web application, and a dashboard. The quiz application is our instance of the open source quiz app Open Assessments from the Lumen Learning github. The video application (it actually does way more than just track video analytics) was developed at Brigham Young University and is called Ayamel. Here is a diagram of our system:

Video Analytics System

To explain this system, let’s start at the Learning Management System (LMS). The student logs into the LMS and sees a bunch of links. Some links go to videos, some links go to quizzes, and some links go to the visualization app. If they click on a link, they will be authenticated into the app (so we can track who they are for analytics purpose) and are taken directly to the resource indicated in the link. Technically, this is an LTI launch (which is more than just a link) but we don’t have to go into that here. Once the student is in the app, xAPI statements are sent from the app to our Learning Record Store (LRS). We are using Learning Locker (an open source LRS) for our LRS. This LRS will store all of the statements that are sent to it from our apps. Then, our visualization app will take the data in the LRS and will display it back to students in real-time. We can do this because we have real-time access to the data in our LRS.

The data that we are tracking in this system includes the following:

Video Analytics Quiz Analytics Visualization Analytics
Number of plays Number of question attempts Number of visualization views
Number of pauses Time spent on quizzes Time spent in visualization
Number of skip ahead/back Number of quizzes attempted Number of video links clicks
Number of speed changes Average confidence level Number of quiz links clicks
Average video watching speed Max number of attempts
Number of volume changes Max time on a quiz
Average volume setting
Number of mute/unmute
Number of max/minimize
Time spent on videos
Number of videos watched

We are currently collecting data and have more than 200,000 statements in our LRS.


  1. Hey bob, interested in learning more about this setup! I’m a product manager for a network of schools in San Francisco, any way we can set up a call? Feel free to email.

  2. i’m a high school teacher in Winston-Salem NC. i would like to share my year of research exploring the use of real-time xAPI dashboards as a lifelong learning record that could replace the k-12 report card. i have some funding for the right person to create a demo for a major International Home Heath Care Provider. the vision is that the xAPI dashboard would be able to connect with their HR systems to show career-readiness for nurses.

Leave a Comment

Your email address will not be published. Required fields are marked *