Elo Rating Calculator
Calculate the new Elo ratings for two players after a match using the standard Elo rating system.
Results
How Is an Elo Rating Calculated? The Complete Guide
The Elo rating system is a method for calculating the relative skill levels of players in competitive games like chess, esports, and other head-to-head competitions. Developed by Hungarian-American physicist Arpad Elo in the 1960s, this system is now the standard for ranking players in games ranging from chess to League of Legends.
In this guide, we’ll break down:
- The core formula behind Elo ratings
- How expected scores are calculated
- The role of the K-factor in rating adjustments
- Real-world applications and variations
- Common misconceptions about the system
The Elo Rating Formula
The Elo system updates a player’s rating after each game based on three key components:
- Current Ratings — The pre-match ratings of both players (RA and RB)
- Game Result — Whether the game was a win (1), loss (0), or draw (0.5)
- K-Factor — A constant determining how much ratings can change per game
The new rating for Player A after a match is calculated as:
RA(new) = RA(old) + K × (SA — EA)
Where:
- RA(new) = New rating for Player A
- RA(old) = Current rating for Player A
- K = K-factor (development coefficient)
- SA = Actual score (1 for win, 0.5 for draw, 0 for loss)
- EA = Expected score for Player A
Calculating Expected Scores (EA and EB)
The expected score represents the probability of a player winning based on their current ratings. It’s calculated using the formula:
EA = 1 / (1 + 10(RB — RA)/400)
EB = 1 / (1 + 10(RA — RB)/400)
Key observations about expected scores:
- If two players have equal ratings, both have a 50% expected score (E = 0.5)
- A 400-point difference means the higher-rated player has a ~90% expected score
- The relationship is logarithmic — rating differences matter more at lower levels
| Rating Difference (RA — RB) | Expected Score for Player A | Expected Score for Player B |
|---|---|---|
| 0 | 0.500 | 0.500 |
| 100 | 0.640 | 0.360 |
| 200 | 0.759 | 0.241 |
| 300 | 0.847 | 0.153 |
| 400 | 0.909 | 0.091 |
The K-Factor: Controlling Rating Volatility
The K-factor determines how much a player’s rating can change after a single game. Common K-factor values include:
- K=10 — Used for top-level players (e.g., FIDE masters in chess)
- K=20 — Standard for most intermediate players
- K=30 — Common for new players (allows faster rating stabilization)
- K=40 — Used in highly volatile systems or for provisional ratings
Higher K-factors lead to:
- Faster rating convergence for new players
- More dramatic rating swings after upsets
- Potentially less stable rankings over time
| Scenario | K=10 | K=20 | K=30 | K=40 |
|---|---|---|---|---|
| 1500-rated player beats 1600-rated player | +6.4 | +12.8 | +19.2 | +25.6 |
| 1600-rated player loses to 1500-rated player | -6.4 | -12.8 | -19.2 | -25.6 |
| Equal-rated players draw | 0 | 0 | 0 | 0 |
Real-World Applications of Elo
While originally designed for chess, the Elo system has been adapted for numerous competitive domains:
- Chess — FIDE uses Elo with K-factors ranging from 10 to 40 depending on player level
- Esports — Games like League of Legends, Dota 2, and StarCraft II use modified Elo systems
- Sports — FIFA and World Football Elo Ratings track national teams
- Video Games — Matchmaking systems in games like Call of Duty and Overwatch
- Academic Rankings — Some universities use Elo-like systems to rank departments
The International Chess Federation (FIDE) maintains official Elo ratings for chess players worldwide, with Magnus Carlsen holding the highest peak rating of 2882 as of 2023.
Common Variations and Extensions
Several modifications exist to address specific needs:
- Glicko System — Adds a “ratings deviation” to measure uncertainty (used by Yahoo Games)
- Trueskill — Microsoft’s Bayesian extension for team games (used in Xbox Live)
- Elo-MMR — Hybrid systems combining Elo with matchmaking ratings
- Dynamic K-factors — K-values that change based on game importance or player activity
Mathematical Properties of Elo
The Elo system has several important mathematical characteristics:
- Zero-sum — The total points in a closed system remain constant (what one player gains, another loses)
- Logistic distribution — Rating differences translate to win probabilities via a logistic curve
- Convergence — With sufficient games, ratings stabilize at players’ “true” skill levels
- Transitivity — If A > B and B > C, then typically A > C (though not always due to variance)
A 2018 study from the Stanford University Department of Statistics found that Elo ratings in chess achieve 90% accuracy in predicting game outcomes after approximately 50 games per player.
Practical Example Calculation
Let’s walk through a concrete example using our calculator:
- Player A: 1600 rating
- Player B: 1500 rating
- K-factor: 30
- Result: Player A wins
Step 1: Calculate expected scores
EA = 1 / (1 + 10(1500-1600)/400) = 1 / (1 + 10-0.25) ≈ 0.649
EB = 1 – EA ≈ 0.351
Step 2: Determine actual scores (SA=1 for win, SB=0 for loss)
Step 3: Calculate new ratings
RA(new) = 1600 + 30 × (1 – 0.649) ≈ 1600 + 10.65 = 1610.65 ≈ 1611
RB(new) = 1500 + 30 × (0 – 0.351) ≈ 1500 – 10.53 = 1489.47 ≈ 1489
Limitations and Criticisms
While powerful, the Elo system has some limitations:
- Assumes performance is normally distributed — Real skill distributions may differ
- No account for team dynamics — Pure Elo struggles with team games
- Inflation/deflation — Without proper calibration, average ratings can drift
- New player problem — Initial ratings are arbitrary
- No decay for inactivity — Players who stop competing keep their ratings
The U.S. Soccer Federation switched from pure Elo to a hybrid system in 2018 to better account for margin of victory and home-field advantage in their rankings.
Implementing Elo in Your Own Projects
To implement an Elo system:
- Start all players with an initial rating (commonly 1200-1500)
- After each game, update ratings using the formula
- Choose K-factors appropriate for your player base
- Consider adding:
- Rating floors/ceilings
- Provisional periods for new players
- Activity-based decay
- Bonus points for upsets
- Validate with historical data if available
For team games, you can either:
- Average the team members’ ratings
- Use specialized team extensions like Trueskill
- Track individual performance within team contexts
Advanced Topics
For those looking to deepen their understanding:
- Elo with uncertainty — Incorporating confidence intervals (like Glicko)
- Dynamic K-factors — Adjusting K based on game importance or player activity
- Partial credit — Handling games with more than two outcomes
- Time-weighted Elo — Giving more weight to recent games
- Hierarchical Elo — Modeling different skill dimensions
The UCLA Department of Mathematics offers a free course on rating systems that covers these advanced topics in detail.
Frequently Asked Questions
Why is the Elo system called “Elo”?
The system is named after its creator, Arpad Elo (1903-1992), a Hungarian-American physics professor and chess master. Elo developed the system to improve upon earlier rating methods that were more subjective.
What’s considered a “good” Elo rating?
This varies by game, but in chess:
- 1200-1400: Beginner
- 1400-1600: Intermediate
- 1600-1800: Advanced
- 1800-2000: Expert
- 2000+: Master level
- 2500+: Grandmaster level
How many games does it take to get an accurate Elo rating?
Statistical studies suggest:
- After 20 games: Rough estimate (±200 points)
- After 50 games: Reasonably accurate (±100 points)
- After 100+ games: Highly stable (±50 points)
Can Elo ratings predict match outcomes?
Yes, but with limitations. The expected score formula gives the probability of winning. For example:
- A 200-point advantage → ~76% win probability
- A 400-point advantage → ~92% win probability
- Equal ratings → 50% win probability
However, real matches have additional variables like psychological factors, preparation, and luck.
Why do some games use different rating systems?
Different systems address specific needs:
- Glicko — Better handles rating uncertainty and volatility
- Trueskill — Designed for team games and matchmaking
- Elo-MMR — Combines Elo with matchmaking ratings
- Bayesian systems — Incorporate prior beliefs about player skills
Conclusion
The Elo rating system remains one of the most elegant and widely-used methods for skill assessment in competitive games. Its simplicity—requiring only game results and no additional performance metrics—makes it accessible while its mathematical foundation ensures fairness and predictability.
Whether you’re a chess player tracking your progress, a game developer implementing matchmaking, or simply curious about rating systems, understanding Elo provides valuable insights into how competitive rankings work. The system’s enduring popularity across diverse domains speaks to its robustness and adaptability.
For those interested in exploring further, the American Mathematical Society publishes regular papers on rating system advancements, and many universities offer courses on statistical ranking methods.