As of this morning, contract projections for the 2025 NHL offseason are now live on the site! For all intents and purposes here at Evolving Hockey, we have now entered the NHL offseason. As many of you know, we project contracts for as many players as we’re able. While the main page defaults via the Free Agent dropdown to contracts for free agents (“Yes”), we also provide projections for all extension-eligible players (“Extension”), and everyone else (“No”). I thought I’d take a little time to chat about some updates, remind folks about how these projections work, and offer some points of clarification for this summer – that’s the thesis statement for my essay, which I learned how to write in 7th grade.
Our contract projection model (which is actually a total of four models: contract term and contract cap percentage for skaters and goalies) and its structure hasn’t changed much since we finalized the framework 5 years ago. Every spring we retrain the models with new contract data from the prior year along with the most recent season’s skater/goalie data, but we’ve found a system that seems to work well for predictive power while also balancing the complicated nature of additional features and user functionality. The last additions we made to the model were prior team, signing period, and prior contract status as features – these were included in training, but in practice for projected future contracts, the first two features allow users to select various outcomes for a given player’s future contract (i.e. signing with their most recent team or not and when a contract will be signed) and the last helps model performance.
We have several explainers on the site that cover the more detailed aspects of the entire model. I won’t be going into that kind of detail below, but if you’re interested in how this all works, check these out for all the information:
While the model has stayed relatively unchanged in recent years, the player contract landscape changed quite a bit last summer: CapFriendly shut its doors after the Capitals acquired them (I knew there was a reason I didn’t like Washington). As many of you know, we had a data sharing affiliation of sorts with CapFriendly for close to 8 years, and up until this past summer, all of our contract data was sourced from their wonderful website. When they shut down in mid-July last year, we made the decision to bring all future contract data in-house, if you will, which posed a fairly big task for us here at Evolving Hockey HQ. What this means is:
- We’ve been tracking signed contracts ourselves since July 10, 2024. This has proven quite the challenge, but we’re lucky in that, as far as the model is concerned, we do not need to keep track of ELC contracts.
- We do still have CapFriendly’s prior contract data, so little has changed in the data we use to train the models. Going forward, we will accumulate more contract data ourselves, but given we’ve run a hockey data website for 7 years, I have the utmost faith in our ability to scrutinize hockey numbers. Or I guess, we don’t really have a choice there.
- That said, while we’ve done about as many double-checks as one can realistically imagine to ensure consistency in the data with this new tracking process, there is a slightly increased risk in us having overlooked something. We saw no impact in training for the model, but if you notice an aspect that doesn’t relate to the actual term or dollar value for a player’s projection (free agents missing or present when they shouldn’t be, RFA/UFA status appears incorrect, etc.), feel free to reach out and let us know!
Regarding model training for the projections that are now live on the site, the term and cap percentage models for skaters and goalies all performed better than they did last year in our various out-of-sample evaluations and tests (I’m simplifying things here because I’m trying to keep this short, believe it or not). Each year, we tend to expect that all the models will “improve” as we’ve added somewhere between 300-400 contracts from the prior year, which inherently “should” lead to a more “accurate” model due to the increase in observations. We saw this again this year, and theoretically, like every year prior to the last, this should be the best contract projection model we’ve ever released – I get to say this because it’s both true and also not really interesting since we have more data so we should expect this.
One thing I’d like to note here is the extreme salary cap environment we’ve found ourselves in. With an expected $7.5M increase in the cap heading into ’25-26 and a $25.5M total increase over the next three seasons, each increase individually larger than any single season-to-season increase we’ve seen since 2005, we’re entering unprecedented times regarding expected contracts. We’ve already seen some of this play out with various contract extensions over the last few months, but it’s important to keep in mind that we’re not only entering a summer and a new regular season with the largest increase in the salary cap in 20 years but a continuing increase in the salary cap (at least stated) for the next two season following the ensuing one. Our model is trained to predict salary cap percentage for any given contract, but the individual salary cap environment is something that’s quite difficult to account for in a model like this. It’s possible we’ll see very little impact from this, but it’s also possible things get a little weird. At the very least, I expect we’ll see a slight under-performance from the model in the league-minimum player group – because of the steep salary cap increase without a corresponding increase to the NHL league minimum ($775k for ’25-26), the model appears to currently project this group slightly higher than I would expect. This isn’t necessarily a major concern, but it’s an interesting point to highlight.
With that said, have fun with the contract projections. The NHL offseason is like few other sports, and I’m excited to, once again, follow along. But as my mother always told me, make sure to be safe while you’re having fun. If you have any questions or see anything that looks off, feel to reach out via our Contact Us form, email (support at evolving – hockey dot com), or Bluesky/Twitter.
Signed with love,
- Josh & Luke