Where Elo comes from
Elo was designed in the mid twentieth century by Arpad Elo to rate chess players, and variations of it have since been used in many games and sports. Its appeal is that it needs only two things: the current ratings of the two players and the result. There is no history to store and no complicated model to fit. Many modern ladders use something more elaborate, but they are mostly extensions of the same idea.
The expected score
Before a match, Elo converts the rating gap into an expected score between 0 and 1. A win counts as 1, a loss as 0 and a draw as 0.5, so the expected score can be read as a win probability when draws are rare or absent.
The standard formula is:
E(A) = 1 / (1 + 10^((R_B - R_A) / 400))
Here R_A and R_B are the two ratings. The 400 is a scale constant: it means a gap of 400 points makes the stronger player roughly ten times as likely to win as to lose, which is an expected score of about 0.91 (1 divided by 11).
A few reference points help build intuition:
- Equal ratings: the exponent is 0, so 10^0 = 1 and E = 1/2 = 0.5.
- A 200-point gap: 10^(200/400) is about 3.16, so the favourite’s E is 3.16 / 4.16, roughly 0.76, and the underdog’s is about 0.24.
- A 400-point gap: the favourite’s E is about 0.91 and the underdog’s about 0.09.
The two expected scores always sum to 1, so the only information carried is the gap, not the absolute level.
The update step
After the match, each rating moves according to the difference between what happened and what was expected:
New rating = Old rating + K x (Actual score - Expected score)
K is a constant chosen by whoever runs the ladder. Take a K of 32.
Equal ratings. Both players have an expected score of 0.5. The winner gains 32 x (1 - 0.5) = 16 points and the loser drops 16.
The underdog wins. Suppose a 1500 player beats a 1700 player. The 1500 player’s expected score was about 0.24. Their gain is 32 x (1 - 0.24), about 24 points. The 1700 player loses the same amount.
The favourite wins. If the 1700 player had won instead, their gain would be 32 x (1 - 0.76), about 8 points, and the underdog would lose about 8.
The logic is that surprising results move ratings more than expected ones. Because the winner gains exactly what the loser drops, the total of all ratings stays constant in a closed pool, a property that matters for the drift problems discussed under rank inflation.
Why K-factor size matters
K controls how fast ratings react, and it involves a trade-off.
- A large K (say 32 or higher) reacts quickly. New players reach their true level in fewer games, and improving players are recognised sooner. The cost is noise: one lucky or unlucky result moves the rating a lot, so established players bounce around their true level.
- A small K (say 10 or 16) is stable. Ratings change slowly, and a single result matters little. The cost is slowness: a new or rapidly improving player takes a long time to arrive at an accurate rating.
With K = 16, the equal-rating case above becomes plus or minus 8 rather than 16. Over a long run, that halves the size of the swings but also halves the speed of convergence.
Some organisations use different K values for different situations: higher for new players, lower for established ones, sometimes lower again at the top of the scale. This is a manual version of what rating uncertainty methods do automatically, by tracking how sure the system is about each player.
What Elo assumes
Elo rests on a few assumptions worth knowing.
- A single fixed skill. Each player has one number, and performance varies around it in a bell-shaped way. Real play depends on matchups, roles and form.
- Results depend only on the gap. The 400-point scale and the formula imply that a certain gap always means the same win probability. That may not hold across a game’s whole range, especially in games with more randomness, where even large gaps produce upsets.
- Both ratings are equally trustworthy. Elo does not distinguish a player with 5 games from one with 500. That is the main weakness later systems address.
- Draws and team play need extensions. Elo is built for one-on-one results, and team versions rely on assumptions about how to combine ratings, covered in the discussion of team ratings.
Starting values and inactivity
A new player needs a starting rating, and that choice matters. Setting everyone at the same default places an unknown player at the middle of the scale, which means strong newcomers gain rating easily while weak ones lose it, but at the cost of mismatched games along the way. Many games try to shorten this with placement matches. Inactive players, meanwhile, keep their old number indefinitely under plain Elo, even though their real level may have changed.
Reading Elo sensibly
The practical lesson is that an Elo number is an estimate that settles slowly and is shaped by K. A short winning streak on a high-K ladder can be a few games of good luck, and a rating that barely moves on a low-K ladder is not proof of being stuck. For deciding whether a change in your rating reflects real improvement, compare over many games, in the way that any sample size argument suggests, and remember that the formula only knows results, not the reasons behind them.