Hockey Terminal
Be a GM

← All players

Photo of Sonny Milano

Sonny Milano

#15 · Left wing · Free agent, last with the Washington Capitals

Born May 12, 1996 in Massapequa, New York, USA · 6'0", 205 lb · Shoots left · Drafted 16th overall in 2014 by CBJ (round 1)

Compare with a similar player

The forwards closest to him in points in 2019-20. Pick one to see the two side by side, or choose someone else.

Oskar Sundqvist STL · 23 P in 57 GP Jeff Skinner BUF · 23 P in 59 GP Filip Chytil NYR · 23 P in 60 GP Colin White OTT · 23 P in 61 GP Ryan Donato MIN · 23 P in 62 GP

Career

Regular season games only. Pick a season to see its game log below. Cap hit is what he counted against the salary cap that season, where it is known.

01020302015-16: 1 points115-162016-17: 0 points016-172017-18: 22 points2217-182018-19: 1 points118-192019-20: 23 points2319-202020-21: 0 points020-212021-22: 34 points3421-222022-23: 33 points3322-232023-24: 23 points2323-242024-25: 0 points024-252025-26: 8 points825-26

Points by season. The darker bar is the season shown below.

Season Team GP G A P +/- PIM Shots Hits P/GP Cap hit
2015-16 CBJ 3 0 1 1 1 0 2 4 0.33 $894K
2016-17 CBJ 4 0 0 0 -3 0 2 3 0.00 $863K
2017-18 CBJ 55 14 8 22 -8 10 69 28 0.40 $863K
2018-19 CBJ 8 1 0 1 0 0 5 5 0.13 $863K
2019-20 CBJ 46 5 13 18 -5 22 64 25 0.39 $874K
2019-20 ANA 9 2 3 5 -2 4 11 1 0.56
2020-21 ANA 6 0 0 0 0 0 8 4 0.00 $1.7M
2021-22 ANA 66 14 20 34 -9 10 94 27 0.52 $1.7M
2022-23 WSH 64 11 22 33 -5 18 80 39 0.52 $750K
2023-24 WSH 49 15 8 23 4 10 50 20 0.47 $1.9M
2024-25 WSH 3 0 0 0 -3 0 4 1 0.00 $1.9M
2025-26 WSH 31 4 4 8 0 4 34 9 0.26 $1.9M
11 seasons Career 344 66 79 145 -30 78 423 166 0.42

Playoffs

Playoff games only. Pick a season to see that year's bracket.

Season Team GP G A P +/- PIM Shots Hits P/GP
2016-17 CBJ 1 0 0 0 0 0 0 0 0.00
2017-18 CBJ 3 0 0 0 0 0 0 1 0.00
2023-24 WSH 4 0 0 0 -2 0 2 2 0.00
3 seasons Playoffs 8 0 0 0 -2 0 2 3 0.00

2019-20 season totals

GP G A P +/- PIM Shots Hits P/GP Shooting % Avg TOI
55 7 16 23 -7 26 75 26 0.42 9.3 13:06

Contract

$874KCap hitends in 2020
$38KCap dollars per point23 points in 55 games
$792KCap dollars per goal above replacement1.1 goals above replacement
$1.6MWorth at the going ratewhat teams paid for a season like his
+$721KValueworth minus cap hit; below zero is overpaid

His cap hit for the whole season, set against what he did in the regular season. Lower is better value. In a season still being played the cost per point starts high and falls as the games add up. Value is coloured by where it ranks among the 668 ranked skaters whose contract is known. How value is worked out.

The contract

Signed by the Columbus Blue Jackets on Jul 15, 2019, as a new contract: 1 year and $874K, beginning in 2019-20. It runs through 2019-20, so this is its last season.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2019-20 $874K $874K $0 $874K

Each season of the contract, with this one marked. The cap hit is the same every year; what he is paid is not. The pay is as written when the contract was recorded in October 2024, so a later change, such as the rise in the lowest salary for 2026-27, is not shown.

Contracts he has signed

Signed Signed by Kind Seasons Years In all Cap hit
Feb 4, 2023 Washington Capitals Extension 2023-24 to 2025-26 3 $5.7M $1.9M
Oct 15, 2022 Washington Capitals New contract 2022-23 to 2022-23 1 $750K $750K
Jul 28, 2020 Anaheim Ducks Extension 2020-21 to 2021-22 2 $3.4M $1.7M
Jul 15, 2019 Columbus Blue Jackets New contract 2019-20 to 2019-20 1 $874K $874K
Sep 20, 2014 Columbus Blue Jackets Entry-level 2016-17 to 2018-19 signed for 2014-15, slid 3 $3.883M $863K

