Elo Rating Change Calculator

Enter your rating, your opponents' ratings and how each game finished, and this calculator returns your expected score, the rating points you gain or lose, and your new rating. It uses the Elo formula that FIDE, the USCF and almost every online chess and esports ladder are built on: your expected score comes from the rating difference alone, and your rating moves by the development coefficient K multiplied by the gap between what you actually scored and what the rating gap said you should score. Up to three games are rated in one pass, exactly as a tournament section is rated.

Calculator

This calculator runs in your browser. Enable JavaScript for live results — the inputs, formula and worked example below remain fully readable without it.

Inputs this calculator takes, with typical values
InputWhat to enterExample
Your rating before the eventThe published rating you started the event with, not a live or provisional figure from mid-tournament.1650
Development coefficient KHow many points a full point of surprise is worth; FIDE uses 40, 20 or 10 depending on your history.20 - established player under 2400
Opponent 1 ratingThe opponent's published rating on the same list your own rating comes from.1720
Result 1Score from your side of the board: a win is 1, a draw 0.5, a loss 0.Win
Opponent 2 ratingLeave the result on "did not play" if you only want to rate one game.1580
Result 2Score from your side of the board for the second game.Draw
Opponent 3 ratingA third rated opponent, if the event ran that long.1810
Result 3Score from your side of the board for the third game.Loss
Cap the rating difference at 400 pointsBoth FIDE and the USCF treat any gap wider than 400 points as exactly 400 when they rate a game.Yes

It returns

  • New rating — Your starting rating plus the total change across every game entered.
  • Rating change — Positive when you scored above expectation, negative when you scored below it.
  • Expected score (total) — Points the rating gap predicted you would take from these games.
  • Actual score (total)
  • Average win expectancy per game
  • Average opponent rating

The formula

E=11+10RoR400
R=R+K(SE)

In plain text: E = 1 / (1 + 10^((Ro - R) / 400)); R' = R + K x (S - E)

  • EExpected score against this opponent, between 0 and 1 (points)
  • RYour rating before the game (rating points)
  • RoYour opponent's rating before the game (rating points)
  • SYour actual score: 1 for a win, 0.5 for a draw, 0 for a loss (points)
  • KDevelopment coefficient, the maximum points one game can move you (rating points)

The 400 in the exponent is a scale choice, not a law of nature: it fixes a 400-point gap at 10-to-1 odds. FIDE and the USCF also cap the difference used in the exponent at 400 points in either direction.

Updated Category Ratings, Tournaments & Standings Verified against published test cases Reading time 13 min

What an Elo rating actually measures

An Elo rating is not a score and not a percentage. It is a position on a scale built so that the difference between two ratings, and nothing else, predicts the result. Arpad Elo, a physics professor and strong chess player, proposed the system to the United States Chess Federation in the 1960s to replace an older percentage-based scheme, and FIDE adopted it in 1970. The same machinery now runs behind chess ladders, Go servers, competitive video game matchmaking, table tennis leagues and a long tail of board game clubs.

The scale is anchored by one design decision: a gap of 400 points corresponds to odds of ten to one. A player rated 400 points above you is expected to take about 0.91 points from every game, which is a win rate of 91% if draws are ignored. Halve the gap to 200 points and the favourite's expectancy falls to about 0.76. Close the gap to zero and both players expect 0.50. Because only the difference matters, the absolute numbers are arbitrary; a pool of players whose ratings all rose by 300 points overnight would produce identical predictions.

The second design decision is that the rating is a running estimate that updates after every game. You do not recompute a player's whole history; you nudge the current number toward the evidence the latest game supplied. How hard you nudge is the development coefficient K, and choosing it is the only genuinely contested part of the system.

The formula, term by term

Two equations do all the work. The first converts a rating difference into an expected score:

E = 1 / (1 + 10^((Ro - R) / 400))

