Below are contract predictions for all 2025 restricted 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 2024-25 will be listed (some exceptions can apply).
  • 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 RFA 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 less than a $1M cap hit (regardless of whether they receive a qualifying offer), the projection will be shown as: <$1.00M x 1/2 Years
  • All projections are based on a $95.5M salary cap, which was set for the 2025-26 season.
  • Once a player’s deal is signed, it’ll be listed in the far right column.

For any players designated as a Top 50 Free Agent: their projection will be listed in the Top 50 Free Agents page. Each of the top 50 free agents this year 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 list the projection made for that term.

Advertisements
PlayerPos.AgeTeamProjection:Cap Hit + TermSigned:Cap Hit + Term
Sam ColangeloRW24ANA$1.67M x 3
$1.35M x 2

$0.87M x 1
$0.85M x 2
Lukas DostalG25ANATop-50 Free Agent$6.50M x 5
Drew HellesonRD24ANA$2.00M x 3
$1.40M x 2
$1.00M x 1
$1.10M x 2
Brett LeasonRW26ANA$1.30M x 2
$1.15M x 1
$0.90M x 1 (No QO)
$0.78M x 1
(WSH)
Isac LundestromC26ANA$1.83M x 3
$1.50M x 2
$1.50M x 1 (QO)
$1.00M x 1 (No QO)
$1.30M x 2
(CBJ)
Mason McTavishC22ANATop-50 Free Agent$7.00M x 6
Nikita NesterenkoC24ANA<$1.00M x 1/2$0.79M x 2
John BeecherC24BOS$1.25M x 3
$1.00M x 2
$0.90M x 1
$0.90M x 1
Morgan GeekieRW27BOSView Analysis$5.50M x 6
Marat KhusnutdinovC23BOS$1.25M x 3
$1.00M x 2
$0.90M x 1
$0.93M x 2
Jakub LaukoLW25BOS$1.10M x 3
$1.00M x 2
$0.85M x 1
Mason LohreiLD24BOSView Analysis$3.20M x 2
Ian MitchellRD25BOS<$1.00M x 1/2$0.78M x 1
(DET)
Oliver WahlstromRW25BOS<$1.00M x 1/2
Jacob Bernard-DockerRD25BUF$1.50M x 3
$1.25M x 2
$1.00M x 1
$0.88M x 1
(DET)
Erik BrannstromLD26BUF<$1.00M x 1/2
Bowen ByramLD24BUFTop-50 Free Agent$6.25M x 2
Tyson KozakC23BUF<$1.00M x 1/2$0.78M x 3
Devon LeviG24BUF$1.50M x 3
$1.00M x 2
$0.90M x 1
$0.81M x 2
Ryan McLeodC26BUFTop-50 Free Agent$5.00M x 4
Jack QuinnRW24BUF$4.17M x 3
$3.50M x 2
$1.00M x 1
$3.38M x 2
J.J. PeterkaLW23BUFView Analysis$7.70M x 5
(UTA)
Kevin BahlLD25CGYView Analysis$5.35M x 6
Matt CoronatoRW23CGYView Analysis$6.50M x 7
Morgan FrostC26CGY$4.50M x 3
$4.00M x 2
$3.50M x 1
$4.38M x 2
(CGY)
Adam KlapkaRW25CGY<$1.00M x 1/2$1.25M x 2
Connor Zary C24CGY$5.30M x 5
$4.50M x 4
$3.67M x 3
$3.10M x 2
$1.00M x 1
$3.78M x 3
Louis CrevierRD24CHI<$1.00M x 1/2$0.90M x 2
Wyatt KaiserLD23CHI$1.25M x 3
$1.00M x 2
$0.87M x 1
$1.70M x 2
Philipp KurashevLW26CHI$2.25M x 2
$2.25M x 1 (QO)
$1.10M x 1 (NO QO)
$1.20M x 1
(SJS)
Arvid SoderblomG26CHI$2.67M x 3
$2.10M x 2
$1.50M x 1
$2.75M x 2
Sam MalinskiRD27COL$1.85M x 3
$1.30M x 2
$1.00M x 1
$1.40M x 1
Jordan HarrisLD25CBJ$1.00M x 2
$1.40M x 1 (QO)
$0.90M x 1 (No QO)
$0.83M x 1
(BOS)
Mikael PyyhtiaLW24CBJ<$1.00M x 1/2$0.78M x 1
Daniil TarasovG26CBJ$1.00M x 2
$1.26M x 1 (QO)
$0.95M x 1 (No QO)
$1.05M x 1
(FLA)
Dmitri VoronkovLW25CBJTop-50 Free Agent$4.18M x 2
(CBJ)
Mavrik BourqueC23DAL$2.00M x 3
$1.60M x 2
$0.87M x 1
$0.95M x 1
Nils LundkvistRD25DAL$1.25M x 2
$1.25M x 1 (QO)
$0.90M x 1 (No QO)
$1.25M x 1
Jonatan BerggrenRW25DET$3.00M x 4
$2.50M x 3
$2.00M x 2
$1.35M x 1
$1.83M x 1
Albert JohanssonLD24DET$2.00M x 3
$1.35M x 2
$1.00M x 1
$1.13M x 2
Elmer SoderblomLW25DET<$1.00M x 1/2$1.13M x 2
Evan Bouchard RD26EDMTop-50 Free Agent$10.50M x 4
Noah PhilpC27EDM<$1.00M x 1/2$0.78M x 1
Tobias BjornfotLD24FLA<$1.00M x 1/2$0.78M x 1
Mackie SamoskevichRW23FLA$2.50M x 3
$1.85M x 2
$1.00M x 1
$0.78M x 1
Alex LaferriereRW24LAKTop-50 Free Agent$4.10M x 3
Declan ChisholmLD25MIN$2.00M x 3
$1.40M x 2
$1.15M x 1
$1.60M x 2
(WSH)
Marco RossiC24MINTop-50 Free Agent$5.00M x 3
Jakub DobesG24MTL$2.50M x 4
$2.00M x 3
$1.50M x 2