Every contract on record for him, newest first, with the team that signed him to it and the day it was signed. The one covering 2019-20 is marked. An extension is signed while the contract before it is still running, often a year ahead. A row with no team or date is a contract known only by its cap hit, most often one signed since October 2024.

2019-20 analytics

Rating

+1.1Goals above replacement407th of 670 skaters, 289th of 439 forwards
+0.2Wins above replacementgoals above replacement divided by six
-0.9Goals above averagethe five parts below added up

Each number is coloured by where it ranks among the 439 ranked forwards: green is in the top fifth and red the bottom fifth, with paler shades in between and amber for the middle. Hover over a tile for its percentile.

Even-strength offence+0.6 62nd percentileEven-strength defence-1.6 12th percentilePower play-0.4 23rd percentilePenalty kill-0.2 27th percentilePenalties+0.6 62nd percentile

The goals he added to his team's goal difference, compared with a spare-part player given the same ice time. Each part is measured against the league, so zero is an average skater, and the rank beside it is among forwards. A full season is about two-thirds the player and one-third chance. Before 2023-24 the NHL timed events less exactly, and differently from rink to rink, so expected goals for this season are rougher than for recent ones.

-202462015-162017-182019-202021-222023-242025-26Goals above replacementGoals above replacement, by season

On the ice

What happened at five-on-five while he was on the ice. What these numbers mean

49.2Corsi for %581 attempts for, 601 against
-1.1CF% relative to teamagainst the team without him
51.5Expected goals for %27.2 expected for, 25.6 against
-0.8xGF% relative to teamagainst the team without him
50.3Fenwick for %unblocked attempts
46.0Goals for %23 for, 27 against
98.6PDO6.6% shooting + 92.0% saves
90Attempts takenhis own shot attempts

Each share is coloured by where it ranks among the 583 skaters who played enough to be ranked: green is in the top fifth and red the bottom fifth, with paler shades in between and amber for the middle. Hover over a tile for its percentile. PDO and attempts taken are left plain, since neither is good or bad on its own.

Who he played with

Forward lineTeamGPTimeCF%xGF%Goals
Sonny Milano · Pierre-Luc Dubois · Emil BemstromCBJ1788:0152.259.65-4
Ryan Getzlaf · Sonny Milano · Danton HeinenANA766:1152.256.12-4
Boone Jenner · Josh Anderson · Sonny MilanoCBJ937:5542.749.15-4
Josh Anderson · Sonny Milano · Pierre-Luc DuboisCBJ737:2665.168.80-1

The lines he spent the most time in at five-on-five, with the team's share of the shot attempts and expected goals, and the goals for and against, while they were out. The two shares are coloured as above, against the league's lines that played a fair amount together. Hover over one for its percentile.

Chances and finishing

Expected goals adds up how likely each of his shots was to go in, judged by where it came from, what kind of shot it was and whether it was a rebound. All situations, leaving out shots at an empty net. Before 2023-24 the NHL timed events less exactly, and differently from rink to rink, so expected goals for this season are rougher than for recent ones.

7Goalsnot counting empty-netters
6.1Expected goalsfrom 90 unblocked attempts
+0.9Goals above expectedgoals minus expected goals
Chances created 0.50 expected goals per 60 minutes11th
Shot quality 6.7% chance per attempt13th
Finishing +0.9 goals above expected68thOne season of finishing is mostly luck.

Each bar shows the share of forwards he is ahead of, among the 410 who played 300 minutes or more this season.

0246Game 20Game 40Goals 7Expected 6.1

His goals and his expected goals as the season went on. When the goals line pulls away above, he is scoring more than his chances were worth; below, less.

Where he shot from

Every attempt he took this season, in all situations, attacking the net on the right. There is a dot for each attempt, bigger for a better chance. "Show as heat map" shades the ice by where the attempts came from. Click a goal for its details.

Game log

