Back to Blog

How Elo ratings work: the formula, worked through with real numbers

The two lines of arithmetic behind every chess rating, what the K-factor changes, and why choosing weaker or stronger opponents does not farm points.

Every rated chess player has seen it. One win is worth a handful of points, the next is worth three times as much, and a single loss can undo a whole evening. None of that is luck. A rating is arithmetic, and once you have seen the two lines of it, every change to your number makes sense, including the ones that feel unfair.

This post works through the Elo formula with real numbers: the expected score, the rating change, the K-factor, what it takes to climb from one number to another, and how Chess.com and Lichess differ from classic Elo. Every figure below comes from the formula itself, and you can check any of them in the Elo Calculator.

The short version

  • Elo turns a rating gap into an expected score: 64% for the player 100 points higher, 76% at 200, about 91% at 400.
  • After the game you gain or lose K times the difference between what you scored and what was expected.
  • If your rating is accurate, your average gain is zero whether you play stronger or weaker opponents. Only the size of the swings changes.
  • To climb, you have to score above 50% against players at your own level. At 56% and K 32, that is about 1.9 points a game.

Where Elo comes from

The system is named after Arpad Elo, a physics professor and chess player who designed it to replace the rating system the United States Chess Federation used before it. The USCF adopted his system in 1960 and FIDE followed in 1970. It is written Elo, not ELO, because it is a person's name and not an acronym.

The idea underneath it is simple. A rating is a prediction. If two players' ratings are right, the gap between them should tell you how the games between them will go. When a result beats the prediction, the ratings move toward the result. When it matches the prediction, they barely move at all.

Step 1: the expected score

Before a game, Elo works out how many points you are expected to score out of one. That number is your expected score, and it depends only on the gap between the two ratings:

