Edgehalla

Rising players board

Ascension: who's rising

Every NHL skater's last few games against his previous 20: more ice time, a PP1 spot, a promotion to the top six, minutes with his team's best players and better chances. Each player gets a 0–100 score with the reasons spelled out, so you can grab the riser before your league notices, and see who is losing his role.

2026-27 · games through Oct 20, 2026 · 638 skaters scored on the last 5 games · updated Oct 21, 2026.

Biggest risers

  1. Neal PionkD · WPG · 61% rostered87SurgingFill-in
    • 5 P in last 5 (0.30/GP before)
    • PP1 in 5 of last 5 (was 1 of 20)
    • +1:26 PP TOI
  2. Kailer YamamotoR · UTA · 11% rostered86Surging
    • 5 P in last 5 (0.30/GP before)
    • +1:06 PP TOI
    • 20% of team PP time (was 0%)
  3. Mark JankowskiL · CAR · 23% rostered85SurgingFill-in
    • ixG/60 2.35 (was 0.80)
    • +2:54 TOI a game
    • Top-six in 2 of last 5 (was 2 of 20)
  4. Noah OstlundC · BUF · 32% rostered85SurgingFill-in
    • ixG/60 0.99 (was 0.61)
    • +2:31 PP TOI
    • PP1 in 5 of last 5 (was 5 of 20)
  5. Jonas BrodinD · MIN · 8% rostered83SurgingFill-in
    • On-ice xGF/60 4.21 (was 2.39)
    • +4:25 TOI a game
    • 74% of 5v5 TOI with Hughes (was 6%)

Biggest fallers: losing their role

  1. Calum RitchieC · NYI · 29% rostered10Falling
    • On-ice xGF/60 1.13 (was 2.78)
    • −2:09 PP TOI
    • PP1 in 0 of last 5 (was 15 of 20)
  2. Marco RossiC · VAN · 56% rostered14Falling
    • 0 P in last 5 (0.85/GP before)
    • PP1 in 3 of last 5 (was 18 of 20)
    • Line Watch: moved down a line Oct 15
  3. Martin NecasC · COL · 100% rostered14Falling
    • On-ice xGF/60 2.16 (was 3.77)
    • PP1 in 2 of last 5 (was 20 of 20)
    • −0:58 PP TOI
  4. Chris KreiderL · MTL · 55% rostered15FallingNew role
    • On-ice xGF/60 2.16 (was 3.65)
    • −1:29 TOI a game
    • 43% of 5v5 TOI with top players (was 100%)
  5. Bryan RustR · PIT · 80% rostered15Falling
    • 3 P in last 5 (1.10/GP before)
    • −2:23 PP TOI
    • PP1 in 2 of last 5 (was 17 of 20)

The board

Sort by
173 players
Show
Rising players, last 5 games vs the previous 20, sorted by Ascension score.
PlayerScore

11% rostered

86
Mark JankowskiL · CARFill-inStint: LongOut

Filling in for Jordan Staal on L2 (+1 more out) (IR, calf, est. return Dec 3 · ESPN)

23% rostered

85
Noah OstlundC · BUFFill-inStint: Unknown

Filling in for Rasmus Dahlin on D2/PP1 (+1 more out) (no timeline · scratch report)

32% rostered

85
Jonas BrodinD · MINFill-inStint: Short

Filling in for Jared Spurgeon on D1 (+1 more out) (IR, upper body, est. return Oct 27 · ESPN)

8% rostered

83
Adam EdstromC · NSHNew roleFill-inStint: Lasting

New team · 8 GP with NSH (from NYR) · filling in for Mavrik Bourque on L1 (day-to-day, upper body · ESPN)

23% rostered

83
Jonathan LekkerimäkiR · VANFill-inStint: Short

Filling in for Marco Rossi on L3/PP1 (day-to-day, illness · ESPN)

27% rostered

83
Mathieu JosephR · EDMNew roleFill-inStint: Lasting

New team · 8 GP with EDM (from LAK) · filling in for Ryan Nugent-Hopkins on L2/PP1 (IR, lower body, est. return Oct 22 · ESPN)

4% rostered

82
Joel FarabeeL · CGYCoach promotionStint: Unknown

Promoted to L1/PP1 for the last 8 games (was L2)

13% rostered

82

7% rostered

