Quick links

Required documents for admissions

English language requirements

Academic background requirements

Fast track: Accelerated master's

Regular, transitional, or probationary students

Next steps: Offers of admission

Transfer credits

Canadian citizens and permanent residents

Degrees Minimum requirements Educational background
MMath 78
  • A Bachelor of Computer Science, Engineering or related degree
  • An overall B+ (78%) average in a four-year undergraduate degree from a recognized university
  • English competency
  • Academic background requirements
Accelerated BMath/MMath or BCS/MMath 80
  • University of Waterloo students only (both domestic and international)
  • Students completing their 3A/3B term in Computer Science
  • Research experience is preferred
PhD 78
  • A completed MMath degree (or equivalent) in Computer Science
  • A completed undergraduate degree in Computer Science and an outstanding academic record (breadth of knowledge in computer science, and strong letters of recommendation)
  • A PhD applicant may be admitted into the MMath program with the option to transfer into the PhD program before completing their master's thesis.

Direct entry into PhD

You can apply for consideration directly into our PhD program from your undergraduate studies. Depending on your application, academic background and research experience you may be admissible or considered for an offer to one of our master's programs.

International students

Degrees Minimum requirements Required documents
MMath, and PhD

Required documents for admissions

The following required documents must be provided before an application is considered complete:

  • Academic transcripts and degree certificates from each post-secondary institution attended, upload copies on Quest. Unofficial copies of transcripts are fine at the point of application, however these must be copies of actual transcripts and clearly show the name, the institution and the degree. All post-secondary institutions attended must be declared on the application form.
  • Three letters of reference (completed electronically by your referees). At least two of your letters must be from academic sources. All letters should be from former or current instructors or supervisors but not from colleagues. Read more about our reference requirements.
  • A supplementary information form or statement of interest (completed on Quest). Please ensure that your form includes only ASCII characters.
  • A résumé (upload a copy on Quest)
  • The GRE General test is required of all applicants to the School of Computer Science, who have not completed a four-year undergraduate degree from a Canadian or US university where English is the primary language of instruction. Students may upload unofficial copies of their GRE to their online application while waiting for official copies to be sent by ETS. Canadian citizens and permanent residents are not exempt.

  • Official copies of English language test results recognized by the University of Waterloo (e.g. TOEFL, IELTS). Students may upload unofficial copies to their online application while waiting for official copies to be sent by ETS - please see below for details regarding recognized English language tests, policies and a list of exempted institutions
  • Proof of immigration status for permanent residents of Canada

For detailed document requirements, and instructions on how to submit these documents, review the instructions for applicants.

English language requirements

You are exempt from submitting an English language proficiency examination score if any one of the following conditions is true:

  • You have completed three or more years of post-secondary education or completed a graduate degree at a North American institution or university
  • Within the last 24 months at the time of your application submission, you have completed three or more years of post-secondary education or completed a graduate degree at a university at which English was the primary language of instruction, as indicated on our ELP exemption list
  • You have been employed for at least three years in a position in which English was the language of business in a country listed on our ELP exemption list
  • Your country's official language is English and is listed as "all exempt" on our ELP exemption list

​Please note, students who are ELP exempt may still require a GRE. Check GRE exemption requirements by reviewing the required documents for admissions.

ELP examinations must have been taken within the last 24 months at the time the application is submitted.

Main accepted English
language examinations
Required scores
Internet-based TOEFL (iBT) 100 overall; 26 writing; 26 speaking
IELTS (academic) 7.5 overall; 7.0 writing; 7.0 speaking

See the graduate studies calendar for other accepted English language examinations and their required scores. Note that Computer Science uses the alternative higher scores.

Academic background requirements

Applicants for all degree programs are expected to have a formal background in the following areas of computer science:

  • Programming languages
  • Data structures
  • Operating systems
  • Algorithms
  • Computer organization (architecture)

Applicants lacking in background may be required to take remedial courses, in addition to the regular program requirements, or be admitted as a probationary or transitional student.

FAST TRACK - Accelerated BMath/MMath or BCS/MMath

Waterloo students only (both domestic and international regular full-time students — not open to exchange students)

The Accelerated BMath/MMath or BCS/MMath admission procedure is intended to shorten the time required to obtain an MMath. The BMath/MMath or BCS/MMath option streamlines the process by allowing a student to complete two graduate courses during their 4A/4B terms that will count towards their MMath degree. This is particularly useful for those students who have taken extra courses during their first three years of study, either during their school or work terms.

Ideal candidates for this admission procedure are students who have flexible fourth year schedules and who have already demonstrated research competency as an Undergraduate Research Assistantship (URA), as a research professional in their co-op work term, or informally with a research group. Research in a university setting is preferred.

Students are encouraged to apply for the BMath/MMath or BCS/MMath option during their 3B academic term. Applications will also be considered during the 3A term or, in exceptional circumstances, at the start of the 4A term.

