Rank the evidence, not one magic number.
Move between headline scoring, five-on-five creation, special teams and deployment. Every row keeps the surrounding evidence visible, so a leaderboard can start an argument without pretending to finish it.
- Qualified skaters
- Minimum games
- Ranking lenses
- 39
eligible rows for Drive, three seasons (ranking measure): chance share vs own club without him
Scoring splits read ES / PP / SH / EN. 5v5 creation reads goals / primary / secondary assists. Player names link to the dossier where one exists.
| Player | Team | Drive, three seasons (ranking measure): chance share vs own club without him | 80% band (three-season Drive) | P | Details |
|---|---|---|---|---|---|
| #1Adam Fox rank: 80% rank range 1 to 8 of 603 Adam Fox | NYR | ||||
| #2Mattias Ekholm rank: 80% rank range 1 to 10 of 603 Mattias Ekholm | EDM | ||||
| #3Connor McDavid rank: 80% rank range 2 to 12 of 603 Connor McDavid | EDM | ||||
| #4Evan Bouchard rank: 80% rank range 2 to 14 of 603 Evan Bouchard | EDM | ||||
| #5Brandon Hagel rank: 80% rank range 3 to 20 of 603 Brandon Hagel | TBL | ||||
| #6Jordan Kyrou rank: 80% rank range 3 to 22 of 603 Jordan Kyrou | STL | ||||
| #7Zach Hyman rank: 80% rank range 4 to 32 of 603 Zach Hyman | EDM | ||||
| #8Lane Hutson rank: 80% rank range 4 to 36 of 603 Lane Hutson | MTL | ||||
| #9Arseny Gritsyuk rank: 80% rank range 2 to 81 of 603 Arseny Gritsyuk | NJD | ||||
| #10Brady Tkachuk rank: 80% rank range 5 to 40 of 603 Brady Tkachuk | OTT | ||||
| #11Luke Evangelista rank: 80% rank range 6 to 51 of 603 Luke Evangelista | NSH | ||||
| #12Zach Werenski rank: 80% rank range 9 to 44 of 603 Zach Werenski | CBJ | ||||
| #13Linus Karlsson rank: 80% rank range 4 to 98 of 603 Linus Karlsson | VAN | ||||
| #14Robert Thomas rank: 80% rank range 10 to 65 of 603 Robert Thomas | STL | ||||
| #15Mathew Barzal rank: 80% rank range 10 to 72 of 603 Mathew Barzal | NYI | ||||
| #16Mark Jankowski rank: 80% rank range 6 to 86 of 603 Mark Jankowski | CAR | ||||
| #17Nathan MacKinnon rank: 80% rank range 11 to 59 of 603 Nathan MacKinnon | COL | ||||
| #18Anthony Cirelli rank: 80% rank range 11 to 60 of 603 Anthony Cirelli | TBL | ||||
| #19Quinn Hughes rank: 80% rank range 10 to 72 of 603 Quinn Hughes | VAN,MIN | ||||
| #20Hunter Brzustewicz rank: 80% rank range 4 to 192 of 603 Hunter Brzustewicz | CGY | ||||
| #21Jesper Bratt rank: 80% rank range 14 to 70 of 603 Jesper Bratt | NJD | ||||
| #22Nikita Kucherov rank: 80% rank range 14 to 83 of 603 Nikita Kucherov | TBL | ||||
| #23Rasmus Dahlin rank: 80% rank range 14 to 76 of 603 Rasmus Dahlin | BUF | ||||
| #24Moritz Seider rank: 80% rank range 13 to 85 of 603 Moritz Seider | DET | ||||
| #25Jordan Spence rank: 80% rank range 12 to 80 of 603 Jordan Spence | OTT | ||||
| #26Denver Barkey rank: 80% rank range 3 to 274 of 603 Denver Barkey | PHI | ||||
| #27Leon Draisaitl rank: 80% rank range 15 to 79 of 603 Leon Draisaitl | EDM | ||||
| #28Jason Robertson rank: 80% rank range 15 to 100 of 603 Jason Robertson | DAL | ||||
| #29Artemi Panarin rank: 80% rank range 16 to 83 of 603 Artemi Panarin | NYR,LAK | ||||
| #30Josh Doan rank: 80% rank range 13 to 130 of 603 Josh Doan | BUF | ||||
| #31Ben Meyers rank: 80% rank range 5 to 280 of 603 Ben Meyers | SEA | ||||
| #32Barrett Hayton rank: 80% rank range 17 to 107 of 603 Barrett Hayton | UTA | ||||
| #33Jack Hughes rank: 80% rank range 19 to 101 of 603 Jack Hughes | NJD | ||||
| #34Kirill Kaprizov rank: 80% rank range 19 to 111 of 603 Kirill Kaprizov | MIN | ||||
| #35Alexis Lafrenière rank: 80% rank range 18 to 117 of 603 Alexis Lafrenière | NYR | ||||
| #36Adam Pelech rank: 80% rank range 18 to 107 of 603 Adam Pelech | NYI | ||||
| #37Macklin Celebrini rank: 80% rank range 18 to 125 of 603 Macklin Celebrini | SJS | ||||
| #38Kailer Yamamoto rank: 80% rank range 10 to 148 of 603 Kailer Yamamoto | UTA | ||||
| #39Nick Suzuki rank: 80% rank range 23 to 124 of 603 Nick Suzuki | MTL | ||||
| #40Nico Hischier rank: 80% rank range 23 to 126 of 603 Nico Hischier | NJD | ||||
| #41Josh Morrissey rank: 80% rank range 25 to 124 of 603 Josh Morrissey | WPG | ||||
| #42Thomas Novak rank: 80% rank range 17 to 147 of 603 Thomas Novak | PIT | ||||
| #43Mitch Marner rank: 80% rank range 23 to 132 of 603 Mitch Marner | VGK | ||||
| #44William Eklund rank: 80% rank range 23 to 129 of 603 William Eklund | SJS | ||||
| #45Zach Benson rank: 80% rank range 22 to 135 of 603 Zach Benson | BUF | ||||
| #46Anders Lee rank: 80% rank range 23 to 111 of 603 Anders Lee | NYI | ||||
| #47Damon Severson rank: 80% rank range 22 to 144 of 603 Damon Severson | CBJ | ||||
| #48Oliver Moore rank: 80% rank range 9 to 292 of 603 Oliver Moore | CHI | ||||
| #49Miro Heiskanen rank: 80% rank range 27 to 136 of 603 Miro Heiskanen | DAL | ||||
| #50Blake Coleman rank: 80% rank range 24 to 133 of 603 Blake Coleman | CGY |
Method · caporcup-league-production-v1 · 39 questions, 39 orders
Drive, three seasons is the default order: his 5v5 chance share against his own club without him, pooled over this season and the two before (weights 1 / 0.7 / 0.4). It was pre-registered against one season of Drive and tested on a season never used to choose it (2024-25 predicting 2025-26): correlation with next season 0.48 against 0.39, with split-half reliability 0.56 against 0.40 and an 80% band about 40% narrower relative to the spread of players. Club strength leaks in at r 0.08 (limit 0.10). The single-season value stays beside it, labelled. The test and every outcome are in the model register (drive-multiseason-d1-v1).
Total points records output; even-strength, power-play, short-handed and empty-net splits show where it appeared.
Direct five-on-five contributions add goals and primary assists; secondary assists stay visible rather than erased.
Context fields show deployment, zone starts, on-ice shooting and shot-attempt share. They describe environment and are not credited as individual value.
Still missing: contract cost outside Ottawa, shot quality, competition, teammates, defence, injury, coaching, playoff translation and reviewed video.
Goalies · 2025–26
Goals saved above expected credits each goalie for the difficulty of the shots actually faced (distance, angle, shot type, rebounds, rushes, strength), from CapOrCup's shot model trained on 2023-24 and 2024-25 and tested on unseen 2025-26 games (AUC ). It is fairer than save percentage, which rewards goalies behind teams that allow easier shots.
Goals saved above average = goals a league-average goalie would have allowed on the same shots (shots faced × , from the league save percentage of ) − goals actually allowed. It rewards both quality and workload, which save percentage alone does not. Qualified: 20+ games.
| Goalie | Team | Details | ||||
|---|---|---|---|---|---|---|
| #1Range not available Logan Thompson | WSH | |||||
| #2Range not available Jeremy Swayman | BOS | |||||
| #3Range not available Ilya Sorokin | NYI | |||||
| #4Range not available Andrei Vasilevskiy | TBL | |||||
| #5Range not available Scott Wedgewood | COL | |||||
| #6Range not available Jet Greaves | CBJ | |||||
| #7Range not available Igor Shesterkin | NYR | |||||
| #8Range not available Jakub Dobes | MTL | |||||
| #9Range not available Devin Cooley | CGY | |||||
| #10Range not available Spencer Knight | CHI | |||||
| #11Range not available John Gibson | DET | |||||
| #12Range not available Justus Annunen | NSH | |||||
| #13Range not available Ukko-Pekka Luukkonen | BUF | |||||
| #14Range not available Alex Lyon | BUF | |||||
| #15Range not available Dennis Hildeby | TOR | |||||
| #16Range not available Casey DeSmith | DAL | |||||
| #17Range not available Dan Vladar | PHI | |||||
| #18Range not available Joel Hofer | STL | |||||
| #19Range not available Jake Allen | NJD | |||||
| #20Range not available Jesper Wallstedt | MIN | |||||
| #21Range not available Jake Oettinger | DAL | |||||
| #22Range not available David Rittich | NYI | |||||
| #23Range not available Mackenzie Blackwood | COL | |||||
| #24Range not available Philipp Grubauer | SEA | |||||
| #25Range not available Karel Vejmelka | UTA | |||||
| #26Range not available Anton Forsberg | LAK | |||||
| #27Range not available Thatcher Demko | VAN | |||||
| #28Range not available Connor Ingram | EDM | |||||
| #29Range not available Stuart Skinner | EDM,PIT | |||||
| #30Range not available Brandon Bussi | CAR | |||||
| #31Range not available Lukas Dostal | ANA | |||||
| #32Range not available Filip Gustavsson | MIN | |||||
| #33Range not available Connor Hellebuyck | WPG | |||||
| #34Range not available Joonas Korpisalo | BOS | |||||
| #35Range not available Alex Nedeljkovic | SJS | |||||
| #36Range not available Samuel Montembeault | MTL | |||||
| #37Range not available Daniil Tarasov | FLA | |||||
| #38Range not available Nikita Tolopilo | VAN | |||||
| #39Range not available Jonathan Quick | NYR | |||||
| #40Range not available Anthony Stolarz | TOR | |||||
| #41Range not available Ville Husso | ANA | |||||
| #42Range not available Frederik Andersen | CAR | |||||
| #43Range not available Joseph Woll | TOR | |||||
| #44Range not available Eric Comrie | WPG | |||||
| #45Range not available Akira Schmid | VGK | |||||
| #46Range not available Dustin Wolf | CGY | |||||
| #47Range not available Vitek Vanecek | UTA | |||||
| #48Range not available Charlie Lindgren | WSH | |||||
| #49Range not available Tristan Jarry | PIT,EDM | |||||
| #50Range not available Joey Daccord | SEA | |||||
| #51Range not available Arvid Soderblom | CHI | |||||
| #52Range not available Elvis Merzlikins | CBJ | |||||
| #53Range not available Darcy Kuemper | LAK | |||||
| #54Range not available Juuse Saros | NSH | |||||
| #55Range not available Jonas Johansson | TBL | |||||
| #56Range not available Cam Talbot | DET | |||||
| #57Range not available Arturs Silovs | PIT | |||||
| #58Range not available Linus Ullmark | OTT | |||||
| #59Range not available Samuel Ersson | PHI | |||||
| #60Range not available Adin Hill | VGK | |||||
| #61Range not available Jacob Markstrom | NJD | |||||
| #62Range not available Sergei Bobrovsky | FLA | |||||
| #63Range not available Leevi Meriläinen | OTT | |||||
| #64Range not available Yaroslav Askarov | SJS | |||||
| #65Range not available Kevin Lankinen | VAN | |||||
| #66Range not available Jordan Binnington | STL |