What is Fair Allocation?

This activity allows students to rate choices according to their preferences. The activity supports multiple different rating strategies (e.g. Accept-Deny, Rank, Points, Likert-scale). After a predefined time period for the student to make their choices, an algorithm works out the distribution (of students to choices), while aiming to maximise the overall satisfaction with that distribution.

Additional features:

  • Choices have maximum sizes (e.g. a project can be allocated to a fixed number of students).
  • After the automated distribution, the allocations can be changed manually by staff (including for students with no rating).
  • Moodle groups can be created to match the choices (e.g. a group for Project A with all the allocated students added to it).
  • The students can review the published allocations inside the Fair Allocation activity.

For a simple vote or allocation on a first-come-first-served basis, you can alternatively use the Moodle Choice Activity.

Why is Fair Allocation useful?

This tool can be helpful for such activities where you want to provide students with some element of choice but where the choices are limited. By allowing students to identify their preferences there is a greater sense of fairness when the allocations are made. Examples where you may choose to use this:

  • For project or thesis topic allocation – where you have a limited number of projects or topics where only a fixed number of people can work on them. Students can rate their preferences and be allocated to a one that suits them.
  • For seminar or tutorial meeting slots – where you have a fixed number of places available over several different slots, you can ask students to rate the ones that are most appropriate for them.

What does Fair Allocation involve?

Running a ‘Fair Allocation’ activity involves a number of steps:

  1. Adding the activity to Moodle and configuring the appropriate rating strategy and other settings.
  2. Creating the options/choices for the students to rate.  You can provide text, or upload a document, with information to help students make decisions.
  3. The activity opens, and students rate the options/choices.
  4. The activity closes:
    1. students are allocated to the various options (automatically timed or when a button is clicked).
    2. student allocation can be manually reviewed and/or changed if necessary.
    3. groups for each option can be created and students automatically added to the relevant group.
    4. the allocation can be published so that students become aware of their allocation.
    5. reports can be viewed and/or exported (.csv) showing how the students rated the options, and how they have been allocated to a given option.


  • Online learning
  • Group learning
  • Student choice
  • Project allocation


Copyright information

Bath Blend Baseline


For advice on using the Fair Allocation activity in Moodle to enhance learning, teaching and assessment contact the TEL team: tel@bath.ac.uk


How do I set up a Fair Allocation activity?

You can follow the four steps outlined above from the guides below.

Fair Allocation (PDF)



It makes sense to give each choice a unique name if you want to set up groups later in the process, and to avoid confusion for students. However, Moodle will let you name multiple choices with the same name so please take care to avoid this.

You can change the dates even after students have started making choices. For example, if you change the end date to a later time, you will extend the time they have to make or edit their choices.

The algorithm cannot be run before the end date, even if you know that all of your students have finished making their choices.  However, if you are happy that all choices have been made you could shift the end date so that the activity closes early.  You can then run the algorithm.  Make sure you communicate these decisions to students so they are not caught out (i.e. if they intended to re-visit their choice before the original end date).

If the fair allocation choices are named the same as groups that already exist in your Moodle course, then running the group option within the fair allocation activity will merge the groups together.  If this is done accidentally you can manually move/remove students from the groups.

Groups that are created using Fair Allocation cannot currently be deleted in the normal way.  (You will see the Delete button is greyed out).  If these are the only Groups in your Moodle course you can use the Reset function to delete them. If you have other groups you wish to retain then the Reset option is not suitable and we advise you to please contact tel@bath.ac.uk to discuss your needs.  (This is a known bug).

No.  Students who don’t take part will not be allocated by the algorithm.  However, you can allocate them quite quickly from the manual allocation screen.

You are advised not to change choices once the activity is open.  Unexpected behaviour may result if you do.

Choices are displayed in alphabetical order (e.g. Project A, Project B etc.).  If, for example, you include days in the choice names (e.g. Mon Project A, Fri Project B), then they won’t display in chronological order. This doesn’t affect the functionality but may catch your students out if they don’t read the information carefully. Think carefully about how you name the choices if the order in which they are presented is important.

Running the algorithm relies on a process in Moodle called the ‘cron’.  This facility usually runs every minute but occasionally it can be delayed if there are a large number of activities to be processed in Moodle. When running the algorithm you may see a message that tells you the process has been delayed.  If you wait a short time and refresh your browser page the algorithm should run as expected.

Fair allocation warning message when running algorithm.