I've been experimenting with a different way to evaluate pro CS performance — Contrib
On this page
Swipe tables sideways to see all columns.
Winning is obviously the ultimate goal in pro CS, and good individual performances surely tend to help teams win. But a win or a loss tells us very little about how much each player actually contributed to it.
To address that, we have ratings.
Rating 3.0 is already a strong summary of individual performance, so I wanted to ask a further question:
How much does a player’s recorded performance contribute to winning a map?
That question led me to build Contrib: a signed, additive score learned directly from historical map outcomes.
A different question
Unlike a traditional rating system, Contrib is not designed simply to summarize how statistically impressive a player was in isolation.
Instead, it asks:
How do a player’s recorded statistics relate to team success, and how does that contribution differ between teammates?
Rather than assigning weights to individual statistics manually, the Contrib model learns those relationships from historical map outcomes.
How to read Contrib
Contrib is centered around zero, which represents a neutral reference point.
Positive values indicate performance that the model associates with contributing more toward winning the map. Negative values indicate the opposite.
For readability, I scale the score so that roughly 90% of performances in the reference sample fall between -1.00 and +1.00.

Contrib is centered on zero. Roughly 90% of reference performances fall between -1.00 and +1.00, but these are not hard limits; scores can extend beyond that range.
| Contrib Value | Meaning |
|---|---|
| +1.00 | Great performance contributing to a win |
| +0.50 | Meaningfully positive contribution |
| 0.00 | Around neutral |
| -0.50 | Meaningfully negative contribution |
| -1.00 | Very poor map performance |
The scale is intentionally symmetric around zero, but the underlying distribution does not have to be.
In other words, +1.00 is not automatically the 90th percentile, and -1.00 is not automatically the 10th percentile.
The scaling only changes the unit. It preserves zero, player ordering, additive totals, and round-weighted averages without recentering or clipping the scores.
What Contrib does not mean
One important caveat:
Contrib is not a win-probability score.
A value of +0.80 does not mean that a player added “80% win probability”.
It represents contribution magnitude within the reference pool used to define the scale.
An example: the Astana 2026 Grand Final
Here is one example from Spirit’s Astana 2026 final.
Different maps produced different Contrib leaders. Overall Contrib for the series is weighted by rounds played.
| Player | Dust2 | Mirage | Ancient | BO5 Total |
|---|---|---|---|---|
| Map score | 16-12 | 13-7 | 13-10 | 3:0 |
| donk | +0.45 | +0.68 | +1.12 | +0.73 |
| tN1R | +0.21 | +1.03 | -0.14 | +0.33 |
| sh1ro | -0.41 | +0.67 | +0.42 | +0.16 |
| magixx | -0.17 | +0.85 | -0.33 | +0.07 |
| zont1x | -0.04 | -0.64 | -0.03 | -0.21 |
One comparison I found interesting is sh1ro vs. magixx across the series.
sh1ro finishes at +0.16, while magixx finishes at +0.07, despite sh1ro having the lower ADR: 63 vs. 80.
In the model’s view, sh1ro’s advantage in kills, K-D differential, and multikills contributes more to his overall Contrib score.
From maps to events
What interests me most is applying the same interpretation consistently across S-Tier Counter-Strike events.
Not only looking at individual maps, but also following how players accumulate contribution over:
maps → series → events → years
That is also the basis of the ranking system I am building around Contrib.
A different lens, not a replacement
I don’t see Contrib as a replacement for Rating 3.0 or any other existing metric.
It is simply a different lens.
Instead of asking:
“How strong was this individual performance?”
I am asking:
“How did this recorded performance relate to winning?”
My CS Events
To make this usable beyond one-off analyses, I have integrated Contrib into My CS Events, an iOS app I built for following ongoing top-tier CS tournaments.
The app updates Contrib results, player rankings, and related analysis as events progress.
For those mainly interested in current S-Tier events, I plan to publish updated evaluations after events are completed. Core event-level Contrib results can also be viewed directly in the app.
Some broader features — including full-year player rankings and trend tracking — are part of a $1.99/month subscription.
More than anything, I’m interested in feedback on the metric itself, especially cases where you think Contrib is rewarding or penalizing the wrong thing.