The Canadian Resident Matching Service (CaRMS) uses a globally recognized algorithm to match medical students and residents with postgraduate training positions in Canada. This algorithm ensures a fair and optimized match for both applicants and residency programs.
Table of Contents
ToggleWhat is the CaRMS Match Algorithm?
The CaRMS algorithm is based on the Roth-Peranson algorithm, designed to create the best possible combination of matches based on the preferences of both applicants and residency programs. The goal is to maximize satisfaction for both parties while ensuring fairness and efficiency.
What Factors Influence the Match?
To function effectively, the algorithm requires three key inputs:
- Number of Available Positions: Each program submits the number of spots available for applicants.
- Rank Order Lists (ROLs):
- Residency programs rank applicants in order of preference.
- Applicants rank programs in order of preference.
- Algorithm Processing: The algorithm then optimizes the outcomes, attempting to match applicants with their highest-ranked programs while considering program preferences.
How Does the Matching Process Work?
- Initial Attempt: The algorithm first tries to place each applicant in their highest-ranked program.
- Program Evaluation: If a program has multiple applicants ranked, it selects the highest-ranked available applicants based on its preferences.
- Tentative Matches: When a match is found, it is considered tentative until all applicants and programs are evaluated.
- Adjustments & Finalization: If a higher-ranked applicant later becomes available for a program, the lower-ranked applicant’s tentative match is removed, and the process continues until all possible matches are optimized.
Example Scenario
Let’s consider a simplified example with four applicants and three residency programs.
- Applicant Singh ranked Plastic Surgery at General as their first choice. The program also ranked Singh first, resulting in an immediate match, filling one position.
- Applicant Garcia ranked Dermatology at City as their top choice and was tentatively matched.
- Applicant Gagnon ranked multiple programs. Since their first choice (Plastic Surgery at General) was already filled, the algorithm moved to their second choice, Family Medicine at City, where they successfully matched.
- Applicant Li also ranked Dermatology at City as their top choice but was ranked second by the program. Since the program’s first-choice applicant (Singh) had already matched elsewhere, Li secured the spot.
- Since Dermatology at City was now full, Garcia lost her tentative match. The algorithm reassessed her rank order list, moving her to Family Medicine at City, where she secured the final position.
At the end of this process, all applicants were matched successfully. However, some applicants may go unmatched if:
- They were not ranked by any program they ranked.
- They did not rank a program that ranked them.
- The program spots were filled by higher-ranked applicants.
Key Takeaways for Applicants
- Rank Programs Honestly: There is no advantage in trying to “game” the system; rank your programs in true order of preference.
- Programs Rank Independently: Programs do not see your rank list, so they will rank applicants based purely on their own preferences.
- Confidential Process: Rank order lists are confidential, ensuring fairness and preventing bias.
For more details on the CaRMS match algorithm and best practices, visit carms.ca/algorithm.
If you’re planning to apply for residency through CaRMS and want to boost your chances of success, consider enrolling in the MedCognito CaRMS Prep Course. This course is designed to help international medical graduates (IMGs) and Canadian students confidently prepare for the match process — from refining your CaRMS application and personal statements to mastering interviews and program selection strategies. Get the guidance you need to stand out in both the first and second iterations.