CodeGrade supports group assignments, for which multiple students can hand in together as a group.

CodeGrade supports group assignments through the concept of group sets and groups. Groups are managed entirely within CodeGrade and not in your LMS. This chapter explains these concepts and how to create and use group assignments.

It is important that a regular individual assignment is created within your LMS (Canvas, Blackboard, Moodle, BrightSpace, Sakai or OpenEdx), and not a group assignment. CodeGrade handles all the groups and makes sure grades and feedback is passed back correctly to the corresponding group members.

Group set

A group set is set up on a course wide level and can be used in one or more assignments in that course. A group set determines the minimum and maximum size for each group in this group set. Groups created for the same group set in one assignment, can be used in other assignments too that are using the same group set. Group sets are created and managed on the Course Management page.

Having a minimum group size of 1 still allows students to hand in individually too, without having to be in a group.

After you have created a group set you can connect this group set to an assignment. This is done on the Assignment Management page per assignment. You can connect a group set to multiple assignments, which then share the same groups.

Students can only hand when their group size is equal or larger than the minimum group size.


Groups are connected to a group set. For each group set students are connected to one or zero groups.

When navigating pages of a course with group sets a new button should appear in the sidebar, the Groups button. After clicking on this button and selecting a group set you can add, delete and change groups for this group set. By default students can join groups, leave groups, and edit the name of their group. Students also get prompted a pop-up when submitting to a group assignment if they are not in a group or if their group is too small. Using they pop-up they can join and create groups. It is currently not possible to randomly assign students to groups.

Group assignments are not (yet) compatible with peer feedback.

If an assignment is a group assignment, students will be presented with a new button which allows them to join groups. Once in a group, individual students can hand in submissions for the whole group and grades and feedback is shared among all group members. If using Git uploading, all group members will share the same webhook data.

Multiple assignments with different groups:

If you have multiple assignments within one course for which you want students to have different groups, create a new group set per assignment to achieve this.

Multiple assignments with the same groups:

If you have multiple assignments within one course for which you want students to be in the same group for all these assignments, create and use only one group set and use this for all these assignments.