Below are contract predictions for all 2024 unrestricted free agents. For more information about the projections, head to the ‘About the Site’ page.

A few notes on the projections below:

  • Only Players who played at least 10 NHL Games in 2023-24 will be listed. Some exceptions can apply, such as an NHL regular missing the season with an injury.
  • Players can have several different projections listed, if multiple lengths were designated as possibilities. The most likely term is bolded, with the next most-likely lengths being italicized.
  • The age listed for each UFA is based on how old the player will be by Dec. 31 of this year.
  • If a player is projected to receive a one or two-year deal at a cap hit of less than a $1M per year, the projection will be shown as: <$1.00M x 1/2 Years.
  • All projections are based on an $87.7M salary cap, which was expected for the 2024-25 season, rather than the recently announced $88M salary cap.
  • Once a player’s deal is signed, it’ll be listed in the far right column.
  • Players who are bought out ahead of free agency are not factored into the projections.

For any players with ‘Top 50 Free Agent‘ listed: their projection will be listed in the Top 50 Free Agents page. Each of the top 50 free agents will have a spotlight article released, detailing more information on their contract projection. If a player signs an extension before the article is released, an analysis article will be posted instead. Once a Top-50 Free Agent signs, we will also list the projection made for that term.

Credit to CapFriendly.com for contract details.