Read it from the inside out. Ro - R is how many points your opponent is above you, so it is positive when you are the underdog. Dividing by 400 expresses that gap in units of "one full order of magnitude of odds". Raising 10 to that power turns it into an odds ratio: a gap of 400 gives 101 = 10, meaning the opponent is ten times as likely to win. The final step, 1 / (1 + odds), converts odds into a probability. That shape is the logistic curve, and it is why expectancy flattens out at the extremes: the difference between a 600-point gap and an 800-point gap barely changes anything, which is exactly why both FIDE and the USCF stop counting past 400.

The second equation moves your rating:

R' = R + K x (S - E)

S - E is the surprise. If you were expected to score 0.24 and you won, the surprise is +0.76 and your rating rises. If you were expected to score 0.91 and you drew, the surprise is -0.41 and your rating falls even though you did not lose. The system is zero-sum in a single game: whatever you gain, your opponent loses, provided both players use the same K. When the two players carry different coefficients - a junior on 40 against a grandmaster on 10 - rating points are created or destroyed, which is one reason rating pools drift over decades.

For a tournament, FIDE sums the change across all games in the event and applies it once at the end. That is why this calculator rates every round against your starting rating rather than updating between rounds; updating in sequence would give a different answer, and it is not what the regulations do.

Worked example: a three-round weekend at 1650

You start the event rated 1650 with an established coefficient of K = 20. You beat a 1720, draw a 1580 and lose to an 1810.

  1. Game 1, opponent 1720. The gap is 1720 - 1650 = 70 points against you. 70 / 400 = 0.175, and 100.175 = 1.4962. So E = 1 / (1 + 1.4962) = 0.4006. You won, so the surprise is 1 - 0.4006 = +0.5994.
  2. Game 2, opponent 1580. The gap is 1580 - 1650 = -70, in your favour. 10-0.175 = 0.6684, so E = 1 / 1.6684 = 0.5994. You drew, so the surprise is 0.5 - 0.5994 = -0.0994.
  3. Game 3, opponent 1810. The gap is +160. 160 / 400 = 0.4, and 100.4 = 2.5119. E = 1 / 3.5119 = 0.2848. You lost, so the surprise is 0 - 0.2848 = -0.2848.
  4. Add up. Total expected score = 0.4006 + 0.5994 + 0.2848 = 1.2848. Total actual score = 1 + 0.5 + 0 = 1.5.
  5. Apply K. Change = 20 x (1.5 - 1.2848) = 20 x 0.2152 = +4.30 points.
  6. New rating. 1650 + 4.30 = 1654.3, published as 1654.

Notice how little the draw against the 1580 cost you and how little the loss to the 1810 cost you. Against a field averaging 1703 you were expected to score 1.28 out of 3, and 1.5 beat that. A weekend that felt mediocre - one win, one draw, one loss - was in fact a slightly above-par performance, and that is the whole point of having a rating rather than a win percentage.

How to read the result

Judge the change against the size of K, not against the raw points. With K = 20 the theoretical maximum from one game is 20 points, so a +4.30 result is a little over a fifth of what one maximally surprising game could deliver. A single game can never move you more than K, and it only approaches that when a heavy underdog wins.

The most useful diagnostic is your score against expectation, not your score. If you take 1.5 from a field where the formula expected 1.28, you performed at roughly the level of a player rated somewhat above 1650 - the performance rating calculator turns that into an explicit number, which is what selection committees and norm calculations look at. A rating change of zero across a long event means the field was correctly priced against you, which is the normal outcome for a settled player.

Expect volatility to shrink as you play more. Ratings are estimates, and the standard error of a rating after a handful of games is large. FIDE's answer is to start players on a high coefficient so the estimate finds its level quickly, then drop it. The USCF's answer is an explicitly variable coefficient tied to the number of games played, which behaves like a running average whose weight on new evidence declines. Either way, if you are in your first thirty rated games, treat your rating as a rough bracket rather than a measurement.

Expected score by rating difference