$1.00M x 1
$0.97M x 2
Emil HeinemanLW24MTL$1.40M x 3
$1.15M x 2

$0.87M x 1
$1.10M x 2
(NYI)
Cayden PrimeauG26MTL<$1.00M x 1/2$0.78M x 1
(CAR)
Jayden StrubleLD24MTL$1.85M x 3
$1.35M x 2
$1.00M x 1
$1.41M x 2
Luke EvangelistaRW23NSH$3.83M x 3
$3.25M x 2
$1.00M x 1
$3.00M x 2
Cody GlassC26NJD$2.50M x 2
$2.50M x 1 (QO)
$1.40M x 1 (No QO)
$2.50M x 2
(NJD)
Luke HughesLD22NJDTop-50 Free Agent$9.00M x 7
Adam BoqvistRD25NYI$1.00M x 3
<$1.00M x 1/2
$0.85M x 1
Noah DobsonRD25NYIView Analysis$9.50M x 8
(MTL)
Marc GatcombC26NYI<$1.00M x 1/2$0.90M x 1
Simon Holmstrom LW24NYITop-50 Free Agent$3.63M x 2
(NYI)
Scott PerunovichLD27NYI$1.10M x 2
$1.15M x 1 (QO)
$0.90M x 1 (No QO)
$0.78M x 1
(UTA)
Alexander RomanovLD25NYITop-50 Free Agent$6.25M x 8
(NYI)
Maxim TsyplakovLW26NYI$3.50M x 4
$3.00M x 3

$2.50M x 2
$2.00M x 1
$2.25M x 2
Will CuylleLW23NYRTop-50 Free Agent$3.90M x 2
Adam EdstromC25NYR$1.10M x 3
$1.00M x 2
$0.90M x 1
$0.98M x 2
Zac JonesLD25NYR$1.25M x 2
$1.00M x 1
$0.90M x 1
(BUF)
Arthur KaliyevRW24NYR<$1.00M x 1/2$0.78M x 1
(OTT)
K’Andre MillerLD25NYRTop-50 Free Agent$7.50M x 8
(CAR)
Matt RempeRW23NYR$1.00M x 3
<$1.00M x 1/2
$0.98M x 2
Tyler KlevenLD23OTT$1.50M x 3
$1.25M x 2
$0.87M x 1
$1.60M x 2
Leevi MerilainenG23OTT$1.67M x 3
$1.20M x 2

$0.81M x 1
$1.05M x 1
Fabian ZetterlundLW26OTT$5.00M x 5
$4.63M x 4
$4.33M x 3