PlayerPos.AgeTeamProjection:Cap Hit + TermSigned:Cap Hit + Term
William LagessonLD28ANA<$1.00M x 1/2$0.78M x 1
(DET)
Ben MeyersC26ANA<$1.00M x 1/2$0.78M x 1
(SEA)
Jake DeBruskLW27BOS$5.00M x 7
View Projection
$5.50M x 7
(VAN)
Derek ForbortLD32BOS$2.25M x 3
$2.50M x 2
$2.00M x 1
$1.50M x 1
(BOS)
Matt GrzelcykLD30BOS$3.50M x 4
$3.33M x 3
$3.25M x 2
$3.25M x 1
$2.75M x 1
(PIT)
Danton HeinenLW29BOS$2.17M x 3
$1.75M x 2
$1.50M x 1
$2.25M x 2
(VAN)
Pat MaroonLW36BOS$0.90M x 2
$1.00M x 1
$1.30M x 1
(CHI)
Kevin ShattenkirkRD35BOS<$1.00M x 1/2
Oskar SteenC26BOS<$1.00M x 1/2
James van RiemsdykLW35BOS$1.00M x 2
$1.00M x 1
$0.90M x 1
(CBJ)
Eric ComrieG29BUF<$1.00M x 1/2$0.83M x 2
(WPG)
Zemgus GirgensonsLW30BUF$1.75M x 3
$1.50M x 2
$1.25M x 1
$0.85M x 3
(TBL)
Tyson JostC26BUF<$1.00M x 1/2$0.78M x 1
(CAR)
Victor OlofssonLW29BUF$0.90M x 2
$1.00M x 1
$1.08M x 1
(VGK)
Eric RobinsonLW29BUF<$1.00M x 1/2$0.95M x 1
(CAR)
AJ GreerLW28CGY<$1.00M x 1/2$0.85M x 2
(FLA)
Dennis GilbertLD28CGY<$1.00M x 1/2$0.83M x 1
(BUF)
Oliver KylingtonLD27CGY$1.25M x 2
$1.25M x 1
$1.05M x 1
(COL)
Jordan OesterleLD32CGY<$1.00M x 1/2$0.78M x 2
(BOS)
Jalen ChatfieldRD28CAR$3.50M x 4
$3.17M x 3
$2.75M x 2
$2.50M x 1
$3.00M x 3
(CAR)
Tony DeAngeloRD29CAR$0.90M x 2
$1.00M x 1
Jake GuentzelLW30CAR$9.50M x 7
View Projection
$9.00M x 7
(TBL)
Jordan MartinookLW32CAR$2.50M x 3
$2.50M x 2
$3.00M x 1
$3.05M x 3
(CAR)
Stefan NoesenRW31CAR$2.75M x 4
$3.00M x 3
$3.00M x 2
$3.25M x 1
$2.75M x 3
(NJD)
Brett PesceRD30CAR$4.75M x 6
View Projection
$5.50M x 6
(NJD)
Antti RaantaG35CAR<$1.00M x 1
Brady SkjeiLD30CAR$6.75M x 7
View Projection
$7.00M x 7
(NSH)
Teuvo TeravainenLW30CAR$5.50M x 3
View Projection
$5.40M x 3
(CHI)
Colin BlackwellC31CHI$1.33M x 3
$1.25M x 2
$1.25M x 1
$0.78M x 1
(DAL)
Tyler JohnsonRW34CHI$1.25M x 2
$1.50M x 1
$0.78M x 1
(BOS)
Jaycob MegnaLD32CHI<$1.00M x 1/2$0.78M x 1
(FLA)
Zachary SanfordLW30CHI<$1.00M x 1/2$0.78M x 1
(CHI)
Jarred TinordiLD32CHI<$1.00M x 1/2$0.80M x 1
(CGY)
Nikita ZaitsevRD33CHI<$1.00M x 1/2
Andrew CoglianoLW37COL<$1.00M x 1/2Retired
Jonathan DrouinLW29COL$3.75M x 1
View Projection
$2.50M x 1
(COL)
Brandon DuhaimeLW27COL$1.50M x 3
$1.25M x 2
$1.15M x 1
$1.85M x 2
(WSH)
Jack JohnsonLD37COL<$1.00M x 1/2$0.78M x 1
(CBJ)
Caleb JonesLD27COL<$1.00M x 1/2$0.78M x 1
(LAK)
Joel KivirantaLW28COL<$1.00M x 1/2$0.78M x 1
(COL)
Fredrik OlofssonLW28COL<$1.00M x 1/2
Zach PariseLW40COLN/ARetired
Ivan ProsvetovG25COL<$1.00M x 1/2
Yakov TreninLW27COL$2.00M x 3
$1.70M x 2
$1.50M x 1
$3.50M x 4
(MIN)
Sean WalkerRD30COLView Analysis$3.60M x 5
(CAR)
Chris WagnerC33COL<$1.00M x 1/2$0.78M x 1
(COL)
Nick BlankenburgLD26CBJ<$1.00M x 1/2$0.78M x 2
(NSH)
Brendan GaunceC30CBJ<$1.00M x 1/2$0.78M x 2
(MIN)
Carson MeyerRW27CBJ<$1.00M x 1/2$0.78M x 1
(ANA)
Matt DucheneC33DAL$5.25M x 2
View Projection
$3.00M x 1
(DAL)
Joe PavelskiRW40DALTop-50 Free AgentExpected
Retirement
Craig SmithRW34DAL$1.00M x 1$1.00M x 1
(CHI)
Jani HakanpaaRD32DAL$2.17M x 3
$2.50M x 2
$2.50M x 1
$1.47M x 1
(TOR)
Chris TanevRD35DAL$3.50M x 4
View Projection
$4.50M x 6
(TOR)
Scott WedgewoodG32DAL$1.05M x 2
$1.25M x 1
$1.50M x 2
(NSH)
Austin CzarnikC32DET<$1.00M x 1/2
Shayne GostisbehereLD31DETView Analysis$3.20M x 3
(CAR)
Christian FischerRW27DET$1.33M x 3
$1.25M x 2
$1.15M x 1
$1.13M x 1
(DET)
Patrick KaneRW36DET$5.50M x 1
View Projection
$4.00M x 1
(DET)
David PerronRW36DET$3.25M x 2
View Projection
$4.00M x 2
(OTT)
James ReimerG36DET$1.00M x 2
$1.20M x 1
$1.00M x 1
(BUF)
Daniel SprongRW27DET$3.00M x 3
$2.75M x 2

$2.50M x 1
$0.98 x 1
(VAN)
Connor BrownRW30EDM$1.25M x 2
$1.00M x 1
$1.00M x 1
(EDM)
Sam CarrickC32EDM$1.35M x 3
$1.20M x 2
$1.00M x 1
$1.00M x 3
(NYR)
Vincent DesharnaisRD28EDM$2.00M x 4
$1.75M x 3