82
Michael KesselringD · SJSNew roleStint: Lasting

New team · 9 GP with SJS (from BUF)

7% rostered

81
Lars EllerC · FLANew roleStint: Lasting

New team · 9 GP with FLA (from OTT)

5% rostered

81
William CarrierL · CARFill-inStint: Long

Filling in for Taylor Hall on L1 (+2 more out) (IR, upper body, est. return Nov 7 · ESPN)

17% rostered

81

21% rostered

81
Olen ZellwegerD · BUFNew roleFill-inStint: Lasting

New team · 8 GP with BUF (from ANA) · filling in for Rasmus Dahlin on D2/PP1 (no timeline · scratch report)

33% rostered

81
Kent JohnsonC · CBJCoach promotionStint: Unknown

Promoted to L1/PP1 for the last 8 games (was L4/PP2)

42% rostered

81
Jared SpurgeonD · MINCoach promotionStint: UnknownOut

Promoted to D1 for the last 4 games (was D2)

44% rostered

80
Pierre-Luc DuboisC · WSHCoach promotionStint: UnknownOut

Promoted to L1/PP1 for the last 4 games (was L1/PP2)

45% rostered

79
Martin PospisilC · CGYFill-inStint: Short

Filling in for Samuel Honzek on L2 (IR, lower body, est. return Oct 28 · ESPN)

12% rostered

78
Adam WilsbyD · NSHCoach promotionStint: Unknown

Promoted to D1 for the last 4 games (was D2)

9% rostered

78

16% rostered

77

15% rostered

77
Arttu HyryR · DALFill-inStint: Long

Filling in for Matt Duchene on L2/PP1 (LTIR, abdomen, est. return Jan 12 · ESPN)

9% rostered

77
Aydar SunievL · CGYFill-inStint: Short

Filling in for Samuel Honzek on L2 (IR, lower body, est. return Oct 28 · ESPN)

11% rostered

77

31% rostered

77
Arseny GritsyukR · NJDRole ending

Luke Evangelista is back on L1/PP1; he lost the slot

24% rostered

77

16% rostered

77
Jonatan BerggrenR · STLRole ending

Pavel Buchnevich is back on L2; he lost the slot

5% rostered

76
Elias PetterssonD · VANCoach promotionStint: Unknown

Promoted to D1 for the last 5 games (was D3)

35% rostered

75
Simon NemecD · CGYNew roleStint: Lasting

New team · 8 GP with CGY (from NJD)

48% rostered

75
Frank VatranoR · ANAFill-inStint: Long

Filling in for Troy Terry on L2/PP1 (LTIR, hip, est. return Nov 21 · ESPN)

5% rostered

75

37% rostered

74
Zachary BolducR · MTLCoach promotionStint: Unknown

Promoted to L3/PP1 for the last 2 games (was L2/PP2)

31% rostered

74

0% rostered

74
Spencer StastneyD · PITNew roleFill-inStint: Lasting

New team · 5 GP with PIT (from EDM) · filling in for Trevor van Riemsdyk on D1 (IR, lower body, est. return Oct 22 · ESPN)

0% rostered

73
Ondrej PalatL · NYIFill-inStint: Long

Filling in for Calum Ritchie on L1 (+1 more out) (out, lower body, est. return Dec 1 · ESPN)

0% rostered

73
Nikita NesterenkoC · ANAFill-inStint: Long

Filling in for Troy Terry on L2/PP1 (LTIR, hip, est. return Nov 21 · ESPN)

6% rostered

73

31% rostered

73
Simon HolmstromR · NYIFill-inStint: Long

Filling in for Matias Maccelli on L4/PP1 (+2 more out) (out, lower body, est. return Nov 17 · ESPN)

14% rostered

72
Ethan Del MastroD · CHICoach promotionStint: Unknown

Promoted to D2 for the last 2 games (was D3)

5% rostered

72

18% rostered

72
Alexandre CarrierD · MTLFill-inStint: Short

Filling in for Mike Matheson on D1 (day-to-day, lower body · ESPN)

15% rostered

72
Nick PaulL · TORNew roleFill-inStint: Lasting

New team · 10 GP with TOR (from TBL) · filling in for John Tavares on L2/PP1 (IR, lower body, est. return Nov 27 · ESPN)

10% rostered

72

30% rostered