$4.00M x 2
$3.50M x 1
$4.28M x 3
Noah Cates C26PHI$4.80M x 5
$4.50M x 4
$4.25M x 3
$3.75M x 2
$3.50M x 1
$4.00M x 4
Tyson FoersterRW23PHI$4.00M x 3
$3.38M x 2
$1.00M x 1
$3.75M x 2
Jakob PelletierLW24PHI$1.83M x 3
$1.50M x 2
$1.00M x 1
$0.78M x 3
(TBL)
Cam YorkLD24PHITop-50 Free Agent$5.15M x 5
Emil BemstromC26PIT<$1.00M x 1/2
Connor DewarLW26PIT$1.67M x 3
$1.30M x 2
$1.10M x 1
$1.10M x 1
Pierre-Olivier JosephLD26PIT$1.00M x 2
$0.98M x 1 (QO)
$0.80M x 1 (No QO)
$0.78M x 1
(VAN)
Philip TomasinoRW24PIT$3.33M x 3
$2.75M x 2
$1.30M x 1
$1.75M x 1
Conor TimminsRD27PIT$1.40M x 2
$1.10M x 1 (QO)
$0.95M x 1 (No QO)
$2.20M x 2
(BUF)
Noah GregorLW27SJS<$1.00M x 1/2$0.78M x 1
(FLA)
Danil GushchinLW23SJS<$1.00M x 1/2$0.78M x 1
(COL)
Klim KostinLW26SJS$1.00M x 2
$2.20M x 1 (No QO)

$0.95M x 1
Nikolai KovalenkoRW26SJS$1.75M x 3
$1.30M x 2
$1.00M x 1
Shakir MukhamadullinLD23SJS$1.30M x 2
$0.87M x 1
$1.00M x 1
Jack ThompsonRD23SJS$1.00M x 2
$0.85M x 1
$0.80M x 1
Ryker EvansLD24SEA$5.00M x 6
$4.50M x 5
$4.00M x 4
$3.50M x 3
$3.00M x 2
$1.30M x 1
$2.05M x 2
Cale FleuryRD27SEA<$1.00M x 1/2$0.89M x 2
Kaapo KakkoRW24SEATop-50 Free Agent$4.53M x 3
Ty KartyeLW24SEA$1.45M x 3
$1.20M x 2
$0.90M x 1
$1.25M x 2
Joel HoferG25STL$4.50M x 5
$4.00M x 4

$3.33M x 3
$2.75M x 2
$1.75M x 1
$3.40M x 2
Gage GoncalvesC24TBL$1.75M x 3
$1.30M x 2
$0.90M x 1
$1.20M x 2
Pontus HolmbergC26TOR$2.50M x 4
$2.17M x 3

$1.75M x 2
$1.50M x 1
$1.55M x 2
(TBL)
Matthew KniesLW23TORView Analysis$7.75M x 6
Nicholas RobertsonLW24TOR$3.00M x 4
$2.50M x 3
$2.00M x 2
$1.35M x 1
$1.83M x 1
Jack McBainC25UTA$3.50M x 4
$3.17M x 3
$2.75M x 2
$1.80M x 1
$4.25M x 5
Arshdeep BainsLW24VAN<$1.00M x 1/2$0.78M x 2
Aatu RatyC23VAN<$1.00M x 1/2$0.78M x 2
Max SassonC25VAN<$1.00M x 1/2$0.78M x 1
Nicolas HagueLD27VGK$4.25M x 5
$4.00M x 4
$3.50M x 3

$3.00M x 2
$2.70M x 1
$5.50M x 4
(NSH)
Alexander HoltzRW23VGK<$1.00M x 1/2$0.84M x 2
Cole SchwindtRW24VGK<$1.00M x 1/2$0.83M x 1
Hendrix LapierreC23WSH$1.25M x 2
$0.87M x 1
$0.85M x 1
Morgan Barron C27WPG$1.83M x 3
$1.50M x 2

$1.40M x 1
$1.85M x 2
Ramsus KupariC25WPG$1.25M x 3
$1.10M x 2

$1.10M x 1 (QO)
$0.90M x 1 (No QO)
Dylan SambergLD26WPGTop-50 Free Agent$5.75M x 3
Gabriel VilardiRW26WPGTop-50 Free Agent$7.50M x 6