$1.50M x 2
$1.25M x 1
$2.00M x 2
(VAN)
Adam ErneLW29EDM<$1.00M x 1/2
Warren FoegeleLW28EDM$3.50M x 4
$3.25M x 3
$3.00M x 2
$3.00M x 1
$3.50M x 3
(LAK)
Sam GagnerRW35EDM<$1.00M x 1/2
Adam HenriqueC34EDMView Analysis$3.00M x 2
(EDM)
Mattias JanmarkRW32EDM$1.00M x 2
$1.00M x 1
$1.45M x 3
(EDM)
Corey PerryRW39EDM$1.00M x 1$1.15M x 1
(EDM)
Calvin PickardG32EDM$0.95M x 2
$1.00M x 1
$1.00M x 2
(EDM)
Troy StecherRD30EDM$1.15M x 2
$1.10M x 1
$0.79M x 2
(EDM)
Nick CousinsLW31FLA$1.33M x 3
$1.25M x 2
$1.20M x 1
$0.80M x 1
(OTT)
Oliver Ekman-LarssonLD33FLAView Analysis$3.50M x 4
(TOR)
Dmitry KulikovLD34FLA$1.25M x 2
$1.25M x 1
$1.15M x 4
(FLA)
Ryan LombergLW30FLA$1.33M x 3
$1.25M x 2
$1.20M x 1
$2.00M x 2
(CGY)
Steven LorentzLW28FLA<$1.00M x 1/2$0.78M x 1
(TOR)
Brandon MontourRD30FLA$7.25M x 7
View Projection
$7.14M x 7
(SEA)
Kyle OkposoRW36FLA<$1.00M x 1/2Retired
Sam ReinhartRW29FLA$8.50M x 8
View Projection
$8.63M x 8
(FLA)
Kevin StenlundC28FLA$1.33M x 3
$1.20M x 2
$1.10M x 1
$2.00M x 2
(UTA)
Anthony StolarzG30FLA$3.00M x 3
$2.50M x 2
$2.50M x 1
$2.50M x 2
(TOR)
Vladimir TarasenkoRW33FLAView Analysis$4.75M x 2
(DET)
Viktor ArvidssonRW31LAK$5.50M x 2
View Projection
$4.00M x 2
(EDM)
Pheonix CopleyG32LAK<$1.00M x 1/2$0.83M x 1
(LAK)
Trevor LewisRW37LAK<$1.00M x 1/2$0.80M x 1
(LAK)
Matt RoyRD29LAK$5.00M x 6
View Projection
$5.75M x 6
(WSH)
Cam TalbotG37LAK$1.00M x 2
$1.50M x 1
$2.50M x 2
(DET)
Alex GoligoskiLD39MIN<$1.00M x 1/2Retired
Jake LucchiniRW29MIN<$1.00M x 1/2$0.78M x 2
(NSH)
Dakota MermisLD30MIN<$1.00M x 1/2$0.78M x 1
(TOR)
Tanner PearsonLW32MTL<$1.00M x 1/2$0.78M x 1
(VGK)
Mitchell StephensC26MTL<$1.00M x 1/2$0.78M x 2
(SEA)
Colin WhiteC27MTL<$1.00M x 1/2
Tyson BarrieRD33NSH$1.25M x 2
$1.25M x 1
$1.25M x 1
(CGY)
Anthony BeauvillierLW27NSH$0.95M x 2
$1.00M x 1
$1.25M x 1
(PIT)
Alexandre CarrierRD28NSH$3.75M x 4
$3.50M x 3
$3.25M x 2
$3.00M x 1
$3.75M x 3
(NSH)
Kevin LankinenG29NSH$2.00M x 2
$2.00M x 1
$0.88M x 1
(VAN)
Kiefer SherwoodLW29NSH$2.00M x 3
$1.75M x 2
$1.25M x 1
$1.50M x 2
(VAN)
Jason ZuckerLW32NSH$2.50M x 2
$3.00M x 1
$5.00M x 1
(BUF)
Nick DeSimoneRD30NJD<$1.00M x 1/2$0.78M x 1
(NJD)
Kaapo KahkonenG28NJD$1.50M x 2
$1.50M x 1
$1.00M x 1
(WPG)
Tomas NosekLW32NJD<$1.00M x 1/2$0.78M x 1
(FLA)
Brendan SmithLD35NJD$1.00M x 2
$1.00M x 1
$1.00M x 1
(DAL)
Chris TierneyC30NJD<$1.00M x 1/2
Sebastian AhoLD28NYI<$1.00M x 1/2$0.78M x 2
(PIT)
Robert BortuzzoRD35NYI<$1.00M x 1/2$0.78M x 1
(UTA)
Cal ClutterbuckRW37NYI$0.90M x 2
$1.00M x 1
Matt MartinLW35NYI<$1.00M x 1/2$0.78M x 1
(NYI)
Mike ReillyLD31NYI$1.75M x 2
$1.50M x 1
$1.25M x 1
(NYI)
Erik GustafssonLD32NYR$1.25M x 2
$1.50M x 1
$2.00M x 2
(DET)
Tyler PitlickRW33NYR<$1.00M x 1/2
Jack RoslovicC27NYR$3.50M x 3
$3.50M x 2