71
Evan RodriguesC · NJDNew roleFill-inStint: Lasting

New team · 8 GP with NJD (from FLA) · filling in for Luke Evangelista on L1/PP1 (inferred from lineup)

8% rostered

71
Alexander KerfootC · NSHNew roleFill-inStint: Lasting

New team · 8 GP with NSH (from UTA) · filling in for Mavrik Bourque on L1 (day-to-day, upper body · ESPN)

3% rostered

71
Daemon HuntD · MINFill-inStint: Short

Filling in for Jared Spurgeon on D1 (IR, upper body, est. return Oct 27 · ESPN)

0% rostered

70
Maxim ShabanovR · MINNew roleStint: Lasting

New team · 9 GP with MIN (from NYI)

33% rostered

70
Connor CliftonD · BOSNew roleFill-inStint: LastingOut

New team · 6 GP with BOS (from PIT) · filling in for Charlie McAvoy on D1/PP1 (inferred from lineup)

6% rostered

70
Eric RobinsonL · CARFill-inStint: Long

Filling in for Jordan Staal on L2 (+1 more out) (IR, calf, est. return Dec 3 · ESPN)

7% rostered

70

4% rostered

70

New role and want to know what it led to for similar players? See Breakout Comps.

How Ascension works

We take each skater's last 3, 5 or 10 games (you pick the window) and compare them with his previous 20 games. Early in the season the 20 reach back into last season. Six components measure the change:

Ice time
All-situations, 5v5 and power-play TOI per game in the window against his previous 20 games. A two-minute jump in 5v5 time or a minute more on the power play counts for a lot; a one-game spike is shrunk away.
Power-play role
His share of the team's PP time and how many games he spent on PP1 (detected from shift data), compared with before. "PP1 in 4 of last 5 (was 0 of 10)" is the classic riser.
Line role
His line slot each game from our line detector: L1 counts 1, L2 0.67, L3 0.33, L4 0 (D1 1, D2 0.5, D3 0). Moving into the top six or top four shows up here.
Elite linemates
The share of his 5v5 ice time spent with his team's top three scorers (points per game over their last 20 games), from shared-TOI pairs. "61% of 5v5 TOI with McDavid" is a role, not luck.
Underlying production
Individual expected goals per 60 (our xG v1 model), on-ice 5v5 xGF/60 and points per game, window vs baseline. It carries the most weight because it was the strongest predictor in the backtest.
Line Watch events
Promotions and demotions our deployment tracker flagged in the window (PP1 in or out, line up or down, ice-time jumps or drops), weighted by their significance score.

Each component is a signed value from −1 to +1 (the tanh of the change over a typical move), shrunk by sample size: the window counts for n / (n + 1.5) and the baseline for b / (b + 3). The weights are ice time 0.15, power-play role 0.15, line role 0.05, elite linemates 0.05, underlying production 0.55, line watch events 0.05. The score is 50 + 50 × tanh(Σ weight × value / 0.4): 50 means no change. 75+ is Surging, 60+ Rising, 41–59 Steady, 26–40 Cooling and 25 or lower Falling.

Full details, including how the weights were fit: Ascension methodology.

Fill-ins, new roles and promotions

Every player on the board can carry a label that says why his role changed. Labels are display only: the score stays the same.

New role
He changed teams and has played at least one game for the new club. His role there is still settling, so these players get their own tab.
Fill-in
A regular is out (injured, scratched or off the roster) and he took that player's line or power-play slot, or at least a minute more a game at the same position. The reason line names the player he is covering for and, when ESPN has one, the expected return date.
Next up
A regular is out and he is next in line for the spot, but he has not clearly taken it yet.
Coach promotion
Moved up a line or onto PP1 for at least two straight games with nobody out: the coach chose him.
Small sample
Fewer than 3 games in the window or 10 in the baseline. The score is shrunk toward 50, but read it with care.
Production only
Almost all of his score is points and chances, with no more ice time or a better role behind it.
Role ending
The regular he was covering for is back in the lineup and he lost the slot.

Fill-ins also get a durability bucket built from facts, not a model: Short (the regular is day-to-day or due back within 7 days), Medium (8–14 days), Long (more than 14), Unknown (out with no reported return) and Lasting (a new team, or the regular is off the roster). Injury reports come from ESPN, checked every hour and every 20 minutes on game nights; lineup scratches are read after each game, so a regular who sits two straight games without a report shows as out with no timeline.