Expected score = 1 / (1 + 10(opponent's rating − your rating) / 400)

At equal ratings, the exponent is zero, 10 to the power of zero is 1, and the expected score is 1 / 2: half a point, which is what an even match should produce. As the gap grows, the prediction tilts toward the stronger player, first quickly and then more slowly.

Expected score against rating gapAn S-shaped curve: 50% at an equal rating, 64% at +100, 76% at +200 and 91% at +400.0%25%50%75%100%-800-4000+400+800+100: 64%+200: 76%+400: 91%Your rating minus your opponent's
The expected score for the higher-rated player, drawn straight from the formula. The curve is steepest around an even match, which is why the first 100 points of a rating gap matter more than the next 100.
Rating gapStronger player expectsWeaker player expects
050.0%50.0%
5057.1%42.9%
10064.0%36.0%
15070.3%29.7%
20076.0%24.0%
30084.9%15.1%
40090.9%9.1%
60096.9%3.1%
80099.0%1.0%

"Expected score" is not the chance of winning. A draw counts as half a point, so 64% can come from winning 64 games in 100, or from winning 50 and drawing 28, or any other mix that adds up to 64 points.

Step 2: the rating change

After the game, the result is compared with the prediction. A win scores 1, a draw 0.5 and a loss 0, and your rating moves by:

Rating change = K × (your result − your expected score)

Take a player rated 1500 facing a player rated 1600, with K at 32. The rating gap is 100 points against them, so their expected score is 36%, or 0.36 points. Here is what each result does:

ResultScoredMinus expected× 32New rating
Win1+0.64+20.51520
Draw0.5+0.14+4.51504
Loss0−0.36−11.51488

Two things stand out. First, the underdog gains from a draw. Half a point is more than the 0.36 they were expected to score, so a draw beats the prediction. Second, the stakes are lopsided: a win is worth +20 but a loss costs only 12, because the system already expected the loss more often than not.

The same arithmetic runs in reverse for the 1600 player. Every point one player gains, the other loses, as long as both use the same K. That is why a rating pool keeps roughly the same average over time: Elo moves points between players rather than creating them.

What the K-factor does

K sets how far a single game can move a rating. A large K reacts fast to new results; a small one keeps an established rating steady. FIDE uses three values:

  • 40 for a new player until they have 30 rated games, and for most juniors below 2300.
  • 20 for players rated below 2400.
  • 10 once a player has reached 2400, for the rest of their career.

32 is a common default in other Elo systems. Here is the same 1500 against 1600 game at each value:

K-factorWinDrawLoss
40+25.6+5.6−14.4
32+20.5+4.5−11.5
20+12.8+2.8−7.2
10+6.4+1.4−3.6

The expected score does not change with K. Only the size of the step does. That is why a junior's rating can jump 50 points in a weekend tournament while a titled player's barely moves: the same results, measured with a different ruler.

Should you play stronger or weaker opponents?

This is the most useful thing the formula tells you, and it surprises most players. If your rating is accurate, your average gain per game is zero, whoever you play.

A 1500 player with K 32 facing a 1700 wins 24.3 points for a win and loses 7.7 for a loss. Against a 1300 it is the mirror image: 7.7 for a win, 24.3 for a loss. Against another 1500, it is 16 either way. The expected score is set so that, if the ratings are right, the wins and losses cancel out exactly in every case.

1500 player, K 32, facingExpected scoreWinLoss
1700 (200 higher)24.0%+24.3−7.7
1500 (equal)50.0%+16.0−16.0
1300 (200 lower)76.0%+7.7−24.3

So choosing opponents does not farm points. What it changes is the shape of the risk: playing up gives small, frequent losses and occasional big wins, while playing down gives small, frequent wins and occasional big losses. Your rating only climbs for one reason, which is that you are actually stronger than it says.

What that means in practice

Pick opponents for the games you learn most from, not for the points. The rating follows your strength either way, so the only way to move it for good is to fix the mistakes that keep costing you games. A Game Report shows where one game was lost, and a Profile Report shows which of those mistakes keep repeating.

How long a climb takes

Matchmaking on every chess site pairs you with players near your own rating, so the useful question is how much you gain against your own level. There, the expected score is 50%, and every game is worth K times whatever you score above that. At 56% with K 32, that is 32 × 0.06, or about 1.9 points a game.

Here is what that means for a climb from 1500 to 1800 at K 32, playing 20 games a week:

You score against your levelPoints a gameGames to 1800At 20 games a week
52%0.64469about 23 weeks
56%1.92157about 8 weeks
60%3.2094about 5 weeks
65%4.8063about 3 weeks

The table is a simplification. As you climb, your opponents climb with you, so holding 56% gets harder with every rung. But it shows the real lever: the difference between 52% and 60% is the difference between six months and five weeks. Small, repeatable improvements in how often you score matter far more than any single result.

And at exactly 50%, the answer is never. Scoring half your points against players at your level keeps a rating exactly where it is. That is not a flaw in the system. It is what a rating means.

The Lumichess Elo Calculator with 1500 against 1600 at K 32: 36% expected score, plus 20 for a win, plus 4 for a draw, minus 12 for a loss, and 157 games to reach 1800 at 56%.
The Elo Calculator with this post's first example: 1500 against 1600 at K 32. The left side is the expected score, the right side is what each result pays and how many games a target takes.

Elo, Chess.com and Lichess

Chess.com and Lichess do not use Elo. Both use Glicko systems (Lichess uses Glicko-2), which were built on the same idea but add a second number: how certain the system is about your rating. A new or inactive account has a wide uncertainty, so its rating moves in bigger steps until the system has seen enough games. An established account moves in smaller ones.

That is why the points you gain on those sites will not always match an Elo calculation, especially on a new account or after a long break. For a settled rating, though, Elo is a close guide to what a result is worth, and the lessons above hold: your expected score still depends on the gap, and your average gain against accurately rated opponents is still zero.

Frequently asked questions

How is Elo calculated?

First your expected score: 1 / (1 + 10^((opponent's rating - your rating) / 400)). Then your rating changes by K times (your result minus that expected score), where a win is 1, a draw 0.5 and a loss 0.

What does a 100-point rating difference mean?

The higher-rated player is expected to score 64% of the points, and the lower-rated player 36%. At 200 points it is 76% against 24%, and at 400 points about 91% against 9%.

Why did I gain more points for beating a stronger player?

Because the system expected you to lose. Your gain is K times the gap between your result and your expected score, so the less you were expected to score, the more a win is worth.

Can you lose rating points for a draw?

Yes, if you were the higher-rated player. A 1800 drawing a 1500 at K 20 was expected to score about 85%, so half a point is below the prediction and costs about 7 points.

What K-factor does FIDE use?

40 for new players until they have 30 rated games and for most juniors below 2300, 20 for players below 2400, and 10 once a player has reached 2400.

Is my Chess.com or Lichess rating an Elo rating?

No. Both sites use Glicko systems, which also track how certain your rating is. Their numbers come from different player pools, so they are not directly comparable with each other or with a FIDE rating.

Related reading

Tool Elo Calculator: your rating change and the climb to a target Improvement How to actually review your chess games Product What a game report tells you: every move label, and how accuracy is scored

Work out your next game

Put in your rating and your opponent's and the free Elo Calculator shows your expected score, what a win, draw or loss pays, and how many games a target rating takes.

Open the Elo Calculator