Level up! - Gamification 🏅

Blocks ::: block_xp
Maintained by Frédéric Massart ⭐
🔥 🤩 The easiest way to add gamification to your Moodle site! Engage your students! Gamify their learning experience by allowing them to level up in their courses. #gamification #game
Latest release:
8451 sites
490 fans
Current versions available: 2

Version   Moodle   Favourites   Since  

Visit our website at levelup.plus.

Please support this plugin: add it to your favourites, star it on GitHub, or purchase the add-on!

What's new?

With a focus on UX, here are some of the highlights of our recent releases.

  • Revamp user interface to setup the levels
  • Redesigned rule picker to include rule description
  • New rule to target an activity by name (Level up! Plus add-on required)
  • Downloadable logs (Level up! Plus add-on required)
  • See the latest release notes

Feature request and bug reports

Please report the issues you find, problems you experience or any feature request on the issue tracker. Thanks!


  • Automatically attributes points to students for their 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 leaderboard to display the ranking of the students
  • Ability to customise the number of levels, the points they require and their appearance
  • Total control over the points earned per action
  • Unlock content when a certain level is reached
  • Experience points earned per course, or for the entire site
  • Support for shortcodes to include in content
  • GDPR compliant

Level up ! Plus add-on features

Purchasing the Level up! Plus add-on unlocks these features:

  • Target an activity by name
  • Grade-based rewards
  • Team leaderboards
  • Activity completion support
  • Course completion support
  • Individual rewards
  • Mobile app support
  • Course selection rule
  • Resilient cheat guard
  • Limit learners rewards in time frame
  • Progress bar can display progress towards next or ultimate level
  • Additional default level badges
  • Substitute experience points for other symbols
  • Viewing the block on someone's profile displays their level
  • Import points from a CSV file
  • IOMAD support for the leaderboard and team leaderboard
  • Download the report
  • Download the logs
  • Email support

Visit our website for more information on Level up! Plus.

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! > General settings". Once set, any block newly or previously added will display the total experience points of your students.

How are experience points calculated?

Please refer to the Level up! documentation.

How to unlock content at a certain level?

Please refer to the Level up! documentation.

How to unlock a course at a certain level?

Please refer to the Level up! documentation.

Shortcodes supported

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

Level up! comes with shortcodes to display the learner's level badge, their progress bar, or even the leaderboard anywhere you like. Shortcodes can also be used to conditionally display content according to a learner's current level. For a list of available shortcodes and their documentation, please refer to Level up! documentation.

Provided by
Branch Up


This plugin is part of sets Experience Points (XP), Gamification.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6
Screenshot #7
Screenshot #8
Screenshot #9


