Note: You are currently viewing documentation for Moodle 3.9. Up-to-date documentation for the latest stable version of Moodle may be available here: Cohorts.


From MoodleDocs

About cohorts

Cohorts are site-wide or course category-wide groups. The purpose of cohorts is to enable all members of the cohort to be easily enrolled in a course. This can be done using Cohort sync, which, as the name suggests, synchronises cohort membership with course enrolment. Alternatively, a cohort can be manually enrolled in a course.

How to create and add cohorts

Creating a cohort

Cohorts can be created by site administrators and other users with appropriate permissions.

1. Access Administration > Site administration > Users > Accounts > Cohorts


2. Click the Add button. Note that in the dropdown you can choose between making your cohort available throughout the site "system" or in a named course category.

3. Cohorts are visible to teachers by default but unchecking the 'Visible' link will mean they are not available for teachers to use in their courses.

4. Complete the details and save the changes.

5. Follow the assign link opposite the cohort name in the list of available cohorts.


6. Select potential users from the list then click the Add button.

Creating cohorts in bulk

  1. Cohorts can be created with a csv file upload to the system or to a named category from Site administration > Users > Accounts > Cohorts > Upload cohorts. More detailed information can be found on the Upload cohorts page.
  2. Category managers can upload csv files to create cohorts from the Cohorts link in the Administration block of their category.
  3. An example file is below. The 'Students 2014-15' cohort will be created in the system and the 'History' cohort will be created in the (already existing) Humanities category:

Adding users to a cohort in bulk

  1. Access Administration > Site administration > Users > Accounts > Bulk user actions
  2. Find users by setting an appropriate filter
  3. Add users from the available list to the selected list
  4. Choose 'Add to cohort' with selected users

Uploading users to a cohort

An administrator can upload users via CSV file to existing cohorts as follows:

  1. Access Administration > Site administration > Users > Accounts > Upload users
  2. Upload a text file with the following format:

where year3 and year4 are the cohort ids of existing cohorts (i.e. not their names).

Note: If the users already exist on the system, then you only need their username with the chosen cohort in your csv file.

It is also possible to create the cohort at the same time as the users are uploaded to the system.

username,password, firstname,lastname,email,cohort1
jackbrown,Pass5678,Jack,Brown,,London Contingent

In the above example, the cohort named London Contingent will be created upon upload of the csv file.

Searching cohorts

When a site has a large number of cohorts, keywords may be entered into the Search Cohorts box to search for or filter the available cohorts.

An All Cohorts screen accessed from Site administration > Users > Accounts > Cohorts allows an administrator to view and search through system and category cohorts.


Managing category cohorts

Cohorts which have been created for a category rather than the system can be located by selecting the appropriate category and then clicking the Cohorts link in Administration > Category (name) > Cohorts.

Cohort capabilities

Enrolling a cohort in a course

There are two ways to enrol a cohort in a course:

  1. Cohort sync
  2. Manual enrolment of the cohort

With cohort sync, if users are later added or removed from the cohort, they are automatically enrolled or unenrolled from the course. For further details, see Cohort sync.

Manual enrolment of the cohort however is a one-time action. Adding or removing users from the cohort later has no effect on course enrolment.

Manual enrolment of a cohort

To manually enrol all members of a cohort in a course:

  1. Go to Course administration > Enrolled users
  2. Click the 'Enrol users' button and then 'Browse cohorts'
  3. Select a cohort then click the 'Finish enrolling users' button.

The required capabilities for manually enrolling cohort members are:

  • enrol/manual:enrol in course context
  • moodle/course:enrolreview in course context

The default "Teacher" (editingteacher) role has all of these capabilities.

Assigning user-context roles to all cohort members

A user-context role may be assigned to all members of a cohort in Site administration > Users > Permissions > Assign user roles to cohort.

This is useful for enabling mentors (or team managers) to review users' learning plans when using Competencies.

Note: The changes may not appear immediately as the role is assigned after a scheduled task, 'Sync cohort role assignments', is run.

See also