$3.00M x 1
$2.80M x 1
(CAR)
Chad RuhwedelRD34NYR<$1.00M x 1/2$0.78M x 1
(NYR)
Alexander WennbergC30NYR$3.50M x 4
$3.50M x 3

$3.50M x 2
$3.00M x 1
$5.00M x 2
(SJS)
Blake WheelerRW37NYR<$1.00M x 1
Rourke ChartierC27OTT<$1.00M x 1/2
Dominik KubalikLW29OTT$0.90M x 2
$1.00M x 1
Jiri SmejkalLW28OTT<$1.00M x 1/2
Denis GurianovLW27PHI<$1.00M x 1/2
Erik JohnsonRD36PHI$0.90M x 2
$1.00M x 1
$1.00M x 1
(PHI)
Marc StaalLD37PHI<$1.00M x 1/2Retired
Jansen HarkinsLW27PIT<$1.00M x 1/2$0.79M x 2
(ANA)
Vinnie HinostrozaRW30PIT<$1.00M x 1/2$0.78M x 2
(NSH)
Alex NedeljkovicG28PIT$2.50M x 2
$2.00M x 1
$2.50M x 2
(PIT)
Ryan SheaLD27PIT<$1.00M x 1/2$0.78M x 1
(PIT)
Radim ZohornaLW28PIT<$1.00M x 1/2
Justin BaileyRW29SJS<$1.00M x 1/2$0.80M x 1
(SJS)
Alexander BarabanovLW30SJS$1.00M x 2
$1.00M x 1
Ryan CarpenterC33SJS<$1.00M x 1/2
Mike HoffmanLW35SJS<$1.00M x 1/2
Kevin LabancRW28SJS<$1.00M x 1/2$0.78M x 1
(CBJ)
Jacob MacDonaldLD31SJS<$1.00M x 1/2$0.78M x 2
(COL)
Pierre-Edouard BellemareC39SEA<$1.00M x 1/2
Justin SchultzRD34SEA$1.50M x 2
$2.00M x 1
Devin ShoreC30SEA<$1.00M x 1/2$0.78M x 1
(MIN)
Tomas TatarLW34SEA$1.00M x 2
$1.25M x 1
$1.80M x 1
(NJD)
Samuel BlaisLW28STL<$1.00M x 1/2
Kasperi KapanenRW28STL$1.00M x 2
$1.20M x 1
$1.00M x 1
(STL)
Marco ScandellaLD34STL<$1.00M x 1/2
Jakub VranaLW28STL<$1.00M x 1/2$0.78M x 1
(WSH)
Alex Barre-BouletLW27TBL<$1.00M x 1/2$0.78M x 1
(MTL)
Anthony DuclairLW30TBLView Analysis$3.50M x 4
(NYI)
Calvin De HaanLD33TBL<$1.00M x 1/2$0.80M x 1
(COL)
Matt DumbaRD30TBL$3.00M x 2
$3.00M x 1
$3.75M x 2
(DAL)
Hadyn FleuryLD28TBL<$1.00M x 1/2$0.78M x 1
(WPG)
Tyler MotteLW29TBL$1.00M x 3
$1.00M x 2

