Vibe ChessVibe ChessApp

The Elo rating: how it actually works

Alexey Mudry · updated August 27, 2026
A rating is not a measure of how much you have played or won. It is a prediction, and everything about the system follows from that one idea. Here is the arithmetic in plain terms, including why a beginner's number jumps around and why you have three different ratings.

The core idea: a rating is a prediction

Take two players with known ratings. The system does not ask who is better - it produces a number: the share of points the higher-rated player is expected to score in a long match.

A game is then compared with that prediction. If the result matches it, ratings barely move. If it contradicts it, the ratings move sharply. That is the whole mechanism, and everything else is detail.

Why beating a weaker player earns almost nothing

Because the system already predicted it. You confirmed what was expected, so there is nothing to correct. And a loss to that same player costs a great deal - the prediction was badly wrong.

The expected score

The expectation depends only on the rating difference, not on the absolute numbers: 1200 against 1000 and 2400 against 2200 give the same prediction.

Rating differenceExpected score of the favourite
050% - a coin toss
100about 64%
200about 76%
400about 91%
800about 99%

Two hundred points is the interval worth remembering: it means roughly three points out of four for the stronger player - noticeable but far from certain. Which is why upsets at that gap are routine rather than remarkable.

How the change is calculated

One formula, and it is simpler than its reputation:

change = K × (actual score − expected score)

The actual score is 1 for a win, 0.5 for a draw and 0 for a loss. The expected score comes from the table above. K is a coefficient described in the next section.

An example: you are rated 1600 and beat somebody rated 1800. The expectation for you was about 0.24, you scored 1, and the difference is 0.76. With K = 20 that is roughly +15 points - and the same 15 come off your opponent, because the system is zero-sum.

Which leads to a useful conclusion: a draw with a much stronger player gains you rating. The expectation was a loss, and half a point beats it.

The K factor: why beginners' ratings jump

K decides how strongly one game moves the number. It is not the same for everyone, and deliberately so: a new player's rating is a guess that needs correcting quickly, while an established player's is based on hundreds of games and should be stable.

  • New players get a high K. The rating settles towards reality within a few events instead of crawling there over years.
  • Established players get a lower one. A single bad tournament should not undo a decade.
  • Top players get the lowest. At that level the numbers are already precise and heavily sampled.
  • Younger players are often given a higher K, because their real strength genuinely changes faster than the rating can follow.

So a beginner swinging fifty points in one event and a master moving three are not inconsistencies - they are the same formula with different K.

Getting a first rating

You cannot compute a rating from nothing: the formula needs both players to have one. So the first is obtained differently.

  • Play rated players. A first rating is earned in events counted by the rating body, against opponents who already have one.
  • A minimum number of games is required. A handful of results is not enough to place somebody on a scale; the exact threshold depends on the rating body.
  • There is usually a floor. Ratings are not published below a certain level, so an absolute beginner starts at the floor rather than at zero.
  • The first number is unstable by design. With a high K it will move a lot before it means anything - that is the system working, not failing.

Practically: to get onto a national or international list you need events that report to it. A club evening does not produce an official rating, however well it is run - what club events do produce.

Three ratings, not one

Classical, rapid and blitz are rated separately, and the numbers routinely differ by a couple of hundred points for the same person.

  • They measure different skills. Calculation over half an hour and pattern recognition in three seconds are not the same ability.
  • They do not convert. There is no formula translating a blitz rating into a classical one, and anyone offering you one is guessing.
  • Titles are based on classical. Which is why blitz ratings, however high, do not earn norms - about titles.
  • Online platforms add more scales. A platform rating is a fourth kind of number and is not comparable with any of these - why online ratings differ.

Rating, titles and club events

Three things get confused constantly, and separating them clears up most questions.

Rating
A number that moves after every rated game. It goes down as easily as up, and it describes your current strength
A title
Earned once and held for life. It reflects results achieved at a particular time and is never taken away when the rating falls
Club standings
Internal to one club. Useful, motivating and entirely unrelated to any official list

