acalculator

How will my chess rating change?

Enter your rating, your K factor, and each opponent's rating and result to see your expected score, rating change, and new rating.

Your numbers

K factor
Games
Row 1
Rating change
15

With a rating of 1,500 and K = 20, your rating changes by 15 to 1,515.

New rating
1,515
Change before rounding
15.19
Your score
1
Expected score
0.24
K factor used
20
Games
1

Rating change: 15. With a rating of 1,500 and K = 20, your rating changes by 15 to 1,515.

How to calculate

Computes a chess rating change with the Elo formula and the FIDE K factors from your rating and each game’s opponent rating and result.

Example with the default inputs (Your rating 1,500, K factor 20, Games [Opponent rating 1,700, Result Win]): With a rating of 1,500 and K = 20, your rating changes by 15 to 1,515.

Method: Expected score per game = 1 ÷ (1 + 10^(−D ÷ 400)), D = your rating − opponent rating (at most ±400 below 2650); change = K × (total score − total expected score), rounded; K ≤ 700 ÷ games.

  • The expected score comes from the Elo formula. FIDE reads it from its own table (rating regulations 8.1.2), rounded to two decimals, so an official FIDE change can differ from this one by a fraction of a point per game.
  • All games are in one rating period, scored against your rating before the games.

Machine-readable copies: Markdown, JSON.

Worked examples

Each example is checked against the calculator on every build.

  1. Your rating 1,500, K factor 20, Games 1700 Win gives Expected score 0.240253, Change before rounding 15.194939, Rating change 15, New rating 1,515.Source: Glickman and Doan, The US Chess Rating System, US Chess, 2026, section 4.2 (winning expectancy). https://new.uschess.org/sites/default/files/media/documents/us_chess_rating_system_specs-2026-04-06.pdf; FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024
  2. Your rating 2,100, K factor 20, Games 2100 Draw; 2300 Loss gives Expected score 0.740253, Change before rounding -4.805061, Rating change -5, New rating 2,095.Source: FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024
  3. Your rating 1,500, K factor 20, Games 2100 Loss gives Expected score 0.090909, Rating change -2.Source: FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024 (8.3.1, the 400-point rule)
  4. Your rating 2,700, K factor 10, Games 2200 Win gives Expected score 0.94676, Rating change 1.Source: FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024 (8.3.1)
  5. Your rating 1,500, K factor 40, Games 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss gives K factor used 25, Expected score 13.5, Change before rounding 12.5, Rating change 13.Source: FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024 (8.3.3 K × n ≤ 700, 8.3.4 rounding)
  6. Your rating 1,500, K factor 40, Games 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Win; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss; 1500 Loss gives Change before rounding -12.5, Rating change -13, New rating 1,487.Source: FIDE Handbook B.02, FIDE Rating Regulations effective 1 March 2024, section 8.3 (the 400-point rule for players below 2650 effective 1 October 2025). https://handbook.fide.com/chapter/B022024 (8.3.4)

How it works

For each game, with your rating R and the opponent's rating Q:

  1. Rating gap: D = R − Q. If your rating is below 2650, a gap of more than 400 points counts as 400, and a gap of less than −400 counts as −400 (FIDE 8.3.1). At 2650 or above the full gap counts.
  2. Expected score: E = 1 ÷ (1 + 10^(−D ÷ 400)), the Elo winning expectancy (the US Chess standard formula).
  3. Score: 1 for a win, 0.5 for a draw, 0 for a loss.

Then, over all the games in the rating period:

  • K factor: 40, 20, or 10 as you choose (FIDE 8.3.3), or your own K from 1 to 100. If K × the number of games is more than 700, K becomes the largest whole number with K × games ≤ 700 (FIDE 8.3.3).
  • Change before rounding = K × (total score − total expected score).
  • Rating change: the change before rounding, rounded to the nearest whole number, with 0.5 rounded away from zero (FIDE 8.3.4). A change within 0.000000001 of a half counts as that half.
  • New rating = your rating + the rounded change. No floor is applied (federations set their own; FIDE lists no rating below 1400), so a very low rating can go below 0.

The page also shows your total score, the total expected score (3 decimal places), the K factor used, and the number of games.

Rules

  • Ratings are whole numbers from 0 to 4,000. There are 1 to 100 games.
  • Every game is scored against your rating before the games, as FIDE does within a rating period.
  • FIDE takes the expected score from its table 8.1.2 (rounded to two decimals) rather than from the formula, so an official change can differ by a fraction of a point per game.

Worked examples by hand

The default: 1500 beats 1700, K = 20. D = −200. E = 1 ÷ (1 + 10^0.5) = 1 ÷ 4.162278 = 0.240253. Change = 20 × (1 − 0.240253) = 15.19, rounded to 15. New rating 1515.

2100 draws with 2100 and loses to 2300, K = 20. E = 0.5 + 0.240253 = 0.740253. Score 0.5. Change = 20 × (0.5 − 0.740253) = −4.81, rounded to −5. New rating 2095.

The 400-point rule: 1500 loses to 2100, K = 20. The gap of −600 counts as −400, so E = 1 ÷ (1 + 10¹) = 1/11 = 0.091. Change = 20 × (0 − 0.0909) = −1.82, rounded to −2 (without the rule it would be −0.61, rounded to −1).

2700 beats 2200, K = 10. At 2650 or above the full gap of 500 counts: E = 1 ÷ (1 + 10^(−1.25)) = 0.94676. Change = 10 × 0.05324 = 0.53, rounded to 1.

27 games with K = 40, all against 1500-rated players, 14 wins and 13 losses. 40 × 27 = 1,080 is more than 700, so K = ⌊700 ÷ 27⌋ = 25. Each E is 0.5, so the expected score is 13.5. Change = 25 × (14 − 13.5) = 12.5, rounded away from zero to 13. With 13 wins the change is −12.5, rounded to −13, and the new rating is 1487.

Other questions people ask

How is a chess rating change calculated?

For each game, the Elo formula gives your expected score, 1 ÷ (1 + 10^(−D ÷ 400)), where D is your rating minus your opponent’s. Your rating changes by K × (your score − your expected score), added up over the games. A 1500 player expected to score 0.24 against a 1700 player gains 20 × (1 − 0.24) = 15 points for a win.

What K factor should I use?

FIDE uses 40 for a player new to the rating list until 30 games are completed, and for players rated below 2300 until the end of the year of their 18th birthday; 20 for other players rated below 2400; and 10 once a player’s published rating has reached 2400, even if it drops later. Pick Other for a federation or site that uses a different K, such as 32.

What is the 400-point rule?

Under FIDE’s rules, for a player rated below 2650, a rating gap of more than 400 points counts as exactly 400. So beating a much weaker player never earns less than the 400-point amount, and losing to a much stronger one never costs more.

Why does winning against a stronger player give more points?

Your expected score against a stronger player is low, so a win beats the expectation by a lot. Against a much weaker player you are expected to win, so a win adds little and a loss costs a lot.

Why can my result differ slightly from the official FIDE change?

FIDE reads the expected score from a table of rating differences rounded to two decimals, based on the normal distribution, while this calculator uses the Elo formula. The two agree closely, so the difference is a fraction of a point per game.

Does this work for chess.com or lichess ratings?

Those sites use the Glicko or Glicko-2 systems, which also track how certain a rating is, so their changes differ. This calculator follows the Elo method used by FIDE and many national federations.