Chess Elo Rating Change Calculator
Calculate your chess Elo rating change after a game.
Enter both ratings, the result and your K-factor to get the expected score and your new rating.
How the Elo rating system works
Elo is a surname, not an acronym. Arpad Elo, a Hungarian-American physics professor, worked the system out through the 1950s; the US Chess Federation adopted it in 1960 and FIDE (the international chess federation) followed in 1970. You will see it written ELO all over the internet, and that is simply a mistake that stuck.
The core idea is that every player has a number representing strength, and games update that number based on the result and the gap between the two players’ ratings.
Beat a stronger player and you gain more points than for beating a weaker one.
Lose to a much weaker player and you lose disproportionately more.
The two equations
Expected score (the share of a point you should average against this opponent):
E = 1 / (1 + 10^((opponent_rating - your_rating) / 400))
Rating change after a game:
ΔR = K × (actual_result - E)
actual_result is 1 for a win, 0.5 for a draw, 0 for a loss. The constant 400 was chosen so that a 200-point gap corresponds to roughly 76% expected score for the higher-rated player. A 400-point gap is about 91%.
Note what “expected score” is not. It is not your chance of winning, because half a point of it comes from draws. Between two 2600-rated grandmasters the expected score is 50% and the win rate is closer to 22% each, with the rest drawn.
The K-factor
K controls how fast a rating moves. FIDE uses a tiered K-factor:
| Player | K |
|---|---|
| Under 18 with rating under 2300 | 40 |
| New rated player (first 30 games) | 40 |
| Standard rated player | 20 |
| Player rated 2400 or above | 10 |
USCF and online sites use slightly different schedules. Chess.com starts new accounts at K=40 and steps down as games are played. Higher K means a more volatile rating; lower K means more stability.
Worked example
You are rated 1450, your opponent is 1520. The gap is 70 points.
E = 1 / (1 + 10^(70/400)) = 1 / 2.495 = 0.401
A draw is roughly your expected result. At K = 20:
- Win: ΔR = 20 × (1 - 0.401) = +12.0 points, new rating 1462
- Draw: ΔR = 20 × (0.5 - 0.401) = +2.0 points, new rating 1452
- Loss: ΔR = 20 × (0 - 0.401) = -8.0 points, new rating 1442
Notice that the three changes sum to +6, not to zero. That is not an error. What is zero-sum is each individual game: if your opponent is also on K = 20, whatever you gain they lose to the point.
A common pitfall
Players obsess over single-game swings. Do not. Elo is a low-pass filter on long-run results: a 30-game stretch reveals your true rating, a 5-game stretch is noise.
There is a second trap in the same family. A rating built entirely against the same three club opponents is precise and wrong, because the system only ever learns about you relative to whoever you play. Elo measures you against your pool, and two pools that never meet can be 200 points out of step with each other and nobody would know.
How we build and check this calculator
This calculator runs entirely in your browser, so the numbers you enter stay on your device. The math behind it is written by hand and tested against worked examples and standard references before the page goes live.
SuperGlobalCalculator is independently built and maintained. See how we build and verify our calculators.