Values of E = 1 / (1 + 10^(d/400)), where d is the opponent's rating minus yours. Read the row for your gap; the last two columns show what a single game is worth at K = 20, the FIDE coefficient for an established player below 2400. Multiply them by K/20 for any other coefficient, because the change is linear in K.
Gap (opponent minus you)Your expected scoreGain for a win at K=20Loss for a defeat at K=20
-400 or more in your favour0.9091+1.82-18.18
-3000.8490+3.02-16.98
-2000.7597+4.81-15.19
-1000.6401+7.20-12.80
-500.5714+8.57-11.43
00.5000+10.00-10.00
+500.4286+11.43-8.57
+1000.3599+12.80-7.20
+2000.2403+15.19-4.81
+3000.1510+16.98-3.02
+400 or more against you0.0909+18.18-1.82

Rows beyond 400 points repeat the 400-point row because both FIDE and the USCF cap the difference there. A draw is worth the average of the win and loss figures in the same row, because K(0.5 - E) is the midpoint of K(1 - E) and K(0 - E), so at a gap of zero a draw moves nothing.

Mistakes that produce a wrong rating change

  • Updating your rating between rounds. A tournament is rated as a block against the rating you entered with. Recomputing round by round changes the answer and does not match the regulations.
  • Mixing rating lists. A FIDE rating and a national rating are different scales for the same players, often differing by 50 to 150 points in either direction. Rate a game with both players' figures from the same list.
  • Using the wrong K. Under the FIDE regulations K is 40 while you are new to the list or a junior below a stated ceiling, 20 for an established player who has never reached 2400, and 10 once your rating has touched 2400 - permanently, even if it later falls back.
  • Ignoring the 400-point cap. Without it, beating a 900-rated player as a 2000 looks like a change of +0.1 rather than +0.9, and losing looks catastrophic rather than merely bad.
  • Assuming the pool is stable. Elo predicts results within a pool. Comparing a 1900 on a strict national list with a 1900 on a generous online ladder is not meaningful, because the two pools were never calibrated against each other.
  • Expecting draws to be free. A draw against a much weaker opponent costs you points, because the formula priced a win. Half a point is only a good result when the expectancy was below 0.5.

Which standard this follows

The calculation follows the FIDE Rating Regulations: expectancy from the logistic formula above, the rating difference capped at 400 points, results summed across an event and the change applied once. The K values offered in the dropdown include the three FIDE bands (40, 20, 10) plus coefficients used by other bodies and online ladders. FIDE has revised both the K bands and the published rating floor over the years, so confirm the current values in the FIDE Handbook before submitting a calculation that matters. The USCF uses the same expectancy curve but a formally different update rule with a variable coefficient and bonus provisions, so a USCF change will not match this figure exactly.

Where Elo stops and what replaces it

Elo carries one number per player and therefore cannot distinguish a settled 1800 from a volatile 1800 who might be anywhere between 1600 and 2000. Mark Glickman's Glicko system fixes exactly that by carrying a rating deviation alongside the rating, so an uncertain player moves further per game and an inactive player's uncertainty grows back over time. Glicko-2 adds a volatility term. Microsoft's TrueSkill extends the idea to team games and multiplayer free-for-alls, where the credit for a result has to be split among several players. Most large online ladders now run one of these rather than plain Elo, even when the interface still calls the number "Elo".

Within a single event, the natural companion to a rating change is a performance rating, which asks what rating would have made your actual score exactly expected. For team sports the analogous idea is the Pythagorean win expectation, which predicts standings from points scored and conceded rather than from a per-player rating. If you are organising the event rather than playing in it, the round robin games calculator and the single elimination bracket calculator size the schedule, and a rating-based expectancy is also the cleanest way to convert a match-up into the fair price that a betting odds converter would quote.

One last caution about the curve itself. Elo assumed a normal distribution of performance; FIDE and the USCF both switched to the logistic curve because it fits real results better at the extremes, and the logistic is what this calculator uses. The two differ by only a point or two of expectancy in the middle of the range, but they diverge where the gap is large - which is another reason the 400-point cap exists.

Key terms

Expected score
The average number of points the rating gap predicts you will take per game, counting a win as 1 and a draw as 0.5. It is not a win probability, because it folds draws in at half weight.
Development coefficient (K)
The multiplier on the surprise term, and therefore the largest number of points a single game can move you. Higher K means faster adaptation and noisier ratings.
Rating floor
The lowest rating a federation will publish. Players below it are unrated or held at the floor, which prevents ratings from spiralling downward on a thin sample.
Performance rating
The rating that would have made your actual score in an event exactly equal to your expected score. It is a summary of one event, not a running rating.