Frédéric Massart ⭐ (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS


  • Wed, Jan 18, 2017, 10:47 PM
    Hi Frédéric, thank you for your work!
    I've a silly problem: I add the block to my course, so I see it in my course home when I have the administrator role. If I change my role to the student's one the block disappear. How can i fix it? Can you help me please? Thanks!
  • Wed, Feb 1, 2017, 3:42 PM
    Bonjour Frédéric,
    j'ai paramétré le plug-in pour s'appliquer au niveau du site au lieu du cours. Mais du coup, je cherche à établir des règles qui prennent tout de même en compte la localisation des activités ou ressources ! Il semble qu'il soit impossible de préciser que pour un événement donné, on souhaite l'appliquer en particulier à une activité précise d'un site précis. Est-ce bien le cas ? Ou j'ai raté un truc ??
    Merci de votre réponse, et félicitations pour cet outil particulièrement puissant !
  • Wed, Feb 1, 2017, 11:46 PM
    Salut Valentin,

    Oui, c'est bien le cas, vous n'avez rien raté. Ce n'est pas possible d'ajouter des règles sur bases d'activités qui sont dans un cours autre que le "Frontpage" lorsque le block est utilisé pour le site entier. Ce n'est pas impossible à faire, à coder, mais je ne pense pas pouvoir dédier du temps à cela dans un future proche.

    Please feel free to raise an issue at github.com/FMCorz/moodle-block_xp/issues to see if others are also interested in this.

  • Thu, Feb 2, 2017, 5:36 PM
    Merci pour votre réponse Frédéric ! Bon, pas grave, on va essaye de contourner ça...
    Dernière question et promis je vous laisse tranquille... smile j'essaye de comprendre la manière dont est alimentée la table des logs du bloc. Dans quel(s) fichier(s) s'effectue cette "sélection" ? Je cherche à ajouter des points d'XP lorsque Moodle décerne un badge, mais cet event ne remonte pas dans les logs du bloc, et je cherche à l'ajouter !
    Un grand merci pour votre aide et votre contribution !
  • Thu, Feb 2, 2017, 5:45 PM
    Ceci est dû à la nature de l'event "badge_awarded". Il est de niveau "Teaching" car l'action est prise par quelqu'un qui n'est pas l'étudiant. C'est un event qu'on peut qualifier de passif comparer à tous les autres qui sont déclenchés par l'étudiant même. A ce jour je n'ai pas de solution pour vous car le but du block était de récompenser l'étudiant de manière instantanée et non différée. Sorry!

    Though note that I'm available for hire if you need the functionalities to be extended. smile
  • Fri, Feb 3, 2017, 10:41 PM
    Merci pour toutes vos réponses. J'ai regardé tout cela, et en effet, les bidouilles que j'ai du effectuer pour arriver au bon résultat sont vraiment trop craignos... on va donc en rester là ! Un grand merci pour votre aide. smile
  • Tue, Feb 7, 2017, 11:14 PM
    Has anyone found a way to stop the students ability to log in and out to and gain XP on events that they have already visited in the same 24 hour time period. This is a great mod, but I have student that have cracked the code so to speak on getting points on the same activity over and over regardless of the time cheat blocking that I set. Also a complete list of event names in long form would be a great addition of information for people wishing to narrow the focus on awarding points, say on competition of lessons and not just for answering a question in a lesson.
  • Wed, Feb 15, 2017, 10:38 PM
    Hello, I'm using the plugin "Level up". I want to give points to my students only when they score more than 80% in a quiz, Is it possible?
  • Mon, Feb 20, 2017, 10:32 AM

    Not at this stage, but some other people are interested in this feature. Please comment with your thoughts and support on https://github.com/FMCorz/moodle-block_xp/issues/25

  • Mon, Feb 20, 2017, 10:33 AM
    Dan, there is an issue to make the cheat guard more resilient to students' trickeries: https://github.com/FMCorz/moodle-block_xp/issues/52 Feel free to comment with your thoughts and support.
  • Fri, Apr 7, 2017, 9:33 AM
    Hi there! I've been trying to install this plugin to test it, but I keep getting a generic 500 Internal Server Error when I try to use it. I'm not sure where to start debugging. I searched with Google, but couldn't find any results.

    Here's what happens: I installed Level up! I see the block on my course page (Level up! + a blue star + some text). I click 'View the ladder' or 'Settings' and then I get the Internal Server Error message.

    Any thoughts on how to start figuring out what's wrong?

    Moodle version: Moodle 3.0.3+ (Build: 20160426)
    Level up! version: 2.2.0
  • Fri, Apr 7, 2017, 11:09 AM
    Hi Erin,

    I will try to look into this bug. Though, could you try to get your administrator to give us information about the error, they should find that in their logs.

  • Thu, Apr 13, 2017, 4:43 AM
    Hi, Fred. In response to the above:

    > Hi there! I've been trying to install this plugin to test it, but I keep getting a generic 500 Internal Server Error when I try to use it. I'm not sure where to start debugging. I searched with Google, but couldn't find any results.

    Yeah, I should've checked my logs. All my permissions were wrong. They were set to 0777. I tried setting a few files to 0644, but I was still getting errors. Then I remembered that I'd used the Moodle installer (from the admin back-end) and that I'd had permissions problems with it before. So I just used FTP to upload to reset all the permissions.

    And that worked!

    Thanks again. This looks like an awesome mod.
  • Thu, May 4, 2017, 3:48 PM
    im a student and tyring to Gamify our Moodle-webseite and using this superb plugin.. its a very nice Plugins but im having problems because of funcation "Report for teachers to get an overview of their students' levels". Because of our Uni-Rules teachers should not be able to see this Report.... Is that possible to disable this function??? and how??
    it Would be great if you could help me

    thnx in advance
  • Fri, May 5, 2017, 10:27 AM

    That is not possible at the moment, however I invite you to create a feature request at https://github.com/FMCorz/moodle-block_xp/issues

Please login to post comments