Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Level Up XP (block_xp) GitHub tag Travis branch

Engage your students! A Moodle plugin to gamify your students' learning experience by allowing them to level up in their courses.


  • Automatically captures and attributes experience points to students' actions
  • Block that displays current level and progress towards next level
  • Report for teachers to get an overview of their students' levels
  • Notifications to congratulate students as they level up
  • A ladder to display the ranking of the students
  • Ability to set the number of levels and the experience required to get to them
  • Images can be uploaded to customise for the appearance of the levels
  • The amount of experience points earned per event is customizable
  • Page to display the list of levels and a description
  • Experience points are earned per course
  • An event is fired when a student levels up (for developers)

Additional features

Purchasing the Level Up XP+ add-on unlocks additional features. Click here for more details.


Moodle 3.3 or greater.


Simply install the plugin and add the block to a course page. More details are available here: Level Up XP documentation

The plugin can also be installed using composer at fmcorz/moodle-block_xp.

How are experience points calculated?

Have a look at this documentation page.

Restricting access based on students' levels

Have a look at this availability plugin Level.

Level-based enrolment

Have a look at this enrolment plugin Level.


What are those? Shortcodes can be used in editors throughout Moodle to include or modify the content. The plugin Shortcodes must be installed to enable them.

Check the list of supported shortcodes.

How to use one block for all courses

In order to gather experience points from all the courses a student is participating in, you have to set the admin setting Where are experience points used? to 'For the whole site'. This setting is located under "Site administration > Plugins > Blocks > Level Up XP". Once set, any block newly or previously added will display the total experience points of your student.


  • Awarding a badge when a student reaches a level (blocked by MDL-39864)

Provided by

Branch Up


Licensed under the GNU GPL License.