How this instrument works
The Elo system, devised by physics professor and chess master Arpad Elo, converts a rating difference into an expected score using a logistic curve: E_A = 1 / (1 + 10^((R_B − R_A)/400)). A 200-point rating gap corresponds to an expected score of roughly 0.76 for the stronger player — about a 76% chance of winning a decisive game — and equally rated players are always expected to split the result evenly, at 0.5 each.
After the result is known, the rating update is simple: new rating = old rating + K × (actual score − expected score), where actual score is 1 for a win, 0.5 for a draw, and 0 for a loss. A player who performs exactly as expected sees no rating change at all; a player who beats expectations gains points, one who underperforms loses them, and the size of that swing is entirely controlled by K.
K, the K-factor, sets how volatile a rating is. A larger K (32, historically the USCF's value for players below 2100) makes ratings react fast to recent results, which suits newer players whose true strength is still uncertain. A smaller K (FIDE currently uses 10 for established players above 2400) makes ratings more stable once someone's strength is well established, so a single unusual result doesn't swing an experienced player's rating dramatically.
- Enter Player A's current rating and Player B's current rating.
- Enter Player A's result — 1 for a win, 0.5 for a draw, 0 for a loss.
- Enter K-factor — how much a single result should move the rating; 32 is a common default for less-established players.
- Read Player A's expected score and Player A's new rating beneath the inputs.
- K-factor must be greater than zero, or the rating update has no effect by definition.
Worked example — two 1500-rated players, A wins
Enter 1500 for both Player A's and Player B's current rating, 1 for Player A's result (a win), and 32 for K-factor. Since the ratings are equal, the expected score is exactly E_A = 1 / (1 + 10^0) = 0.500000 — an evenly matched game, as expected.
Player A's new rating = 1500 + 32 × (1 − 0.5) = 1500 + 16 = 1516.00. Winning a game you were expected to split 50/50 earns exactly half of the full K-factor swing — beating a stronger opponent, or by a draw against a weaker one held to their expected score, would move the rating by a different amount entirely.
Questions
What does the K-factor actually control?
K sets the maximum size of a single rating change — specifically, K is the number of points a player gains for a full, fully-unexpected win (or loses for a full, fully-unexpected loss). A larger K means ratings swing more per result and adapt faster to recent form; a smaller K means ratings move more gradually and stay more stable over a run of results.
Why does the formula use 400 as the scaling constant?
The 400-point scale was chosen so that a 200-point rating gap corresponds to roughly a 76% expected win rate for the stronger player, and a 400-point gap corresponds to roughly 91% — figures that matched observed results in chess when Arpad Elo designed the system. It's a calibration constant baked into the formula, not something the instrument's user needs to adjust.
What K-factor should I use?
It depends on how established the players are. A K of 32 (the classic USCF value for players rated below 2100) is a common default for newer or less-established competitors, since their true strength is still uncertain and ratings should adapt quickly. Established, high-level competitors often use a lower K — FIDE currently sets K as low as 10 once a player's rating has reached 2400 — so a single result doesn't overreact.
Does the rating stay the same if a player draws when they were the favorite?
No — it drops. A draw always counts as a score of 0.5, so if the expected score was above 0.5 (the favorite was expected to win more often than not), the actual result of 0.5 falls short of that expectation, and the rating decreases by K × (0.5 − expected score). Only a draw between exactly equally-rated players, where the expected score is itself 0.5, leaves the rating unchanged.
Can Elo be used for games other than chess?
Yes — the underlying formula makes no assumption specific to chess, only that a match produces a win/draw/loss (or win/loss) result between two rated competitors. The same logistic-curve system, sometimes with format-specific tweaks, underlies rating systems in esports, table tennis, and various team-sport power rankings well beyond the chess world it was originally built for.