For most metrics, a single season of data is a small sample. Small sample equals a poor estimate with a large estimation error.
A average (0.920 ES) goalie faces 1400 ES shots. There's a roughly 95% probability he will make between 1268 and 1308 saves. That puts him anywhere from -20 GVA to +20 GVA. Alternatively, that's -14.4 GVT to +25.6 GVT. A 40 goal spread from nothing more than chance.
A forward scores on about 9% of his ES shots. (Overall it's 8%, but defensemen shoot at about 4%). If a forward takes 300 shots, he should get 27 goals. Randomness puts the 95% confidence interval at 17 goals to 37 goals. At 200 shots, it's about 10 goals to 26 goals. A 20 goal (or 16 goal) spread from nothing more than chance.
Team Goals For/Against
Teams score about 2.4 goals per 60 minutes of 5v5 hockey. The scoring of goals is pretty much a Poisson process so the variance is easy to calculate. A player who plays 1200 minutes of 5v5 hockey will be on for an average of 48 goals. The variance is also 48, and the standard deviation is 6.93. So there is a roughly 95% probability of being on the ice for between 35 and 61 goals for. The same is true for goals against.
Converted to Plus-Minus, the variance is 2*48=96. The standard deviation is 9.80 and the 95% confidence interval is -19 to +19. 38 goal spread.
Previously, I found a season of Corsi/60 to have a variability of about +/-13.7 for a season of 1200 minutes. That works out to +/-274 net Corsi events. At the usual ratio of 24 Corsi events = 1 goal that's +/- 11.4 goals. 23 goal spread.
The Way Out: More Events
It's like the old joke about repairs. You want good, fast, and cheap, but you can only have two of them. With metrics it's good, goal-based, and single season.
You can have good and goal-based, but it won't be single season.
You can have good and single season (maybe), but it won't be goal-based.
You can have goal-based and single season, but it won't be good.
More events means better estimates. They're still estimates and still subject to randomness, but at least the confidence interval narrows. Over a single season, a player is on ice for about 100 goals (for both teams), or about 2000 Corsi events, or about 6500 THoR events. That's why THoR might be both good and single season.
Universal Measures of Player Value: Why They Fail
Analytics has tried to find a universal currency for player values. Over a single season, metrics fail because of our old friend: randomness.