The previous lesson gave you the prediction formula. Now: what happens after the game?
After a game, each player's rating shifts based on how surprising the result was:
Where:
Setup: Alice (1600) plays Bob (1400). K = 32.
Step 1 — Expected score:
EAlice = 1 / (1 + 10(1400-1600)/400) = 1 / (1 + 10-0.5) = 1 / (1 + 0.316) = 0.76
Step 2a — Alice wins (expected outcome):
R'Alice = 1600 + 32 × (1 - 0.76) = 1600 + 32 × 0.24 = 1608 (+8)
R'Bob = 1400 + 32 × (0 - 0.24) = 1400 + 32 × (-0.76) = 1376 (−24)
Wait — why doesn't Alice gain 24 and Bob lose 24? She does from Bob's perspective: Alice gains 8 because the win was expected; Bob loses more because the loss, from his formula, was also expected (his E was 0.24). Actually: Alice gains K×0.24 = 7.7 ≈ 8, Bob loses K×0.76 = 24.3 ≈ 24. Total points gained = total points lost (zero-sum).
Step 2b — Bob upsets Alice:
R'Alice = 1600 + 32 × (0 - 0.76) = 1600 - 24 = 1576 (−24)
R'Bob = 1400 + 32 × (1 - 0.24) = 1400 + 24 = 1424 (+24)
The upset causes a much bigger swing for both players.
K controls how reactive the system is:
| K value | Behavior | Used when |
|---|---|---|
| 10–16 | Slow, stable | Established players (FIDE uses 10 for top players) |
| 20–32 | Moderate | Most tournaments, Chatbot Arena |
| 40+ | Fast, volatile | New players, provisional ratings |
Source: Wikipedia — K-factor; Elo (1978), Ch. 4.
Player A (1500) beats Player B (1500). K = 32. How many points does A gain?
Hint: what's EA when ratings are equal?
A much weaker player beats a much stronger one. Which statement is true?
Read the "Implementing Elo" section on Wikipedia for pseudocode and practical details on choosing K.
Next: Convergence — How Ratings Stabilize →
Questions? Ask your Copilot agent — happy to work through more examples or explain anything further.