$1.00M x 1
$0.80M x 1
(DET)
Steven StamkosC34TBL$7.75M x 4
View Projection
$8.00M x 4
(NSH)
Austin WatsonRW32TBL<$1.00M x 1/2$0.78M x 1
(DET)
Tyler BertuzziLW29TOR$5.00M x 4
View Projection
$5.50M x 4
(CHI)
T.J. BrodieLD34TOR$3.00M x 2
$3.00M x 1
$3.75M x 2
(CHI)
Max DomiLW29TORView Analysis$3.75M x 4
(TOR)
Joel EdmundsonLD31TOR$2.50M x 3
$2.50M x 2
$3.00M x 1
$3.85M x 4
(LAK)
Mark GiordanoLD41TOR<$1.00M x 1/2
Martin JonesG34TOR$0.90M x 2
$0.90M x 1
John KlingbergRD32TOR$0.90M x 2
$1.25M x 1
$1.76M x 1
(EDM)
Ilya LyubushkinRD30TOR$2.50M x 4
$2.50M x 3
$2.50M x 2
$2.75M x 1
$3.25M x 3
(DAL)
Ilya SamsonovG27TOR$2.00M x 2
$2.00M x 1
$1.80M x 1
(VGK)
Joshua BrownRD30UTA$1.10M x 2
$1.00M x 1
$1.00M x 3
(EDM)
Travis BoydC31UTA$1.25M x 2
$1.25M x 1
$0.78M x 1
(MIN)
Travis DermottLD28UTA<$1.00M x 1/2$0.78M x 1
(EDM)
Liam O’BrienLW30UTA$1.25M x 3
$1.05M x 2
$0.90M x 1
$1.00M x 3
(UTA)
Teddy BluegerC30VAN$2.50M x 3
$2.25M x 2
$2.25M x 1
$1.80M x 2
(VAN)
Ian ColeLD35VAN$2.00M x 2
$2.25M x 1
$3.10M x 1
(UTA)
Casey DeSmithG33VAN$1.10M x 2
$1.30M x 1
$1.00M x 3
(DAL)
Mark FriedmanRD29VAN<$1.00M x 1/2$0.78M x 1
(VAN)
Dakota JoshuaLW28VAN$3.75M x 4
$3.50M x 3
$3.50M x 2
$3.25M x 4
(VAN)
Sam LaffertyRW29VAN$2.25M x 4
$2.25M x 3

$1.90M x 2
$1.50M x 1
$2.00M x 2
(BUF)
Elias LindholmC30VAN$7.14M x 7
View Projection
$7.75M x 7
(BOS)
Tyler MyersRD34VAN$4.00M x 3
(View Projection)
$3.00M x 3
(VAN
Nikita ZadorovLD29VAN$4.33M x 6
View Projection
$5.00M x 6
(BOS)
Michael AmadioRW28VGK$3.00M x 4
$2.75M x 3
$2.75M x 2
$2.60M x 3
(OTT)
William CarrierLW30VGK$2.50M x 5
$2.75M x 4
$2.75M x 3
$2.75M x 2
$3.00M x 1
$2.00M x 6
(CAR)
Byron FroeseC33VGK<$1.00M x 1/2
Anthony ManthaLW30VGKView Analysis$3.50M x 1
(CGY)
Jonathan MarchessaultLW34VGK$7.00M x 4
View Projection
$5.50M x 5
(NSH)
Alec MartinezLD37VGKView Analysis$4.00M x 1
(CHI)
Chanelder StephensonC30VGK$6.67M x 6
View Projection
$6.25M x 7
(SEA)
Nicolas Aube-KubelRW28WSH$2.00M x 3
$1.65M x 2
$1.50M x 1
$1.50M x 1
(BUF)
Max PaciorettyLW36WSH$1.00M x 2
$1.00M x 1
$0.87M x 1
(TOR)
Matthew PhillipsLW26WSH<$1.00M x 1/2$0.78M x 1
(COL)
Laurent BrossoitG31WPG$2.50M x 2
$2.50M x 1
$3.30M x 2
(CHI)
Dylan DeMeloRD31WPGView Analysis$4.90M x 4
(WPG)
Brenden DillonLD34WPG$3.00M x 3
$3.25M x 2
$3.25M x 1
$4.00M x 3
(NJD)
Colin MillerRD32WPG$1.00M x 2
$1.25M x 1
$1.50M x 2
(WPG)
Sean MonahanC30WPGView Analysis$5.50M x 5
(CBJ)
Tyler ToffoliRW32WPG$5.75M x 4
View Projection
$6.00M x 4