UCL Logo

Page tree

Keywords: bulk enrolment, bulk unenrolment, auto group creation, groups print

What is it?

Bulk enrolments allows you to enrol students or staff and/or add them to groups in a Moodle course using an excel file containing their UCL email address or userid. 

This can be useful before the start of session, when Portico enrolments may not yet have begun, but enrolments are required.  It also allows you to add students to groups with ease - the process will auto-create a groups if they do not already exist on your Moodle course.

Who can use it?

Course administrators and tutors can use this feature.

Before I start...

You will require an excel file containing a complete list of the students' email address or userids in the first column. Subsequent columns contain the names of any groups you want to add each student to. 

How do I use it?

1. Create your CSV

In order to upload users successfully, you will need to create a CSV file with the students details. If you also want to enrol staff you will need to create a second csv file for this, as each bulk enrolment can only enrol a single type of role (e.g. either students or tutors).

CSVs are simple to create - one way is in a spreadsheet package like Excel, making sure to save it as a .csv file-type.

At minimum, your CSV file should contain one column for the main student identifier, usually their UCL email address, but it can also be their UCL userid.
Ensure you have column labels - this is because Moodle anticipates these and so ignores the first row of CSV file. In other words, don't put any actual student data in your file's top row. If you are using Email then put 'email', if you are using user IDs then put 'userid'
If you want to enrol the students into Groups, include a second column which gives the group name for each student. Be careful to type these exactly. Give it a column heading 'group'.

 2. Enrol the Students

In the Settings block on your course, under Course administration, click Users > Bulk enrolments.

  1. Select Choose a file and upload your CSV file.
  2. Make sure Role to assign is left as student, or change it to tutor (if uploading staff).
  3. Set First column contains to reflect they type of data you have used in your spreadsheet, either the students' email address or UCL userid.
  4.  If you need to create groups, ensure Create group(s) if needed is set to Yes
  5. If you would like to create groupings in your course, based on the groups that the students will been placed into, ensure Create grouping(s) if needed is kept to yes.  If you do not want to create groupings, ensure this is set to No
  6. To receive an email report confirming which students have been enrolled and which groups they have been placed into, keep Send me a mail report set to Yes.
  7. Click Enrol them to my course.
  8. Check the students have been enrolled in their groups by going to the Settings menu and under Course Administration click on Users then Groups.
  9. You should see the groups listed, followed by the number of students in each group in brackets.

You can also bulk unenrol students from your course by clicking on Bulk unenrolments in the block, and following the instructions above.

Further help

Further guidance on bulk enrolments is available from moodledocs.

If you find any inaccurate or missing information you can even update this yourself (it's a communal wiki).

If you have a specific question about the tool please contact the Digital Education team.


The students you are enrolling must have already logged into Moodle, so this cannot be used to enrol first year students if they had never used Moodle.

Also, note the bulk unenrolment will not work for students who have been enrolled onto the course via Portico.  

Examples and case studies

Uploading students and their personal tutors to a departmental Moodle course to enable them to schedule Personal Tutor meetings

You will need to create two excel files for this purpose.

  1. Create an excel file (saved as .csv) that contains a list of all your personal tutors.
    1. The first column will contain the personal tutor's email address or UCL userid.
    2. The second column will contain the group they will belong to. In this case the group will contain their name - e.g. Jo Bloggs personal tutoring group.
      Note: although tutors can see all groups in Moodle, adding them to their own group will ensure this group is automatically selected on any activities with groups enabled. E.g. discussion forums.
  2. Upload this file to Moodle (using the steps outlined above), making sure the Role to assign setting is changed to tutor.
  3. Create a second excel file (saved as .csv) that contains a list of all your students, mapped to the personal tutor group.
      1. The first column will contain the student's email address or UCL userid.
      2. The second column will contain the group they will belong to. In this case the group will contain their name - e.g. Jo Bloggs personal tutoring group.
        Note: students will need to be in the correct group in order to see any activities that are visible only to those group members. E.g. the scheduler tool that allows them to schedule an appointment with their tutor.
  4. Upload this file to Moodle (using the steps outlined above), making sure the Role to assign setting is left as student.
  5. Now you can setup any resources or activities (such as the scheduler tool) for each group and Restrict access, so only students in that group see the item.

Questions & Answers

Q.  Why am I getting an error message when I upload the CSV file to Moodle?

A.  Check the file is a .csv and not a .xls file, and ensure in the First column contains field is set to UCL Userid or Email address

Further information