induwara.lk
induwara.lkAI · Model evaluation

AI Model Elo Rating Calculator

Turn two Elo ratings into win probabilities, update ratings after a game with any K-factor, or convert a head-to-head win rate into an Elo gap the way LLM leaderboards (LMSYS Chatbot Arena), chess, and esports do. Every formula is shown, runs in your browser, no signup.

By Induwara AshinsanaUpdated Jul 8, 2026
Elo rating calculatorarena & chess
Elo (1978) · Bradley–Terry

Player / model A's current Elo.

Player / model B's current Elo.

Presets
A win probability (E_A)
64.01%
B win probability (E_B)
35.99%
Rating gap (A − B)
+100
A is favoured

Formula substituted

E_A = 1 / (1 + 10^((1,4001,500) / 400)) = 64.01%

Gap → win probability

Rating gapFavourite win probability
0 (even)50%
50 Elo57.15%
100 Elo64.01%
200 Elo75.97%
400 Elo90.91%

All arithmetic runs in your browser — nothing is uploaded. The expected score is computed two independent ways and cross-checked; the win-rate gap round-trips back to the input probability.

How it works

Elo is a paired-comparison rating system: it assigns every player or model a single number so that the gap between two ratings predicts the probability that one beats the other. It was designed by physicist Arpad Elo for chess in the 1960s and formalised in his 1978 book; the same math now ranks AI models on human-preference leaderboards such as LMSYS Chatbot Arena, which fit a Bradley–Terry / Elo model to millions of blind pairwise votes. This tool implements the three operations you actually need, each a deterministic closed-form calculation.

  1. Expected score (win probability). For A against B, E_A = 1 / (1 + 10^((R_B − R_A) / 400)), and E_B = 1 − E_A. The constant 400 is the Elo scale: a 400-point gap means 10-to-1 odds (≈90.9%). E_A is a probability between 0 and 1, so a draw counts as half a point of “expected score.”
  2. Rating update. After a game with actual score S_A (1 for a win, 0.5 for a draw, 0 for a loss), R'_A = R_A + K·(S_A − E_A) and the mirror for B. The K-factor sets how fast ratings move. Because E_A + E_B = 1 and S_A + S_B = 1, the update is exactly zero-sum — A gains precisely what B loses — which the tool verifies on every result.
  3. Win-rate → Elo gap (Bradley–Terry inversion). Given an empirical decisive win rate p = wins / total (draws excluded), invert the logistic to recover the gap Δ = R_A − R_B: Δ = −400·log10(1/p − 1). This is the estimate a leaderboard reverse-engineers from observed battles. It needs 0 < p < 1; a 0% or 100% record implies an infinite gap, so the tool clamps those cases and asks for more games.

All logarithms are base-10 and all arithmetic is IEEE-754 double precision, computed client-side. To guard against coding slips the calculator computes the expected score two algebraically-independent ways (from the two ratings and from their gap) and confirms they agree, and it round-trips every win-rate gap back through the expected-score formula to check it reproduces the input probability. The formulas and their citations are pinned in the lib/data/ai-elo-rating-calculator.ts module header with a 2026-07-08 verification date.

Worked examples

Example 1 — Expected score (100-Elo gap ⇒ 64%)

  1. Ratings: R_A = 1500, R_B = 1400 (A is 100 Elo higher)
  2. E_A = 1 / (1 + 10^((1400 − 1500) / 400))
  3. = 1 / (1 + 10^(−0.25)) = 1 / (1 + 0.56234)
  4. = 1 / 1.56234 = 0.6401 → 64.0%
  5. E_B = 1 − 0.6401 = 0.3599 → 36.0%

Example 2 — Rating update (K = 32, A wins)

  1. Same ratings, K = 32, result A wins → S_A = 1, E_A = 0.6401
  2. R'_A = 1500 + 32·(1 − 0.6401) = 1500 + 11.518 = 1511.5 → 1512
  3. R'_B = 1400 + 32·(0 − 0.3599) = 1400 − 11.518 = 1388.5 → 1388
  4. A gains +11.52, B loses −11.52 → zero-sum ✓

Example 3 — Win-rate → gap (240 of 400 battles)

  1. Model A beats B in 240 of 400 decisive battles → p = 0.60
  2. Δ = −400·log10(1/0.60 − 1) = −400·log10(0.66667)
  3. = −400·(−0.17609) = +70.4 Elo (A ahead)
  4. Round-trip: E_A(70.4) = 1/(1 + 10^(−0.176)) = 0.600 ✓
  5. The gap reproduces the input 60% win rate exactly.

Frequently asked questions

Sources & references

The math on this page follows the Elo (1978) logistic formula & Bradley–Terry (1952); the formulas were last cross-checked against these sources on 2026-07-08. All three worked examples above (64.0% / 36.0%; 1512 / 1388 zero-sum; +70.4 Elo round-tripping to 60.0%) are reproduced exactly by the calculator.

Related tools

Rate this tool
Be the first to rate

Comments & feedback

Spotted a bug or want an improvement? Tell us — our team reviews every comment, and good ideas get built. Comments are public and anonymous.

Found a bug, edge case, or want to suggest an improvement?

Email me at [email protected] — most fixes ship within 24 hours.