Frequently asked questions

How many Elo points do I gain for beating someone 200 points higher?

With K = 20 you gain 15.19 points, and your opponent loses the same amount. The formula gives you an expected score of 0.2403 against a 200-point favourite, so winning produces a surprise of 0.7597, and 20 x 0.7597 = 15.19. At K = 40 the same win is worth 30.39 points; at K = 10 it is worth 7.60. The gain depends entirely on the gap and your coefficient, never on how convincingly you won.

What K factor should I use?

Use 40 if you are new to the rating list or a junior, 20 once you are established below 2400, and 10 once your rating has reached 2400. Those are the FIDE bands. National federations and online sites set their own: many club systems use 32, and some slow ladders use 16 to keep ratings stable. If you are checking a specific site's numbers, find the coefficient it publishes rather than guessing, because K scales every result linearly.

Why did I lose rating points after a draw?

Because the formula expected you to win. A draw scores 0.5, so any time your expected score exceeds 0.5 - that is, any time you were the higher-rated player - a draw produces a negative surprise and costs you points. Against an opponent 100 points below you the expected score is 0.6401, so a draw at K = 20 costs 20 x (0.5 - 0.6401) = 2.80 points. The mirror image is also true: a draw as the underdog gains points.

Does the calculator update my rating between rounds?

No, and that is deliberate. FIDE rates a whole tournament against the rating you entered it with, sums the change across all games and applies it once. Updating after each round would let a good first game inflate the expectancy in the second, producing a different total. If you want a round-by-round simulation, run the calculator one game at a time and feed each new rating back in yourself.

What does the 400-point cap do?

It stops enormous rating gaps from making a game essentially unratable. Both FIDE and the USCF treat any difference larger than 400 points as exactly 400, which fixes the favourite's expectancy at 0.9091 no matter how wide the real gap is. Without the cap, a 2200 beating an 800 would gain a fraction of a point while a loss would cost nearly a full K, and the arithmetic would punish strong players for playing in open events.

Is Elo a win probability?

Not exactly - it is an expected score, which counts draws as half a point. In a game with no draws, such as most video games, expected score and win probability are the same thing. In chess they are not: an expected score of 0.60 might come from 45% wins, 30% draws and 25% losses, or from 55% wins, 10% draws and 35% losses. The rating system does not distinguish those, which is one of its known blind spots.

What is a normal rating change for a weekend tournament?

For an established player at K = 20 playing five to seven games, a swing of 10 to 25 points in either direction is routine, and anything past 40 points means the event went badly out of line with expectation. Juniors at K = 40 routinely move twice that. If you gain more than K x number of games, something is wrong with the inputs, because that product is the arithmetic maximum.

Can I use this for esports or a board game club?

Yes. The formula is game-agnostic: it only needs a rating for each side and a result in points. Pick a coefficient and stick to it, seed new members at a fixed starting rating, and accept that the first twenty or so games for each player are a calibration period rather than a measurement. If your game is team-based or has more than two sides, plain Elo will misattribute credit, and a system such as TrueSkill or Glicko-2 is a better fit.

Why do two sites give me different Elo ratings?

Because ratings are only meaningful within one pool. Each site starts players at its own seed rating, uses its own coefficient, and rates a different population, so the scales drift apart and never reconcile. A 1900 on one server can correspond to anything from 1500 to 2000 elsewhere. Compare your rank or percentile within a pool rather than the raw number across pools.

References

  • FIDE Handbook, B.02: FIDE Rating RegulationsFederation Internationale des Echecs (FIDE)
  • The Rating of Chessplayers, Past and Present — Arpad E. Elo, Arco Publishing, 1978
  • The US Chess Rating System — Mark E. Glickman and Thomas Doan, United States Chess Federation
  • A Comprehensive Guide to Chess Ratings — Mark E. Glickman, American Chess Journal, 1995