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 100, 50 ;
NHL Preview 2024-25 140 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  
101
NYR
RW
23
82
28
29
57
0.70
2
40
79
30
31
61
$
102
Col
RW
25
77
24
29
53
0.69
-9
42
80
29
32
61
103
Ana
RW
27
76
20
34
54
0.71
-10
24
77
30
30
60
104
Mtl
RW
20
82
20
30
50
0.61
-19
55
81
26
34
60
105
Tor
C
34
80
29
36
65
0.81
2
30
82
25
35
60
$
106
LA
C
37
81
26
44
70
0.86
11
22
80
22
38
60
107
VGK
C
30
54
17
21
38
0.70
-28
22
78
26
33
59
+
108
Buf
RW
28
75
22
37
59
0.79
9
54
71
24
35
59
109
Ana
C
21
64
19
23
42
0.66
-23
86
80
24
35
59
$ +
110
VGK
LW
28
82
19
26
45
0.55
15
42
81
21
38
59
111
Phi
LW
23
31
6
9
15
0.48
-1
30
76
19
40
59
+
112
Uta
RW
22
82
28
22
50
0.61
10
28
82
30
28
58
$
113
Dal
LW
35
82
21
39
60
0.73
8
41
82
27
31
58
$
114
Dal
C
33
80
25
40
65
0.81
15
20
81
24
34
58
$
115
Car
C
21
24
6
8
14
0.58
10
4
82
24
34
58
116
Chi
LW
30
76
25
28
53
0.70
15
10
82
23
35
58
117
Bos
C
27
78
21
38
59
0.76
12
18
82
21
37
58
118
CBJ
D
27
70
11
46
57
0.81
0
22
71
10
48
58
+
119
Van
RW
28
80
19
21
40
0.50
4
18
79
29
28
57
120
Cgy
LW
26
82
31
28
59
0.72
-29
8
80
27
30
57
121
Min
C
23
82
21
19
40
0.49
-4
47
82
26
31
57
$
122
Col
LW
29
45
16
18
34
0.76
11
14
70
24
33
57
+
123
VGK
RW
32
56
16
37
53
0.95
1
22
66
19
38
57
+
124
LA
LW
28
72
22
24
46
0.64
-9
12
75
28
28
56
$ Z
125
Wsh
RW
39
79
31
34
65
0.82
-22
20
81
26
30
56
126
Sea
D
27
59
11
35
46
0.78
8
78
76
15
41
56
+
127
Cgy
LW
31
81
12
40
52
0.64
-29
49
80
14
42
56
128
NJ
D
21
82
9
38
47
0.57
-25
28
82
12
44
56
$
129
TB
RW
29
82
20
39
59
0.72
-20
12
82
25
30
55
Z
130
SJ
RW
22
80
16
29
45
0.56
-45
30
81
21
34
55
131
Sea
C
21
77
15
22
37
0.48
-11
20
82
21
34
55
132
VGK
D
29
47
5
37
42
0.89
4
6
77
10
45
55
$ +
133
VGK
RW
23
47
13
11
24
0.51
8
12
77
27
26
53
+
134
Ott
RW
25
82
24
20
44
0.54
-34
33
82
26
27
53
$
135
Wpg
RW
22
71
19
19
38
0.54
13
12
78
25
28
53
136
LA
LW
29
82
31
26
57
0.70
11
28
81
24
29
53
137
CBJ
C
20
49
12
15
27
0.55
-21
16
82
23
30
53
+
138
Mtl
D
30
82
11
51
62
0.76
-24
58
77
9
44
53
139
Dal
RW
32
68
25
27
52
0.76
10
26
74
24
28
52
$ +
140
Pit
LW
31
70
15
22
37
0.53
4
22
76
24
28
52
+
141
Pit
W
27
71
18
27
45
0.63
-3
8
77
22
30
52
+ Z
142
Wpg
RW
35
81
23
52
75
0.93
7
8
81
17
35
52
$ Z
143
Min
RW
37
69
12
51
63
0.91
-5
30
73
15
37
52
+
144
Det
D
23
82
9
33
42
0.51
-7
51
82
10
42
52
145
Tor
D
30
72
7
51
58
0.81
7
27
77
9
43
52
146
Cgy
W
23
63
14
20
34
0.54
12
22
75
22
29
51
$
147
VGK
C
31
70
30
30
60
0.86
15
22
75
22
29
51
+
148
Cgy
RW
24
82
22
28
50
0.61
-13
37
82
20
31
51
149
SJ
LW
32
79
33
22
55
0.70
-6
14
80
28
22
50
150
Nsh
RW
22
80
16
23
39
0.49
0
18
82
26
24
50
$