For an amateur club the practical answer is usually an internal rating: it gives players visible progress without anybody having to register events with a federation - and visible progress is what keeps people coming back - about retention.

Progress you can see

A club rating shows players they are improving without anybody registering events with a federation - and it is calculated automatically in the Vibe Chess app.

Frequently asked questions about ratings

How is the Elo rating calculated?

By the formula Rnew = Rold + K × (S − E), where S is the points actually scored, E is the expected result given the rating difference and K is the development coefficient. The expected result is calculated as E = 1 / (1 + 10^((Ropponent − Rplayer) / 400)).

Why do you gain so few points for beating a weaker opponent?

Because the rating responds not to the win but to the deviation from expectation. If the system predicted 90% of the points for you and you won, the result matched the forecast - so the gain is minimal. A draw with a stronger opponent, on the other hand, produces a noticeable rise.

What is the K coefficient?

The multiplier that sets how fast the rating changes. Under the FIDE regulations: 40 for new players up to 30 games and for juniors under 18 rated below 2300, 20 for players below 2400, and 10 for those who have reached 2400.

How many games do you need to get a FIDE rating?

At least five games against rated opponents; they may be played in different tournaments. A first published rating cannot be below 1400. A Russian federation rating is easier to get: with no rating at all, a starting value of 1000 is used.

How do the classical, rapid and blitz ratings differ?

They are three independent lists, and a tournament goes into the one matching its time control. One player's figures usually differ: a blitz rating is often higher or lower than the classical one depending on playing style.

How often is the rating updated?

The FIDE lists are published monthly, on the first of the month. A tournament has to be submitted for rating before the period closes, or the results go into the next list.

Can you lose your rating?

The rating falls with poor results. If it drops below 1400, the player is shown in the list as unrated and gets a rating again after new games. Rating categories, unlike the rating itself, are not taken away.

A tournament without a paper crosstable

Everything people usually keep in a spreadsheet is already in the app: pairings, points, tie-breaks, round order. Free, with no subscriptions and no cap on the number of players.

Swiss

many players, one evening: four or five rounds are enough

Round robin

the fairest format for six to ten players

Free meetup

not a tournament, just an evening of chess - who is free and who is playing is visible in the app

How the tournament runs
  1. 1Set up the event: date, venue, time control
  2. 2Send the link - players register themselves
  3. 3Pair each round with one tap and enter the results
  4. 4Standings and the TRF export are produced automatically

More than a bot: the app, FIDE rules and a TRF report

  • The app. Besides the bot there is an app - inside Telegram and simply at playvibechess.com/app: what is on in your city, the player list, a live table, the current round, your profile and game history - everything that is awkward to read as chat messages.
  • Pairings by FIDE rules. Pairings are computed by bbpPairings, an open-source engine implementing the Dutch system: score groups, floats on an odd field, colour alternation, no rematches, and no player gets a bye twice.
  • A TRF report. A finished tournament exports as a single file in the FIDE data exchange format - the one arbiter software and federations accept. Your profile stores the FIDE ID, national federation code, title, sex and date of birth for it.
  • Free. All of the above, with no subscriptions, paid plans or limits on the number of tournaments and players.

Full overview

Missing a feature? Message the developers

The bot is constantly improved based on real tournaments. If you need a feature that isn't there yet, message the developers right inside the bot with the /support command. Many features appeared exactly because organizers asked for them, and useful ideas get added quickly.

What to read next

Reference - FIDE titles, tie-breaks, glossary, online ratings.

Alexey Mudry
Alexey Mudry · hosted 25 events for Vibe Chess · 117 reviews · rating 5.0

At the board since childhood: hazy about his rating, precise about every rook he has blundered. Counts an evening as a good one if the opponent stayed to talk afterwards instead of rushing off to check with an engine. Message →