As part of the application, applicants must submit a plan of study including:

  1. A preferred supervisor
  2. The two graduate courses to be taken in 4A/4B
  3. An outline of proposed research

Before applying the applicant should speak with the preferred supervisor to ensure they are interested in considering an application for early admission. The applicant should also review the admissibility requirements and the plan of study with the school's director of undergraduate studies and with the associate director of graduate studies.

Once all undergraduate degree requirements are complete, students in the BMath/MMath or BCS/MMath option will be guaranteed financial support during their graduate studies provided they maintain good academic standing in the program. They are encouraged to apply for scholarships during September of their 4A term (NSERC and OGS).

Regular, probationary, and transitional students

Depending upon the applicant's preparation, he/she may be admitted as a regular, probationary, or transitional student. The applicant does not need to specify their status on the application as this will be decided by the David Cheriton School of Computer Science and the director of graduate studies upon reviewing the application.

Regular student

An applicant who has completed an honours bachelor's degree in Computer Science or a closely related field with a standing of at least a B+ (78%), in a recognized four-year degree program in a Canadian University (or its equivalent), or who has satisfactorily completed the school's qualifying program, may, upon the recommendation of the School and approval by the Faculty, be admitted to the MMath program as a regular student.

Closely related fields include: mathematics (with sufficient CS courses), computer engineering, and bioinformatics (or biology/medicine with sufficient CS courses).


Probationary student

An applicant who has completed a program of study as for a regular student above, but who has not attained the appropriate overall standing, may be admitted to a master's program as a probationary student provided that at least one of the following conditions is satisfied:

  • The applicant has substantial relevant occupational experience (normally three years) beyond the bachelor's degree.
  • The applicant's standing in the final year is substantially above the level of a full B (normally B+ to A-).

The school will specify in writing at least the first two courses in the student's program when the student is recommended for admission. Upon completion of the specified courses, the student's status will be evaluated by the school. If the student has achieved an average of at least 78 in these courses, he/she may continue in the MMath program as a regular student. If the student's average on these courses falls below 78 but not below 73 his/her status will be reviewed by the graduate committee. Normally a student will not continue on probationary status for more than two terms.


Transitional student

An applicant who has completed a program of studies for a regular student as above, except that the major discipline or prior study is not directly applicable to the field of Computer Science such that the school feels that this constitutes a significant deficiency in the applicant's preparation, may be admitted to a master's program as a transitional student.

An applicant admitted to the MMath program as a transitional student is normally required to complete a program of at most five undergraduate or graduate one-term courses in addition to those required of regular students. The school will specify the additional requirements in writing when the student is recommended for admission. Upon completion of the required additional courses with at least a 78% average the student may continue in the MMath program as a regular student.


Offers of admission

If an applicant is accepted to the computer science graduate program, they will be notified by email and an electronic offer of admission/letter of admission will be uploaded to their Quest account, specifying:

  • The conditions of admission (offers are usually conditional upon the completion of the applicant's current degree program and official transcripts sent directly from the home institution)
  • The name of their supervisor (a faculty member who will provide advising on research and funding)

Students will not be "matriculated" for enrolment and tuition fee arrangements by the Graduate Studies Office until an official final transcript, has been received by the university.

Students educated in China

Students educated in China are required to submit an official final transcript, graduation diploma and degree certificate. It is important that accepted applicants submit these documents as soon as possible.

Study permit

Students intending to come to Canada on a study permit must show their offer of admission/letter of admission to the Canadian immigration authorities to gain access into Canada. Study permit holders should not attempt to leave for Canada until they have received this letter.

Transfer of academic credit

Academic credit for graduate courses taken at another institution may be awarded provided that proof can be shown that the courses have not been used for credit toward a previous degree. Normally, at most one half of the required courses can be transferred from another institution. For transfer consideration, the student must submit their course descriptions and their official transcripts to the Computer Science Graduate Office for review at the time of departmental recommendation for admission.

For more information see our credit transfer page.

How to apply

Frequently asked questions

Find some of the common questions we receive about applications, the review process and more. 

Application deadline

Application tip! You should begin applying at least two weeks before the application deadline to arrange your supporting documents and references.

Term Application deadline Still accepting applications?
Fall December 15 

No (2019)

Yes (2020)

Winter June 1

No (2020)

Yes (2021) 

Spring October 1

Yes (2020)

Yes (2021)

Applications for MMath Computer Science (data science specialization) will be considered only for the Fall term. To have your application be considered for this specialization, indicate your interest when filling in the Supplementary Information Form (SIF).

Term start dates

Term Period
Fall September - December
Winter January - April

May - August


PhD programs: ltdo@uwaterloo.ca

MMath thesis (research based) programs: j3hardy@uwaterloo.ca

MMath coursework programs: denise.shantz@uwaterloo.ca