Method / The win chance
The win chance
A game's story opens with each side's chance to win, minute by minute, and the three moments that decided it. The curve comes from a model fitted on Riftline's own games every night and graded on games it had not seen. Here is what it reads, how well it does, and what it cannot see.
What the curve shows
At each minute of a game, the model looks at the state of the map and says how often, in the games Riftline holds, the blue side went on to win from a state like that. A curve at 50% is an even game; 80% at minute 25 means that, of stored games in a state like this one at minute 25, about four in five ended in a blue win. Red's chance is one minus blue's. When a page is about one player, the curve is drawn from their side.
It is a description of similar games, not a prophecy about this one. A team at 90% still loses one game in ten, and those games are the ones people remember.
How it is made
The model is a logistic regression on the game state, blue minus red: gold, kills, towers, inhibitors down, dragons, the dragon soul, the Elder and Baron buffs, Voidgrubs, the Rift Herald, Atakhan and champion levels. Every feature has one weight at minute 0 and another at minute 40, and the effect moves in a straight line between them. That is how a gold lead can matter differently at 8 minutes and at 35 without the model jumping at a boundary between game phases, which a set of phase models would do.
One rule is imposed on the fit: no feature may count against the side that holds it. Fitted freely, the model read a tower at 10 minutes as minus 2.9 points and a Baron buff at 20 as minus 4.1, because early towers and Barons correlate with things the model was already crediting through gold. Harmless to the curve, absurd as the effect of an event, and the moments below are built from those effects, so the constraint stays.
It is trained on 2.9k ranked solo games (78k game-minutes), refitted every night as the corpus grows, and shown on ranked solo and ranked flex games. It is not shown on ARAM or Arena, whose maps it has never seen.
How well it does
A model graded on the games it was fitted to would look better than it is. So it is graded on five folds, each held out in turn, split by game and never by minute, because the minutes of one game are near copies of each other and splitting them would let the model see the answer.
Held out, it called the winner 72.5% of the time across every minute of every game. Its Brier score, the average squared error of the probability it gave, is 0.176 against 0.250 for always guessing blue's overall win rate, so it removes 29.4% of that guess's error. Its calibration error is 0.6 points: when it says 70%, the side wins about 70% of the time, and the second table shows that at every level.
| Minutes | Right | Brier | Game-minutes |
|---|---|---|---|
| 0 to 10 | 62.2% | 0.225 | 26k |
| 10 to 20 | 75.4% | 0.165 | 28k |
| 20 to 30 | 80.8% | 0.133 | 20k |
| 30+ | 77.0% | 0.159 | 4.7k |
| Said | Happened | Game-minutes |
|---|---|---|
| 5% | 5% | 8.3k |
| 15% | 15% | 6.5k |
| 25% | 24% | 6.7k |
| 35% | 36% | 8.3k |
| 46% | 45% | 14k |
| 55% | 56% | 9.5k |
| 65% | 65% | 7.0k |
| 75% | 75% | 5.7k |
| 85% | 84% | 5.7k |
| 95% | 95% | 6.9k |
The first ten minutes are the hardest to call, and honestly so: little has happened, and the model says close to 50% because that is the truth of the state. From 20 minutes on, most games have turned, and the model is right most of the time because the board is.
Game pages show the curve only while it removes at least 10% of the error of always guessing blue's win rate and its calibration error stays under 5 points. Below that the curve is withheld, the way a thin sample is withheld everywhere else on the site.
What one more of each is worth
From an even game, in points of win chance. These are the model's own weights at three moments of the game, and they are why the moments above are measured on the curve rather than from this table: the gold that follows a Baron is worth far more than the buff.
| Lead | At 10 min | At 20 min | At 30 min |
|---|---|---|---|
| Gold (1,000 gold) | +9.6 | +6.5 | +3.2 |
| Kills (1 kill) | +0.2 | +0.1 | +0.1 |
| Towers (1 tower) | 0.0 | 0.0 | 0.0 |
| Inhibitors down (1 inhibitor) | Not seen | +7.2 | +10.6 |
| Dragons (1 dragon) | +7.6 | +6.7 | +5.8 |
| Dragon soul (the soul) | Not seen | 0.0 | 0.0 |
| Elder buff (the buff) | Not seen | Not seen | +19.0 |
| Baron buff (the buff) | Not seen | +1.1 | +1.7 |
| Voidgrubs (1 grub) | 0.0 | 0.0 | 0.0 |
| Rift Herald (1 Herald) | Not seen | 0.0 | 0.0 |
| Atakhan (Atakhan) | Not seen | Not seen | Not seen |
| Levels (1 level each) | +11.1 | +14.2 | +17.0 |
The moments that decided it
Events closer together than 15 seconds are one sequence: a fight, and the objective taken off it. A sequence is measured on the curve itself, from just before its first event to a minute after its last, and the three biggest swings are the moments a game page lists. Each is described from its events: “Red won a fight 4 for 1 and took Baron, minus 35.8”.
Measuring on the curve rather than adding up each event's own effect was a correction. The model credits a Baron mostly through the gold and towers that follow it, so a Baron buff alone is worth a point or three, and the sum of a fight's events made the fights that decided games look small. A minute of curve after the fight contains what the fight bought.
What it cannot see
Items, champions, who is dead and for how long, where anyone stands, summoner spells and respawn timers. A 4-for-0 fight with Baron up reads the same as one with Baron down. A team that is behind on the board but ahead in scaling reads as behind. It also reads only what the timeline records once a minute, so a lead that appeared and vanished inside a minute is never seen. These are the reasons a moment on the curve should be read as “this is when the numbers turned” rather than “this is why”.
A game's timeline is fetched when someone first opens its story, one Riot call, once. It never takes the last calls the key keeps for player searches, so on a busy key the section says so and offers to try again.