VLR.gg is introducing a new rating system for players, and here is what you need to know.

This rating system takes into account kills, deaths, damage, assists, and surviving. Each of these stats is heavily manipulated in an algorithm to produce a single rating that approximates how impactful a player was.

An advantage of this particular rating system is the fidelity of data that can be analyzed. Instead of relying on cumulative end-of-round statistics, many portions of this rating use information on a round-by-round or event-by-event basis. Assists per round (APR) and adjusted average damage per round (ADRa) are still calculated from the cumulative map statistics, but everything else is calculated based on the situation inside each round.

The core idea behind this algorithm is that not all kills are created equal. Every fight is assigned a weight based on the situation in the round (how many people on each team are alive, if the kill was traded, the economic situation etc). That weight is added to the killer's kill contribution and subtracted from the victim's death contribution. Getting a kill in a 5v1 is weighted less than getting a kill in a 5v5.


Player rating is a linear combination of five components:

C1KillContribution + C2DeathContribution + C3APR + C4ADRa + C5SurvivalRating

The Pieces

  • Kill Contribution, Death Contribution
    The meat and potatoes of the ranking system is the contribution of kills and deaths. A formula determines the weight of each fight based on how many players are alive on each team (a rough approximation of the importance of each fight). Several modifiers also adjust the weight (economy differential, if the fight was traded, etc). The final weight is then added to the killer's kill contribution and the victim's death contribution for the round (death contribution is made negative). Fights where the player differential is even (5v5s, 1v1s, etc.) are worth the most. Winning those fights contributes positively to the rating a lot and losing them contributes negatively to the rating a lot. If there is a large player differential (5v1, etc.) then the fight isn't worth as much to either the killer's rating or the victim's rating since it has comparatively less impact on the round. The contribution of deaths is the same as the contribution from kills, but subtractive. The core concept is: fights that have the highest impact on the round are weighted the most. If a fight isn't important, it doesn't affect the rating as much for either player involved. Instead of relying on just first kills, first deaths, and 1vX clutches that can be seen in the end-of-map stats, this formula incorporates information for fights throughout the entire round.

    • Adjusted Trading Modifier
      There are several modifiers attached to this rating that adjust the weight of each fight based on several factors. The first is trading. If a player gets a kill but is immediately traded out by an opponent, that kill isn't worth as much. On the flip side, if a player dies but is immediately traded by a teammate, that death isn't as bad. If a fight is traded, that fight is worth less (good or bad) for the players involved. In general terms, if a player gets a kill and is then killed in return within a short time frame, their first kill is considered traded. The goal of the trading modifier is to reduce the impact of kills/deaths if they are traded; however, it is very common for trades to happen in situations like a crucial site execute where the trade was essential for success. To this end, we've made some modifications to the trading criteria. A fight is only counted as traded if the killer dies within three seconds, and that kill did not improve the killer's teams' player advantage situation. It is easiest to explain it with examples. If a player gets a kill in a 5v5, is then killed within three seconds, but at the end of those three seconds, his team has more players than the opponent, it isn't counted as a trade. If the exact same situation happens but the player count is still tied or against his team, it is a trade. On the flip side, if a player dies, but his killer is traded within three seconds, and the enemy team hasn't improved their player differential within three seconds, the fight is counted as traded and that death doesn't count as heavily against him.
    • Economic Modifier
      The second modifier is an economic modifier. Getting a bunch of kills against an eco rush is not as impactful as getting kills against a full buy. At the start of each round, the cumulative economic investment of each team is counted, and the eco modifier for the round is calculated based on the difference between the investment of each team. If both teams have the same level of investment (pistol vs. pistol, full buy vs. full buy, etc.) then the eco modifier doesn't affect the weight of each fight. If a player on a team with a superior buy gets a kill, it benefits their rating less and hurts the victim's rating less. If the player with a weaker buy gets the kill, it benefits their rating more and hurts the victim's rating more.
    • Post-round Modifier
      A third modifier is the after-time modifier. If a kill happens after the round ends, it no longer has any impact on the outcome of the current round. It only affects the economy of future rounds. All fights after the round ends have their contribution lessened. After each fight, the kill/death contribution is calculated based on all these modifiers.
  • APR
    Assists are straightforward in the formula. APR is its own statistic that is thrown into the algorithm.

  • Adjusted ADR (ADRa)

    • The problem with ADR
      There is a problem with throwing plain ADR into a formula. It is almost entirely driven by kills per round (KPR). In fact, roughly 80% of all damage can be explained by KPR. The simplest approach for rating systems is to throw as much information as possible into the rating. However, if there is any overlap between stats, that impact will be counted twice (or more). The “value” of damage is already included in the “value” of kills. If ADR is thrown into the formula, it is basically just counting KPR twice. The new information that can actually make informed changes to a player's rating is the damage that isn't already a part of the kills. Other than kills, damage is important for weakening opponents, but that makes up only about 20% of ADR.
    • The solution: ADRa
      Instead of pure ADR, adjusted damage per round (ADRa) is calculated as total damage minus damage per kill and divided by the number of rounds. Exact damage numbers for every fight are not available in the match data, so an approximation is used for the average damage per kill (per round). Damage per kill can vary based on how much health a player started with (100, 125, or 150), and there is over-damage (two body shots then a headshot with a Vandal is 240 damage), and under-damage (if the victim was already low health). Reducing this complexity into a single average damage per kill number isn't perfect, but it removes the majority of damage that is already incorporated in KPR. Bottom line: ADRa provides better information about how a player impacted the game with strictly damage. If a player gets a lot of kills by finishing off weak opponents, their ADRa will be very low. If a player gets a ton of excess damage, e.g. from damaging utility that doesn't kill, they will have a very high ADRa. With plain ADR, those differences would only change the number by a small percentage.
  • Survival Rating
    The survival rating is fairly simple. The algorithm checks whether each player actually survived a round and outputs a survival contribution. Instead of a straight survival percentage, the survival rating depends on the combined value of each teams' loadout. If there aren't any worthwhile guns to save on either side, the survival contribution is minimal. If there are expensive guns in play, saving is worth something.

Combining components into a rating

The kill contribution and death contribution are weighted more heavily than APR, ADRa, and Survival Rating when combined to create a single rating, but they all play a significant role. The bell curve distribution of player ratings was also adjusted to be centered on a mean of 1.0 with statistical deviations about the same as other popular rating systems like HLTV's 2.0 rating for CS:GO. That should make it relatively easy for FPS fans to get a rough judgment on whether a rating is “good” since it is a familiar quantity.

This is just the first iteration of the rating system, and future changes may be made. Keep in mind that distilling a player's value down into a single number is no substitute for a detailed statistical analysis, and that a rating is supposed to be a bridge between intuition and complicated statistics.