League of Legends uses a mathematical system to match up players of similar skill in the "Normal" and "Ranked" game types. The basic priorities of the system are (in respective order):
Protect new players
Create fair and competitive matches
Make games less toxic by matching you with the right players
First, the system places players in the appropriate pool - which is basically the queue (normal, ranked, solo/duo, ranked 5-man team, etc.). Once in the pool, the system starts trying to find matches, with the goal of creating teams that are both made up of players with roughly equal skill and have a fair chance of winning.
Step 1: Determine strength:
If a player is queued alone, the strength is determined by his personal matchmaking rating (referred to as MMR from here on out) and number of wins for that particular queue. If the player is queued with a pre-made team, the system will adjust the MMR of the team accordingly. In most cases, we have found pre-made teams out-perform teams composed of unconnected players.
Players have a separate MMR for each queue, each of which evolves independently from the others. This means that your wins and losses in Twisted Treeline won’t impact your MMR for Summoner's Rift.
Step 2: Determine eligible opponents:
Initially, the system will only match players with similar MMR. As time passes, the system will very slowly broaden the MMR range it considers acceptable.
New players get some special protection and are usually matched against other new players, though this may result in a longer delay before finding a game.
Step 3: Build a match:
Eventually, the system will assemble a group of players with comparable MMRs and put the players into a game.