The CS department is piloting a preregistration system, the Match. The goal of the Match is to help all students who want to take a CS class do so, while reducing waitlist churn and uncertainty. The Match enables students to indicate their preferences for courses prior to advising and registration, and students are then matched to a maximum of one CS course based on their preferences. The Match gives students priority based on seniority (with tie-breaking) and matches each student to the course that they ranked highest that has spots available.

The preregistration match system applies only to courses numbered CS202 and above; CS111 and CS201 follow the typical registration system, and both courses usually have sophomore priority non-sophomore priority sections. All students who are eligible to register for a course numbered CS202 or above will receive an email during the term with a link to a form that they must fill out to participate in the match.

What’s the timeline for the Match?

Students receive an email about the Match several weeks before advising days begins. This email contains a link to a form that students must complete in order to participate. This form is typically due by the Monday before advising days begins; changes to the college timeline for publishing the schedule of classes each term may influence the Match timeline. Students will be informed about their match by the beginning of advising days so that they can discuss the information with their advisor.

Who can participate in the Match?

All students who have taken the prerequisite(s) for a course numbered CS202 or above can participate. We welcome and encourage everyone who wishes to take a course numbered CS202 or above in the following term to fill out the Match form; the Match does not differentiate between those who are CS majors and those who are not.

Why is the CS department doing this?

The goal of the match is to help more students get into their most preferred CS course and reduce both waitlist churn and the number of students who are on many CS waitlists but not enrolled in any CS class.

What if a student needs an exception to the match process, such as needing to take multiple CS courses to stay on track for graduation?

We recognize that there may be exceptional cases where a student would like us to consider matching them to multiple courses or making an exception to their priority. Typically, this is only done for cases where not doing so might jeopardize the student’s ability to graduate in 12 terms. Any student who believes they need an exception should email their request for the exception, including precisely what their request is and an explanation for that request, to

What if students’ plans change between when they fill out the Match form and the registration period?

We recognize that student plans may change, and that’s perfectly okay. If you match to a course but then decide you don’t want to register for that course, you don’t need to do anything. Your seat will be held for you until the end of priority registration, and after that, the instructor may offer that seat to another student. 

Because of the logistics of the Match, we can’t re-Match students after the deadline or add students to the Match who did not fill out the form. Students who don’t participate in the match but then decide they want to register for a course numbered CS202 or above, as well as students who wish to register for a different course instead of or in addition to the one they matched to, should follow the normal registration process. Some courses may have seats available, while others may have had all seats allocated in the match process. You are welcome to get on a waitlist; typically, some students choose not to enroll in their Matched course, and thus the instructor is often but not always able to invite some students off of the waitlist following the conclusion of priority registration.

Are there more details about the match process or the algorithm used for the match?

Yes!  Behind the scenes, the Match uses the Gale-Shapley algorithm to match students to courses; this is the same algorithm used by the National Residency Matching Program to pair medical students with hospitals in which they will complete their residences. Take our algorithms course to learn more about this algorithm! You can read a longer description of the match and its goals.

What if I have a question that isn’t answered here?

We want all students to be able to take the courses they want, and we’re happy to help you if you have any questions about the Match or registering for CS classes! Please email us at A faculty member will get back to you.