A single number that estimates skill. New players start around 1000–1500 and the number moves after every game — up when you win, down when you lose.
Before the game, Elo predicts your result from the rating gap. Equal ratings mean 50/50. A 400-point gap means the stronger player should score about 91%.
The volume knob for rating changes. A big K makes ratings jump fast (good for new players). A small K keeps established ratings stable.
Whatever the winner gains, the loser loses. Rating points are never created or destroyed in a game — they just flow between players.
Beat someone 400 points above you and you gain a lot. Beat someone 400 points below you and you gain almost nothing. Surprise is what moves ratings.
Arpad Elo built it for chess, but the same math powers online game matchmaking, football club rankings, and even “which photo is better” voting systems.
| Rating Gap | Stronger Player’s Expected Score |
|---|---|
| 0 | 50% |
| 100 | 64% |
| 200 | 76% |
| 400 | 91% |
| 800 | 99% |
flowchart TD
A["Two players matched
Ratings: R_A and R_B"] --> B["Compute expected scores
E_A = 1 / (1 + 10^((R_B - R_A)/400))"]
B --> C{"Play the game"}
C -->|"A wins
S_A = 1"| D["Surprise = 1 - E_A"]
C -->|"Draw
S_A = 0.5"| E["Surprise = 0.5 - E_A"]
C -->|"A loses
S_A = 0"| F["Surprise = 0 - E_A"]
D --> G["Update both ratings
R' = R + K × (S - E)"]
E --> G
F --> G
G --> H(["Ratings drift toward
true skill over many games"])
style A fill:#1a1f2b,stroke:#00e5ff,color:#fff
style B fill:#12161f,stroke:#ffab00,color:#fff
style C fill:#1a1f2b,stroke:#b985f4,color:#fff
style D fill:#0d1117,stroke:#3effa3,color:#fff
style E fill:#0d1117,stroke:#ffab00,color:#fff
style F fill:#0d1117,stroke:#ff5252,color:#fff
style G fill:#12161f,stroke:#ffab00,color:#fff
style H fill:#0d1117,stroke:#3effa3,color:#aaa| System | Simplicity | Uncertainty Tracking | Team Games | Adoption | Known For |
|---|---|---|---|---|---|
| Elo | Chess, the original — two formulas, one number | ||||
| Glicko-2 | Lichess — adds a “how sure are we” deviation value | ||||
| TrueSkill | Xbox Live — Bayesian, built for team matchmaking |