Date Opponent Result G A P +/- PIM Shots Hits TOI
Mar 11, 2020 vs STL L 2-4 0 0 0 -1 0 2 0 11:49
Mar 10, 2020 vs OTT W 5-2 0 0 0 0 0 1 0 11:39
Mar 8, 2020 vs MIN L 4-5 (OT) 0 1 1 0 0 1 0 16:01
Mar 6, 2020 vs TOR W 2-1 0 0 0 -1 0 2 0 17:31
Mar 4, 2020 @ COL W 4-3 (OT) 0 0 0 1 2 1 1 18:16
Mar 3, 2020 @ CHI L 2-6 0 1 1 -2 0 2 0 16:13
Mar 1, 2020 vs NJD L 0-3 0 0 0 0 2 0 0 18:41
Feb 28, 2020 vs PIT W 3-2 0 1 1 0 0 0 0 14:34
Feb 25, 2020 vs EDM W 4-3 (OT) 2 0 2 1 0 2 0 14:42
Feb 18, 2020 @ PHI L 1-5 0 0 0 -2 0 0 0 10:53
Feb 16, 2020 @ NJD L 3-4 (SO) 0 1 1 0 0 2 0 16:11
Feb 14, 2020 vs NYR L 1-3 0 0 0 0 0 1 0 11:54
Feb 13, 2020 @ BUF L 3-4 (OT) 0 0 0 -1 0 1 1 12:48
Feb 10, 2020 vs TBL L 1-2 (OT) 0 0 0 0 0 3 2 14:51
Feb 8, 2020 vs COL L 1-2 0 0 0 0 0 1 0 14:39
Feb 7, 2020 vs DET W 2-0 0 1 1 1 0 1 0 14:28
Feb 4, 2020 vs FLA W 1-0 (OT) 0 0 0 0 0 2 0 14:00
Feb 2, 2020 @ MTL W 4-3 0 0 0 -1 2 2 0 14:42
Jan 14, 2020 vs BOS W 3-0 0 0 0 0 2 2 0 14:02
Jan 11, 2020 @ VGK W 3-0 0 1 1 1 0 0 0 10:47
Jan 9, 2020 @ SJS L 1-3 1 0 1 1 0 2 0 20:12
Jan 7, 2020 @ ANA W 4-3 0 0 0 -1 2 1 1 14:36
Jan 6, 2020 @ LAK W 4-2 0 1 1 0 0 0 1 15:35
Jan 4, 2020 vs SJS L 2-3 0 1 1 -1 0 2 0 19:47
Jan 2, 2020 @ BOS W 2-1 (OT) 1 0 1 1 0 4 2 14:53
Dec 14, 2019 @ OTT L 3-4 (OT) 0 0 0 0 0 1 0 01:38
Dec 12, 2019 @ PIT L 0-1 (OT) 0 0 0 0 0 1 2 18:13
Dec 9, 2019 @ WSH W 5-2 0 1 1 0 0 4 0 16:49
Dec 7, 2019 @ FLA L 1-4 0 0 0 0 0 1 1 16:26
Dec 5, 2019 vs NYR L 2-3 0 0 0 0 0 2 3 19:57
Dec 3, 2019 vs ARI L 2-4 0 1 1 -2 0 1 1 15:58
Nov 30, 2019 @ NYI L 0-2 0 0 0 -2 0 2 1 17:19
Nov 29, 2019 vs PIT W 5-2 0 0 0 0 2 1 0 14:25
Nov 27, 2019 vs PHI L 2-3 0 1 1 1 2 1 0 07:50
Nov 25, 2019 vs OTT W 1-0 0 0 0 0 0 1 0 09:34
Nov 23, 2019 @ WPG L 3-4 0 0 0 0 0 0 0 08:09
Nov 21, 2019 vs DET W 5-4 0 0 0 -1 0 2 0 09:10
Nov 19, 2019 vs MTL W 5-2 0 1 1 1 0 0 0 15:16
Nov 15, 2019 vs STL W 3-2 (OT) 0 1 1 1 0 1 0 12:17
Nov 12, 2019 @ MTL L 2-3 (SO) 0 0 0 0 0 1 0 11:21
Nov 9, 2019 @ COL L 2-4 0 0 0 -1 0 2 0 08:55
Nov 7, 2019 @ ARI W 3-2 0 0 0 0 0 2 0 11:12
Nov 5, 2019 vs VGK L 1-2 0 0 0 0 0 2 0 14:36
Nov 2, 2019 vs CGY L 0-3 0 0 0 0 2 0 1 10:13
Nov 1, 2019 @ STL L 3-4 (OT) 1 0 1 1 4 3 0 12:43
Oct 30, 2019 vs EDM L 1-4 0 0 0 -1 2 3 0 11:39
Oct 26, 2019 @ PHI L 4-7 0 2 2 2 0 2 4 09:56
Oct 24, 2019 vs CAR W 4-3 (OT) 1 0 1 0 2 1 0 09:11
Oct 21, 2019 @ TOR W 4-3 (OT) 0 0 0 -1 0 0 0 10:59
Oct 19, 2019 vs NYI L 2-3 (OT) 0 1 1 1 0 2 0 11:07
Oct 18, 2019 @ CHI L 2-3 (OT) 0 0 0 -1 0 1 2 09:29
Oct 16, 2019 vs DAL W 3-2 1 0 1 1 2 1 0 08:03
Oct 12, 2019 @ CAR W 3-2 0 0 0 -1 0 2 1 07:31
Oct 11, 2019 vs ANA L 1-2 0 0 0 0 0 0 1 09:01
Oct 7, 2019 vs BUF W 4-3 (OT) 0 0 0 -1 0 0 1 07:39