The Lab — Hockey Alchemy Blog

Methodology breakdowns, model validations, and analytical deep-dives from the Hockey Alchemy team. New posts every few weeks.

Talent vs Production: Why the Box Score Misleads

2026-08-16

Two wingers score 20 goals; only one of them will do it again. The gap between what a player produced and the process underneath it is the most useful idea in hockey analytics - and it is the split our expected-goals and finishing models are built to make.

How Good Is Our WAR Model? We Ran Four Tests and Lost Two

2026-08-16

We tested our WAR model against HockeyStats and Evolving Hockey on the four questions an honest player-value model has to answer, matched to each benchmark's published protocol. Summed to a team it loses both tests - it forecasts next season worse than simply reusing last season's standings. Measured per player it wins both, repeating at 0.77 against 0.62 and 0.46.

The Model That Earns Its Keep

2026-08-16

Is our projection actually better than a simple average? We ran the honest test - forecasting one player's WAR next season, walk-forward across thirteen seasons - and beat the baseline that is supposed to be unbeatable. Then we ran it on goalies, where we lose.

Which Hockey Stats Are Skill, and Which Are Luck?

2026-08-16

Line up every player's value in a category this season against next season and you get a brutal skill-vs-luck test. Staying out of the penalty box repeats more than four times better than finishing - and it changes how you should read a stat line.

What's Actually Inside a GAR Number

2026-08-01

GAR compresses a season into one figure - so the parts underneath had better add up. What our GAR is actually made of, why it is anchored on counting stats rather than built purely from RAPM (measured: pure RAPM drops standings R-squared from 0.75 to 0.51), and the bug that left our own component breakdown failing to sum to the number above it.

Why Public Hockey Analytics Is Imperfect

2026-07-20

An honest accounting of where public hockey analytics hits a wall — the data ceiling (the feed records no passes, tracking drifts, private camera models see more) and the bigger problem now: a discourse that shares cards without meaning, rewards certainty over nuance, and stopped teaching. With the Zach Hyman case as the tell.

Distance and Angle Aren't Enough: Why Our xG Model Splits the Ice Into Zones

2026-07-20

A pure distance-and-angle expected-goals model looks reasonable — and quietly misprices the whole ice. We map exactly where it goes wrong, then show how zone, rush, and prior-event features lift out-of-sample AUC from 0.70 to 0.84.

How Our Expected Goals (xG) Model Works

2026-07-20

A transparent look inside Hockey Alchemy's xG model: situation-specific XGBoost models, 53 features, 16 seasons and 1.6M shots — and how it stacks up against MoneyPuck on a matched-shot test.

The 2026-27 NHL Schedule, by Team: Who the 84-Game Grid Favors

2026-07-19

The NHL's first 84-game season since 1993-94, by team impact: the rest edges that actually tilt the standings, full strength-of-schedule for all 32 teams, how the identical divisional structure shapes every slate, plus opening night and five nights outdoors.

What to Expect With Jim Hiller

2026-07-19

Toronto tried the Cup-pedigree hire and Auston Matthews cratered. What Jim Hiller's actual Kings numbers — and our metrics — say to expect from the Leafs' next coach.

Introducing the Hockey Alchemy Chrome Extension

2026-07-02

GAR, tier, and contract value for any NHL player — in a popup, a side panel, or highlighted right on the pages you already read. Free, no account, no tracking.

Jet Greaves Is the NHL’s Most Underrated Goalie

2026-06-29

Columbus' Jet Greaves was a top-7 NHL goalie in 2025-26 by shot-quality-adjusted GSAx — all on an $812,500 cap hit. The case the box score hides.

How We Calculate NHL Power Rankings: The Elo System Behind Hockey Alchemy

2026-05-23

A transparent look at the Elo rating system that powers our NHL power rankings, game predictions, and Stanley Cup odds. K=12, home ice = 50 points, 30% regression to the mean — and three different ways we account for margin of victory.