The core idea
The Elo system was created by Arpad Elo for chess, and it has since been adapted to many other games. Its central assumption is simple: skill can be summarised as a number, and the difference between two numbers should predict how often each player wins.
Elo does not measure skill directly. It infers a number from results, and it is only meaningful when compared with other ratings in the same pool. A rating of 1500 says nothing on its own.
Expected score from a rating gap
The system first converts a rating difference into an expected score between 0 and 1. For player A with rating R_A facing player B with rating R_B, the standard formula is:
E_A = 1 / (1 + 10^((R_B - R_A) / 400))
A win counts as 1, a loss as 0 and a draw as 0.5, so the expected score can be read as the average result per game. In a game without draws, it is the win probability.
Some values show how the scale behaves:
| Rating advantage | Expected score |
|---|---|
| 0 | 0.50 |
| 100 | about 0.64 |
| 200 | about 0.76 |
| 400 | about 0.91 |
The 400 in the formula is a scale choice: every 400 points of advantage multiplies the odds in your favour by ten. At 400 points ahead, the odds are 10 to 1, which is a probability of 10/11, or about 0.91.
How a rating updates
After a game, each rating moves by a fixed multiplier times the surprise:
R_new = R_old + K x (S - E)
Here S is the actual score and E is the expected score. K is a constant, often called the K-factor, that sets how quickly ratings move.
Take a 1500 player facing a 1600 player, with K = 32. The 1500 player’s expected score is 1 / (1 + 10^(100/400)) = 1 / (1 + 1.778), about 0.36.
- If the 1500 player wins, the change is 32 x (1 - 0.36) = +20.5 points.
- If they lose, the change is 32 x (0 - 0.36) = -11.5 points.
The 1600 player moves by the opposite amounts, so the total rating in the pool stays the same. In that respect Elo behaves like zero-sum games, where one side’s gain is the other’s loss, and the upset moves ratings much more than the expected result does.
What the K-factor does
A large K reacts quickly to new results, which helps when ratings are unsettled but makes them jumpy. A small K produces stable ratings that are slow to adapt to genuine improvement. Many organisations use a higher K for newcomers and a lower one for established players, a patch that partly addresses the system’s main weakness, covered below.
Why it works
Over many games, the update rule nudges each rating toward the level at which its predictions are correct on average. If a player keeps winning more than the formula expects, their rating rises until the expectation catches up. If the model’s assumptions hold, ratings converge toward a consistent ordering of skill.
It also needs very little data per player: just a number and the results of each game. That simplicity is a large part of why it has lasted.
Where it falls short
- No uncertainty. A player with a few games and a veteran can share the same rating, though only one is well established. Glicko and TrueSkill ratings were designed to add that missing information.
- Team games. Plain Elo assumes one player against another. Applying it to teams requires choices, such as averaging the team’s ratings, and these can hide who actually contributed.
- Transitivity. The model assumes that if A beats B and B beats C, then A should beat C. Games with strong style matchups, where one approach counters another, break that pattern.
- Starting ratings and inflation. New players enter at a default value. If strong players leave or new ones enter above or below true skill, the overall scale can drift over time.
- Single-number summary. A player might be dominant on one map or character and weak on another, but the rating averages that away.
- Chance. Results always contain luck, so ratings from a small number of games are noisy. The idea of regression to the mean applies: an unusually good rating after a short run is more likely to fall than rise.
Reading an Elo number sensibly
Treat a rating as an estimate with an error margin, not an exact measure. A gap of 10 or 20 points between two players says almost nothing about who is better, since a 20 point gap corresponds to an expected score of only about 0.53. Larger gaps are more informative, particularly when both players have many games behind them.
Elo ratings are also a convenient input to other tools. A pre-match win probability model often starts from the rating gap, and matchmaking systems use rating differences to try to create close contests.