Q2STATS BETA← Back to Overview
Q2STATS · RATING SYSTEM

How Elo Works

1v1 rating adjustment — October 30, 2026

We’ve increased the Glicko constant from q = ln(10) / 400 to q = 3.5 × ln(10) / 400. The aim is to make duel ratings more responsive to match results, particularly when established players have low RD and rating adjustments become small.

This factor operates within the Glicko calculation. It affects rating adjustments, the weighting of an opponent’s rating uncertainty, and how RD decreases after matches. It does not simply multiply rating changes by 3.5, and larger changes are not guaranteed in every situation.

Rating System Update - October 25, 2026

Q2Stats is updating its rating system today. The new model places greater emphasis on individual performance against opponents, while also rewarding each player’s share of team damage. Ratings and leaderboard positions may change as the match history is recalculated.

Q2Stats uses a modified Glicko-1 rating system. Team Games and 1v1 have separate ratings, both starting at 1500, with RD 100.

How Q2Stats works

From a match on a game server to the statistics and ratings shown on Q2Stats.

Quake II matchPlayed on a game server
Alternative collection methods
Q2Stats spectator botCollects statistics through a game client
Q2Stats server uploaderCollects and submits match statistics
Updated OpenTDMReports statistics directly from the server
Collection and Q2Stats APIImports and validates match data
Match databaseStores matches, player statistics and weapon statistics
Player profilesLinks recorded nicknames to player identities
Rating calculation depends on match type
Team matchIndividual performance and share of team damage
1v1 matchMatch win or loss
Glicko rating engineUses player ratings and RD to calculate rating changes
Ratings and rating historySaves updated ratings and match-by-match changes
Website APIProvides match statistics, ratings and demo links
Q2Stats.comMatch history · Player profiles · Rankings · Weapon statistics · Demos

Match data and demos

Match databaseRecorded player and weapon statistics
Website APIStatistics for the website
MVD2 demoAvailable on a supported game server
Demo linkingLinks the match to its demo file
Website APIMakes the demo link available

Administration and recalculation

Admin toolsReview matches and merge nicknames
Recalculate ratingsReplays match history with updated player identities
Rating engineUpdates ratings and rating history

1. What has changed?

The previous system started with the team’s result, then adjusted each player’s rating change using individual performance. Much of that assessment came from the player’s share of team frags and damage.

The new model focuses more on individual performance against opponents, while also rewarding each player’s share of team damage. Rankings can change because the systems place different emphasis on team results, individual contribution and opponent strength.

2. Individual performance

Your Team performance score is:

K = kills, D = deaths, DG = damage dealt, and DT = damage received. These are performance points, not rating points.

Active fighting matters

You can take more damage and still achieve a higher performance score. Productive fighting and offensive output can outweigh the damage you receive.

Every 100 damage dealt adds 7 points, while 100 damage received subtracts 4. Dealing and receiving an additional 100 damage therefore adds 3 performance points, before changes to kills and deaths.

For example, with equal kills and deaths:

The player producing more damage scores higher despite receiving more damage. Productive exchanges are rewarded; receiving damage alone does not earn points.

3. Team damage contribution

You receive a performance bonus based on your share of the team’s total damage:

For example, dealing 4000 of your team’s 10,000 damage gives:

A larger share gives a larger bonus, recognising players carrying more of their team’s damage output. If total team damage is zero, the bonus is zero.

4. Comparisons against opponents

Your final performance is compared with each opponent’s performance. Teammates are not compared against each other. Each comparison produces a result:

Similar positive scores, within approximately 5%, count as a draw. Outside that threshold, a narrow performance advantage counts the same as a large one.

5. Opponent strength and expected performance

Glicko compares your actual results with what your rating predicts. R is your rating, Rj is the opponent’s rating, and RDj is the opponent’s uncertainty.

The constant 400 defines the rating scale. At equal ratings, the expected result is 0.5. The factor gj reduces the influence of opponents whose ratings are uncertain.

Outperforming a stronger opponent generally means more than outperforming a weaker one. The model uses each opponent’s individual rating, rather than the opposing team’s average.

6. Calculating the rating adjustment

Glicko combines all opponent comparisons from the match:

The summation symbol Σ means that the values from all opponents are added together.

The underlying Glicko change is capped at −150 to +150, and rating has a floor of 900. Q2Stats applies its Team match-result adjustment before storing the final rating.

For example, if you and four opponents all have 1500 rating and RD 100, winning three performance comparisons and losing one produces an underlying Glicko gain of approximately 42.2 points.

7. Rating uncertainty - RD

RD stands for Rating Deviation. It measures uncertainty about your rating, not your skill. After the match:

Players start at RD 100. Higher RD generally allows larger rating changes. As results provide more information, RD generally decreases, down to 30.

There is no fixed boost lasting a particular number of matches. In the example above, RD falls from 100 to approximately 87.7.

8. 1v1

Duel uses the actual match outcome:

The same Glicko formulas then calculate the rating adjustment. Frag margin, individual damage and the team contribution bonus do not apply.

Team and 1v1 ratings develop independently.

Still under development

The model recognises recorded performance, but cannot directly measure every contribution, including positioning, weapon control and communication.

We will continue evaluating its results and refining the model through testing and community feedback.

Questions, feedback, or bugs?

Discuss the Elo system, report bugs, and share suggestions on our Q2Stats Discord ↗.