How does learning time work on the OpenLearning platform?

Learning time is a feature that can reliably measure:

  • learner’s active time - learning time for a course, for each learner;
  • the average time spent on a course page; and,

  • the number of active learners in a class.

These metrics are granular, reporting accuracy to a given time period. Learning time is tracked by seconds and provides this timing data for any combination of data segmentation (e.g. page, class/cohort, course, institution portal). 

Each page emits a heartbeat pulse event at a regular interval H. If the page is focused, the pulse is emitted continually followed by others, each after a period of H. When the page leaves focus (e.g. changing tab, closing the app, leaving the page, etc.) heartbeats are no longer emitted on this page.

The heartbeat event needs to contain:

  • The user’s ID

  • The page’s path

  • The current institution ID (if applicable)

  • The current subscription ID (if applicable)

  • The current course ID

  • The current cohort ID

  • A timestamp

Time block T, set on the server-side, ideally will be the same as interval H to be more accurate, i.e. time block of 1 minute will be sent every 1 minute, signifying that a user is “active” on a page for 1 minute for each pulse. 

Heartbeat events are consumed by an aggregation pipeline, and data is stored individually per-timestamp group, relative to T, by rounding it to the nearest T.

This is important for deduplication purposes. In the event of the learners having multiple tabs open at the same time or firing multiple triggers in a short time range (which can result in miscalculation); in this case, only one pulse is considered as valid if multiple pulses are triggered by learners.

The heartbeat events are then grouped by time granularity (e.g. hourly) to create a trigger for recalculation on learners’ learning time.


 All courses created after 1 August 2021 automatically use this new method of calculating the active time.

If you have a course that was created prior to this date but you are starting a new class, you can request for the new active time to be turned on manually for the course (by contacting support@openlearning.com) but be aware that data for older classes will become unavailable.


Data that is tracking when a learner was active throughout the course of a day regardless of the device they’ve been using to access the platform.

Go to Administer Learners > Learners > Active time. 


Go to Administer Learners > Statistics > Pages.


Go to Administer Learners > Statistics > Students.




Content aside

  • 2 yrs agoLast active
  • 455Views
  • 4 Following