Collecting and analyzing data with H5P — and opening up education maybe

Transparency note: I, the author of this post, have been an advocate of initiatives such as the OER movement for many years. Meanwhile, I have also become an employee of Joubel. Joubel provides the core team that’s developing the open source software H5P used for creating teaching and learning materials. However, this post is still a personal view.

Educational Data Mining (EDM) and Learning Analytics (LA) are among the top buzzwords of the EdTech scene right now. Both are all about storing and evaluating the content and meta data that has been produced by students. Why? You can e.g. recognize progress in learning. Some people also dream about predicting future performance or problems, while others even want to build platforms that can be adjusted to the learners. Throughout that process, while EDM has a rather reductionist focus and a tendency towards automation, LA favors a holistic view and human decision making and interventions. (cmp. Baker & Inventado, 2014, p. 62).

Both approaches share the need for data. One supplier for those could be the software H5P. It is an authoring tool which enables you to create a wide range of interactive tasks for the web. It spans from multiple choice quizzes or clozes over interactive videos and speaking excercises for pronunciation. Additionally, H5P offers several ways to gather data. This does not only mean to record the results of tasks that students have completed, but also to make note of small experiences such as seeking to a position in a video or switching from one answer option to another.

H5P was designed for creating Open Educational Resources (OER), so the developers try to avoid making technical decisions that could impede openness (cmp. Wiley, n.d.). Consequently, the software is free and the source code is openly licensed — and H5P offers several ways to handle data.

Get the data directly using plugins

You can use H5P on the software’s designated website, but many organizations and individual persons prefer to use it on their own technical infrastructure. Currently, there are plugins for Drupal, moodle, and WordPress. With those, you can record the results of many interaction types. This approach is convenient for moodle in particular, because the learning management system offers a gradebook that will be used for storing data. In consequence, you can use all the tools for analysis that moodle has in stock.

If you’re using WordPress, then you could have a look at the plugin H5PxAPIkatchu. It allows you to store quite detailed reports in a table, but it does not offer any features for analysis. This job is left to specialized software, and you can export data into a CSV file for transfer. It can then be used in spreadsheet programs easily, but you could also go for tools that are commonly used for data analysis, e.g a combination of Python, Jupyter, and scikit-learn or R.

For Drupal, there’s also a plugin to help you out. It bears the simple name Quiz. It will add some functionality for reportingto the content management system, and it can be used for H5P content.

Tapping the Experience API and …

While the aforementioned plugins offer basic functionaly, there’s a more versatile approach which is called Experience API (xAPI). It’s a standardized interface that is supported by H5P, and it was actually specifically designed for keeping record of students’ learning experiences. Furthermore, it can handle both: online based exercises or something that happens on-site — although for the latter it can be very tedious or even impossible to register what’s going on. In that case, you could e.g. use sensors or video recordings that can be interpreted automatically (cmp. Ochoa & Worsley, 2016, pp. 214-215). However, you should not forget to consider ethical implications and privacy issues (cmp. e.g. Ferguson, Hoel, Scheffel & Drachsler, 2016).

In xAPI, each dataset has the same basic structure. It always contains information about the actor or group of actors, a verb for describing what happened and an object that is dealt with. Some simple examples in common language are:

  • Student A answered multiple-choice question X.
  • Student group B watched 80 % of video Y.
  • Person C  attended seminar Z.

In addition to these plain data, there can be plenty more depending on the verb and object, e.g. dates, time periods, options chosen, answers given, scores, etc.

… push the data to a learning record store

When one of these xAPI statements has been created and wrapped up, H5P can forward it to a Learning Record Store (LRS) of your choice. That’s a platform which is specialized in handling the data that can become “big”. Also, it will provide you with different options for retrieval, visualization and analysis.

For Drupal, moodle and WordPress, there’s a plugin that you can use to send data to an LRS using xAPI:

Basically, all you have to do given one of these solutions, is to enter the address of the LRS and your credentials. Then the system can begin its duty right away. I already hinted at the fact that there are multiple LRS that you can choose from. For example, there is:

  • Grassblade: Commercial software, which needs to be installed on your own server or used as a service, e.g. via Scorm Cloud that offers several features on top.
  • Learning Locker: Free open source software with numerous features. Can be installed yourself or used as a paid service.
  • Watershed: Commercial Software, which is offered as a service only, but it’s free in the basic version. The extensive funtionality for evaluation is reserved for paying customers however.

Getting everything served on one plate

Shortly, the first version of will be completed and released. It will not only provide some more hosting capabilities than offers for free today — and will continue to do so.

Using, you will also be able to interleave H5P with many learning management systems that didn’t have this option before, e.g. Blackboard or Canvas. This is made possible by  LTI. It will no longer be necessary to use a plugin for a specific platform. Nevertheless, you will be able to seamlessly create content within your system and to retrieve and evaluate the results.

Using can also be useful if you don’t have your own learning management system but still want to know more about how your content is used. In the future, you will be able to use some tools for analysis, too, and it is also planned to make use of Learning Record Stores.connections to

Opening up education with data?

With all the ongoing hype around gathering data in so many fields, I wonder why they are seldomly given to those who actually produced them in the first place. Learning Analytics is no exception. I am not even arguing from a perspective of transparency as an idealist value, but from the perspective of Open Educational Practices. Among several other aspects, these embrace taking responsibility for one’s own learning process — yet without being left on one’s own (cmp. Mayrberger & Hofhues, 2013, p. 63). So, why are students often being patronized instead of giving them access to the data that were collected about them?

Students could be empowered to also reflect upon their learning process based on data and aggregated data. For example, seeing a meaningful visualization of their own procrastination could be more effective than recurring reminders by teachers. Also, having the means to track and think about their progress themselves will better help them to become a self-reliant person than constantly being told when to do what by a teacher or even by a computer system.

Based upon the access to the flow of data, the students could even build their own motivational system that suits themselves best. The tools to achieve this are basically in front of our noses already. The only thing left to do is make them talk with each other. One linking pin could be the software “If This Then That” (IFTTT) or a clone. It can read data from numerous services on the internet and trigger many actions of other services based on rules that you can define. A simple example could be to automatically store all the tweets that you like in a Google Spreadsheet. It doesn’t stop there though. Instead of services, you could also think of sensors of a smartphone or home automation devices.

Given the xAPI data provided by H5P you could imagine automated scenarios like these that students could set up for themselves:

  • If course completed, order video game at BestBuy.
  • If not done anything within five days, tweet “I desperately need your ideas for motivation. Now!”
  • If learning activity takes place at 2 AM, make coffee.

Yes, those are behaviorist measures that not everyone is going to like, but still there’s a difference to common scenarios: the students themselves decide voluntarily to bind themselves in the future. While those ulysses pacts are not necessarily free of paternalistic or external influence (cmp. e.g. Reamer, 1983), they can still enable learning settings that are more open than today’s.


The software H5P offers different ways to collect and evaluate data about the learning experiences of students. The most flexible and powerful option is to use the standardized Experience API. On the other hand, it still requires some effort for installing, configuration and maintenance. In consequence, it is rather suited for organizations or ambitious individuals. However, if you bother to use it, you do not only enlarge the data pool for Educational Data Mining and Learning Analytics. If you also provide students with the data and the right tools, too, you can also have a share in opening up the world of education.




The text and the illustration are licensed under a CC0 license. Feel free to do with it whatever you want to.