The Value sort: tonight, this week, rest of season

Sort by Value to rank the same players by what they should add to your team over the horizon you pick: Tonight, This week or Rest of season. Each player's per-game stat line is his rest-of-season projection (LineupExperts, with our derived model filling power-play points, +/- and faceoffs), multiplied out over his team's games in the horizon and his own availability (nothing while he is out, half a game tonight if he is day-to-day). The totals are rated like the Week Planner: z-scores against the top 300 skaters for category leagues (+/- counts half on Tonight and This week; hits, PIM and faceoff wins are capped at +3), or projected fantasy points for points leagues. We also tested adding a fill-in's or promoted player's extra minutes on top of his projection: over two seasons it made the next-game and next-four-game forecasts slightly worse in every category, so it is switched off until a better role model wins.

Does it work? The backtest

We scored every skater every week of 2024-25 and 2025-26 and checked his points per game over the next 10 games. The weights were fit on 2025-26, Oct 27 – Dec 29 (6,020 player-weeks); the rows below are games the fit never saw.

Ascension backtest: next-10-game points per game vs the previous 20, by holdout season.
HoldoutPlayer-weeksR² baseline → with scoreError cutSurging next 10Falling next 10
2025-26, Jan – Mar6,7880.487 → 0.5011.3%+0.08 P/GP, 58% beat baseline−0.09 P/GP, 32% beat baseline
2024-25, Nov – Mar (no pair data)10,7610.426 → 0.4401.2%+0.10 P/GP, 61% beat baseline−0.10 P/GP, 29% beat baseline

The honest caveat: over just 10 games, a simple "previous 20 plus last 5 points" model predicts points as well as the score does (R² 0.515). Ascension's value is that it sees the role change (PP1, the top line, more minutes) before or without the points, and tells you why.

FAQ

What is the Ascension score?

A 0–100 score of how much a skater's role and underlying production have changed over his last 3, 5 or 10 games compared with his previous 20. 50 means no change; Surging (75+) players are gaining ice time, power-play time, a better line or better linemates and are producing more chances.

Does a high Ascension score predict more points?

A little, and we publish how much. On games the weights never saw (2025-26, Jan – Mar), Surging players averaged +0.08 points per game more over their next 10 games than in their previous 20, and 58% beat their baseline; Falling players averaged -0.09 and only 32% beat it. Adding the score to a baseline-only model cut the error by 1.3%. Ten-game point totals are noisy, so treat it as a tiebreaker and an early warning, not a guarantee.

Is this just a hot streak list?

No. Points are only one part of one component. A player can be Surging with zero points if he has moved onto PP1 and the top line with more ice time, which is exactly when to pick him up. Check the Luck Meter as well: a riser who is also running hot is more likely to cool off.

Why is a player I know is rising not on the board?

Players need at least five games before the window as a baseline, and anyone who has not played in three weeks drops off. Early in the season the baseline reaches back into last season, which the board notes. The Regulars only filter also hides depth players under 12 minutes a night.

How often does the board update?

After each night's games: the board refreshes when the night's games are ingested and again in the morning once Line Watch events are re-scored.

Can I see only players I can actually pick up?

Yes. By default the board shows players available in an average league: rostered in 50% of leagues or fewer (LineupExperts rostered %), and you can switch the cut to 25% or 75% or show everyone. Connect your league and you can show only the players who are free in it.

What do Fill-in, New role and Coach promotion mean?

They say why his role changed. A fill-in took the slot of a regular who is out, and the board names that player and his expected return. New role means he changed teams. A coach promotion is a move up the lineup with nobody out. Labels never change the score; they tell you how long the bump is likely to last.

What is the Value sort?

A second ranking that turns each player's role into fantasy value for your scoring: the Yahoo standard, roto, banger, classic or points presets, your own custom weights, or your connected league's settings. It counts the games his team plays in the horizon (back-to-backs are marked) and whether he is available for them. Signed in, your choices are saved to your account.

Why is Rest of season marked Beta?

Rest of season is his season projection over his team's remaining games. It does not yet account for how long a new role lasts, because our role model has not passed its backtest on two seasons of role changes. Treat it as a rough guide; Tonight and This week depend mostly on the schedule.