What this calculator does
See how much one game changes two players' Elo ratings, and who the ratings expected to win. The Elo system rates players or teams by how their results compare with what their ratings predicted. Before a game, the rating gap gives each side an expected score between 0 and 1. Afterwards, each rating moves by the gap between the actual and expected result, times a fixed number called the K-factor.
It began in chess and is now used for many games and sports. Enter both ratings, the result and a K-factor, and the calculator shows the expected scores, how far each rating moves and both new ratings.
Where it's used
Why this math matters outside the classroom:
- Expected score. A player rated 200 points above an opponent has an expected score of 1 ÷ (1 + 10^(−0.5)), which is about 0.76.
- Rating changes. With K = 32, a win when the expected score was 0.76 adds 32 × 0.24, about 7.7 rating points.
- Chess clubs. Chess clubs update members' ratings after each tournament round from the results and a chosen K-factor.
- Game matchmaking. Online games use Elo-style ratings to pair players of similar strength so that matches stay competitive.
- Sports predictions. Sports fans build Elo models of whole leagues to estimate each team's chance of winning its upcoming games.
How to use it
- Enter player A's and player B's current ratings.
- Choose the result from player A's side: a win, a draw or a loss.
- Set the K-factor used by your rating system. 32 is a common starting point.
- Read both new ratings, the changes and the expected scores, with the working below.
What the inputs mean
- Result for player A
- A win scores 1, a draw 0.5 and a loss 0. Player B's score is always 1 minus player A's.
- K-factor
- The largest possible change from one game. Systems often use higher K for new or lower-rated players so their ratings settle quickly, and lower K for established ones so ratings are stable.
Formula and method
E_A = 1 ÷ (1 + 10^((R_B − R_A) ÷ 400)) E_B = 1 − E_A R′_A = R_A + K × (S_A − E_A) R′_B = R_B + K × (S_B − E_B)
In the formulas, R_A and R_B are the two players' current ratings, and R′_A and R′_B are their new ones. E_A and E_B are the expected scores, S_A and S_B are the actual scores, and K is the K-factor.
The expected score follows an S-shaped (logistic) curve on a 400-point scale. A player rated 400 points higher is expected to score ten times as much as the opponent, about 0.909 to 0.091.
Rating changes are K times the surprise in the result. Beating a much weaker player earns little; beating a much stronger one earns nearly K. With the same K for both players, one gains exactly what the other loses.
Worked example
Player A (1600) beats player B (1400) with K = 32.
- Expected score for A: 1 ÷ (1 + 10^((1400 − 1600) ÷ 400)) = 1 ÷ (1 + 10^−0.5) = 0.759747.
- Expected score for B: 1 − 0.759747 = 0.240253.
- A's change: 32 × (1 − 0.759747) = 7.688.
- New ratings: 1600 + 7.688 = 1607.688 for A and 1400 − 7.688 = 1392.312 for B.
Result: Player A rises to 1607.7 and player B falls to 1392.3. Had B won instead, B would have gained 24.3 points.
Understanding the result
An expected score is a long-run average, not a probability of winning outright, because draws count as half. An expected score of 0.76 means scoring about 76 points per 100 games.
Ratings only have meaning within one pool of players. A rating in one organization's system is not directly comparable with a rating in another.
Assumptions and limitations
- Both players use the same K-factor, and the standard 400-point scale applies.
- New ratings are shown to one decimal; many organizations round to whole numbers.
- Real systems often add rules this calculator does not: different K values per player, rating floors, provisional periods or home-advantage adjustments.
- It updates one game at a time. Some organizations total expected and actual scores across a whole event before applying a single update.
Frequently asked questions
What K-factor should I use?
Use whatever your league or club uses. In general, larger K values (32 to 40) suit new players or casual leagues where ratings need to move quickly, and smaller values (10 to 16) suit established, high-level players.
Why does a draw lower the higher-rated player's rating?
Because the higher-rated player was expected to score more than half a point. Scoring exactly 0.5 is below expectation, so the rating drops slightly and the lower-rated player's rises by the same amount.
Where does the 400 in the formula come from?
It sets the scale. With 400, a 200-point gap gives the stronger side about a 0.76 expected score and a 400-point gap about 0.91. Changing it would stretch or compress every rating without changing the order of players.
Do the two ratings always change by the same amount?
Yes, when both players use the same K-factor. The expected scores add to 1 and the actual scores add to 1, so one player's gain equals the other's loss.
How this calculator is checked
Method: Standard Elo expected-score (logistic, base 10, 400-point scale) and linear rating update R′ = R + K(S − E). The calculation is covered by automated tests with known reference values and edge cases. Last updated 2026-10-18. Found a problem? Tell us.
Embed this calculator
Put this Elo Rating Calculator on your own website or blog for free. Paste this code where you want it to appear: