SELECT nhl_players.last_name , nhl_players.first_name , nhl_players.player_id , nhl_players.birth_date , FLOOR(DATEDIFF('2024-10-10', nhl_players.birth_date) / 365) AS age , nhl_players.rookie , IF(nhl_players.player_id in (0), 'UFA', nhl_teams.team_code) AS team_code , nhl_positions.position_abbreviation , nhl_career_stats_skaters.team_code_finished , spofo_mag_projections.mag_top400_rk AS db_rank , ed_sportscodes.tsf_global AS tsf_global , (spofo_mag_projections.g + spofo_mag_projections.a) AS predicted_points , spofo_mag_projections.g AS predicted_goals , spofo_mag_projections.a AS predicted_assists , spofo_mag_projections.gp AS predicted_GP , IF(nhl_career_stats_skaters.gp IS NULL, '0', nhl_career_stats_skaters.gp) AS actual_GP , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.g) AS actual_goals , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.a) AS actual_assists , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.pts) AS actual_points , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.plus_minus) AS actual_plus_minus , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.pts / nhl_career_stats_skaters.gp) AS actual_pts_per_gp , IF(nhl_career_stats_skaters.gp IS NULL, '—', nhl_career_stats_skaters.pim) AS actual_pim , spofo_mag_projections.injury_concern , spofo_mag_projections.must_draft , spofo_mag_projections.contract_year , spofo_mag_projections.fantasy_tags_gte FROM spofo_mag_projections LEFT JOIN nhl_players on nhl_players.player_id = spofo_mag_projections.player_id LEFT OUTER JOIN nhl_career_stats_skaters ON nhl_career_stats_skaters.player_id = spofo_mag_projections.player_id AND (nhl_career_stats_skaters.date_desc = '2023-24' AND nhl_career_stats_skaters.league = 'NHL' AND nhl_career_stats_skaters.date_sort = '2023.9' AND nhl_career_stats_skaters.line_desc = 'normal') LEFT JOIN ed_sportscodes ON spofo_mag_projections.player_id = ed_sportscodes.tsf AND ed_sportscodes.league_id = 'hockey' LEFT JOIN nhl_positions ON nhl_players.position_1 = nhl_positions.position_id LEFT JOIN nhl_teams ON nhl_players.team_id = nhl_teams.team_id WHERE TRUE AND spofo_mag_projections.season = '2024-25' AND spofo_mag_projections.gp IS NOT NULL AND spofo_mag_projections.mag_top400_rk < 401 AND nhl_positions.position_abbreviation != 'G' ORDER BY spofo_mag_projections.mag_top400_rk ASC LIMIT 50, 50 ;
NHL Preview 2024-25 139 SportsForecaster.com
Top 400 Skaters
Get spreadsheets at SportsForecaster.com

$→ Contract year • +→ Injury concern • K→ Must-draft player • Z→ Sleeper • R→ Rookie

Ages as of October 10, 2024

2023-24 2024-25 Forecast
  Name Team Pos Age GP G A P P/GP +/- PIM GP G A P  
51
Fla
RW
28
82
57
37
94
1.15
29
31
82
38
35
73
52
LA
RW
28
77
28
47
75
0.97
13
72
80
37
36
73
53
Buf
W
26
71
29
27
56
0.79
-1
43
77
35
38
73
+
54
TB
LW
26
82
26
49
75
0.91
1
79
81
31
42
73
55
Edm
LW
31
80
18
49
67
0.84
10
36
79
23
50
73
56
NYR
D
26
72
17
56
73
1.01
21
36
79
15
58
73
+
57
Det
LW
26
82
27
40
67
0.82
1
34
82
34
38
72
58
Buf
D
24
81
20
39
59
0.73
-3
66
82
22
50
72
59
Van
LW
27
81
40
33
73
0.90
23
14
82
34
37
71
$
60
Wpg
RW
25
47
22
14
36
0.77
11
14
74
32
39
71
$ +
61
NYR
C
31
82
25
52
77
0.94
16
55
82
23
48
71
62
Pit
D
34
82
11
45
56
0.68
4
44
81
16
55
71
63
TB
D
33
78
13
63
76
0.97
18
76
79
11
60
71
64
Phi
RW
27
76
33
35
68
0.89
4
67
80
35
35
70
65
NYI
C
29
81
33
35
68
0.84
-1
39
82
34
36
70
66
Mtl
LW
23
82
28
37
65
0.79
-4
16
80
31
39
70
67
Ott
RW
26
82
28
38
66
0.80
-9
42
82
30
40
70
68
Fla
LW
29
76
34
38
72
0.95
17
36
79
35
34
69
$
69
LA
C
22
80
20
35
55
0.69
19
42
82
28
41
69
70
Mtl
D
24
79
10
60
70
0.89
12
36
81
14
55
69
$
71
Ott
C
23
79
18
29
47
0.59
-4
42
80
32
36
68
72
Fla
RW
36
82
29
38
67
0.82
2
78
81
28
40
68
$ +
73
Det
RW
35
50
20
27
47
0.94
-5
16
77
26
42
68
$ +
74
Uta
C
28
79
22
39
61
0.77
-16
10
77
24
44
68
75
Min
C
27
77
30
34
64
0.83
18
60
75
29
38
67
76
Wpg
D
29
81
10
59
69
0.85
34
44
79
13
54
67
77
Sea
LW
28
80
29
33
62
0.78
-10
31
81
34
32
66
78
Nsh
RW
33
82
42
27
69
0.84
-2
40
80
30
36
66
79
Uta
C
20
82
20
24
44
0.54
-13
18
82
27
39
66
80
Cgy
C
34
82
29
46
75
0.91
0
43
79
26
40
66
81
NYI
RW
29
79
19
37
56
0.71
12
28
77
21
45
66
$
82
Bos
LW
25
80
18
39
57
0.71
10
32
81
21
45
66
83
Dal
D
25
71
9
45
54
0.76
8
36
78
13
53
66
+
84
Mtl
RW
26
18
6
3
9
0.50
-10
6
75
33
32
65
+
85
NJ
LW
28
69
28
24
52
0.75
-28
45
77
31
34
65
+
86
Car
LW
24
59
19
33
52
0.88
13
58
69
30
35
65
+
87
Nsh
C
33
82
26
43
69
0.84
6
18
80
23
42
65
88
Pit
C
38
82
27
40
67
0.82
5
70
77
21
44
65
89
Tor
LW
24
82
17
40
57
0.70
-4
8
81
19
46
65
90
Ana
LW
33
82
39
36
75
0.91
19
26
80
38
26
64
91
Car
LW
28
82
25
36
61
0.74
27
29
76
27
37
64
$
92
Ott
RW
36
82
21
43
64
0.78
-14
26
82
22
42
64
$
93
Col
C
33
82
34
35
69
0.84
-5
28
82
32
31
63
$
94
Wsh
C
27
82
27
40
67
0.82
-13
22
82
24
39
63
95
Uta
RW
21
45
18
17
35
0.78
-1
14
80
26
36
62
$
96
Bos
C
29
75
15
29
44
0.59
-14
25
80
25
37
62
97
NJ
D
31
20
5
11
16
0.80
-8
20
80
15
47
62
+
98
SJ
LW
32
74
24
22
46
0.62
-2
34
77
37
24
61
$ Z
99
Phi
RW
25
78
28
25
53
0.68
-5
12
81
32
29
61
100
Pit
RW
32
62
28
28
56
0.90
10
20
71
31
30
61
+