Glossary · Advanced stat

Game Score in Hockey (GS)

Game score is a single-game rating that rolls goals, assists, shots, blocks, penalties, faceoffs and on-ice shot and goal results into one number. Dom Luszczyszyn built game score in hockey form in 2016, weighting each piece so a season's total lands close to a player's points. This site averages MoneyPuck's and HockeyStatCards' versions.

Points tell you who scored. Game score asks what else happened while a player was out there, from the shots he took to the penalties he drew to whether his team won the shot battle, and it puts a number on every night of a season.

Also calledGSLuszczyszyn's Game Score
Scale≈ pointsa season's total lands near the points total
Median forward0.53per game, 2025-26, 327 forwards with 60+ GP
Median defenseman0.36per game, 2025-26, 161 with 60+ GP
League leader1.86Nathan MacKinnon, per game, 2025-26
Best Red Wing1.07Alex DeBrincat, per game, 32nd of 488
A strong night2.0+the line this site's game logs highlight
This site usesMP + HSCMoneyPuck and HockeyStatCards, averaged

Where Game Score comes from

Game score started in baseball and went through basketball on the way to hockey. Bill James created the baseball version and John Hollinger built the basketball one, and Dom Luszczyszyn credited both when he introduced hockey's at Hockey-Graphs on July 13, 2016, under the title "Measuring Single Game Productivity."

His method was deliberately simple. Each stat was weighted by how often it shows up relative to goals, then the weights were scaled down by 75% so a player's game score would roughly equal his points. Corsi, blocked shots and faceoffs were worth so little already that they weren't scaled any further. Goalies got their own formula, built on goals allowed and saves. The top of the scale is steep. The original piece listed the only games since 2007-08 that rated above 5, and Sam Gagner's eight-point night in 2012 was worth 7.1.

The formula has moved on since. Luszczyszyn added expected goals in 2019, the version NHL.com later described as using "advanced measures of shot quality for and against," and he built his player-value model at The Athletic, Game Score Value Added (GSVA), on the same idea. MoneyPuck's data dictionary carries a gameScore column "as designed by @domluszczyszyn," and HockeyStatCards publishes a game score for every game in a player's log, with links back to both the 2016 article and the 2019 model.

How Game Score is calculated

The original skater formula is a weighted sum of 13 counts, positive for the things that help and negative for the things that hurt. Goals carry the most weight and faceoffs the least. These are the inputs:

  • Goals, primary assists and secondary assists
  • Shots on goal
  • Blocked shots
  • Penalties drawn and penalties taken
  • Faceoffs won and lost
  • On-ice shot attempts for and against at five-on-five
  • On-ice goals for and against at five-on-five
Skater (2016)GS = 0.75 G + 0.7 A1 + 0.55 A2 + 0.075 SOG + 0.05 BLK + 0.15 PD − 0.15 PT + 0.01 FOW − 0.01 FOL + 0.05 CF − 0.05 CA + 0.15 GF − 0.15 GA
Goalie (2016)GS = −0.75 GA + 0.1 SV
Seasonseason game score = the sum of every game's score
This siteW&W game score = (MoneyPuck + HockeyStatCards) ÷ 2

Here's a worked example with invented round numbers. A forward scores once, adds a secondary assist, puts four shots on goal, blocks one, takes a penalty and wins six of ten draws. At five-on-five he's on the ice for a dozen shot attempts for and eight against, and one goal each way (his own included). Run that through the weights and you get 1.72, a good night just short of the 2.0 line this site's game logs highlight. The goal and the assist account for more than three-quarters of it.

MoneyPuck applies the box-score terms to all situations and the on-ice terms to five-on-five. Rebuild its season figures for last season from its own columns that way and the formula above lands within 0.01 for 923 of the league's 940 skaters. HockeyStatCards points readers to the 2019 model and shows expected-goal columns beside each game's score, and its numbers don't match MoneyPuck's game for game. This site averages the two (a game only gets a score once both have posted it).

Per game
A season's total divided by games played, the number to compare players on.
Goalie game score
Goals against and saves only, from the 2016 formula.
GSVA
Game Score Value Added, Luszczyszyn's multi-season player value in wins at The Athletic.
W-Value stand-in
Early in a season, before Evolving-Hockey's numbers arrive, this site ranks players on game score instead.

What Game Score tells you

Game score measures single-game productivity, priced in points.

It's built to land near a player's point total over a season, so Alex DeBrincat's 87.4 in MoneyPuck's file for last season sits right beside his 85 points, even though the shots, blocks and on-ice terms pull some players well above or below their point totals. Per game, the median forward who played 60 games scored 0.53 and the top 10% cleared 1.02. Defensemen sat about a third lower, because the formula pays mostly for points. Nathan MacKinnon led everyone at 1.86 a game, ahead of Nikita Kucherov and Connor McDavid.

DeBrincat was Detroit's best at 1.07, 32nd of the 488 skaters who played 60 games, and Dylan Larkin, Moritz Seider and Lucas Raymond were bunched just under 0.90. If you're scanning a game log, that's the context for a single night's number. Detroit's regulars averaged between zero and a little over one a game, so a 2.0 is a night well above anyone's usual.

Does it repeat? It holds up about as well as points do. For forwards who played 60 games in each of the last two seasons, per-game game score correlated with the next season's at 0.86, against 0.88 for points per game. Luszczyszyn called it fairly repeatable in 2016, and the numbers back him.

How analysts use Game Score

Grading one night

That's the job it was built for. What counts as a good night? Every Red Wings player page here logs a game score for each game, with 2.0 marking a strong one and anything below zero a poor one, plus a ten-game rolling average so you can see a hot or cold stretch forming before the season totals do. The chart colors each bar by sign, so a run of poor nights stands out.

Ranking players early in a season

This site's W-Value needs Evolving-Hockey's numbers, which aren't there at the start of a season. Until they are, each player page ranks him on cumulative game score among every NHL skater who's played, on the same 0 to 100 scale, and labels it as a stand-in. It's a rough proxy for value, built from the box score, and it gives way to the W-Value once that can be computed.

Crediting the work behind the points

Seider and Raymond finished last season with almost the same game score on very different point totals, 60 and 76. Seider's 180 blocked shots were worth 9.0 on their own, and Detroit's five-on-five shot attempts ran 176 ahead of opponents' with him on the ice, worth 8.8 more. Ben Chiarot went the other way. His 15 points became a 9.3 game score, dragged down by a five-on-five attempt margin of minus-218.

Game Score on the Red Wings

Rebuilt every night from the NHL API and MoneyPuck. Red Wings skaters ranked on MoneyPuck's own season game score, a running total, so the players with the most games have a head start; the per-game number on each player page is this site's two-source average.

Detroit has played 6 games. Game score is a running total, so one big night moves these rankings a long way this early.

Red Wings skaters by MoneyPuck game score, season total, all situations, 2026-27
PlayerGPPointsShotsGame score
Alex DeBrincat68249.75
Michael Brandsegg-Nygård65197.17
Emmitt Finnie63134.79
Moritz Seider63114.18
Viktor Arvidsson64164.15
Lucas Raymond64184.15
Justin Faulk6392.98
Dylan Larkin42112.86

Data: NHL API and MoneyPuck, rebuilt October 15, 2026.

What Game Score can't tell you

The weights are a judgment call

Luszczyszyn set each weight by how often that stat turns into goals and then rounded it, so nothing in the formula was fit to winning, and a shot on goal is worth 0.075 because of how often shots become goals.

It's mostly points

Goals and assists made up 68% of the game score earned by the league's forwards who played 60 games last season. A defenseman who doesn't produce points can't climb far, however well you think he defends.

Shot volume counts twice

Every shot on goal earns its own 0.075, and the same shot feeds the on-ice Corsi term (a second, smaller credit). DeBrincat's 287 shots on goal were worth 21.5 of his 87.4, a quarter of his season total.

The versions disagree

MoneyPuck's number reproduces the 2016 formula, while HockeyStatCards points to the 2019 model with expected goals in it, so the same game can grade as a good night on one site and an ordinary one on the other. Averaging the two smooths that out without settling which is right.

Sources

  1. Measuring Single Game Productivity: An Introduction to Game Score, Dom Luszczyszyn, Hockey-Graphs, July 13, 2016. formula, weighting method, goalie version, Bill James and Hollinger, Gagner's 7.1, repeatability
  2. Player data dictionary, MoneyPuck. gameScore credited to Luszczyszyn
  3. Player game logs, HockeyStatCards. per-game Game Score with xG columns; links to the 2016 article and the 2019 model
  4. Analytics with Alison: breaking down McCann's play, NHL.com, November 13, 2021. current Game Score uses shot quality for and against
  5. All About The Jersey hockey stat primer, SB Nation, December 28, 2020. GSVA built on Game Score; xG added in 2019
  6. 2024-25 and 2025-26 regular-season skater files, MoneyPuck data. every benchmark, the formula check and the repeatability figure

League figures are Wes & Woodward's calculations from MoneyPuck's 2025-26 regular-season skater file (downloaded October 9, 2026) and its 2024-25 file (downloaded October 9, 2026, saved as raw/mp_skaters_2024_repeatability.csv). Per-game game score is MoneyPuck's season gameScore ÷ games played, all situations, among skaters with 60+ games; the formula check rebuilds gameScore from the same file's all-situations box-score columns and five-on-five on-ice columns; term contributions use the 2016 weights; repeatability is the Pearson correlation of per-game game score (and points per game) between seasons for the 260 forwards with 60+ games in both. The site's per-game blend and the 2.0 highlight line come from pipeline/build_player.py and the player page.

Last reviewed October 9, 2026.