Hockey Terminal
Be a GM

← All players

Photo of Josh Leivo

Josh Leivo

#17 · Left wing · St. Louis Blues

Born May 26, 1993 in Innisfil, Ontario, CAN · 6'2", 192 lb · Shoots right · Drafted 86th overall in 2011 by TOR (round 3)

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.

Kyle Okposo BUF · 19 P in 52 GP Anders Bjork BOS · 19 P in 58 GP Zemgus Girgensons BUF · 19 P in 69 GP Brett Howden NYR · 19 P in 70 GP Carter Rowney ANA · 19 P in 71 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.

051015202013-14: 2 points213-142014-15: 1 points114-152015-16: 5 points515-162016-17: 10 points1016-172017-18: 4 points417-182018-19: 24 points2418-192019-20: 19 points1919-202020-21: 9 points920-212021-22: 3 points321-222022-23: 16 points1622-23

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

Season Team GP G A P +/- PIM Shots Hits P/GP Cap hit
2013-14 TOR 7 1 1 2 0 0 4 5 0.29
2014-15 TOR 9 1 0 1 -1 4 10 5 0.11
2015-16 TOR 12 5 0 5 2 6 20 7 0.42
2016-17 TOR 13 2 8 10 2 4 27 5 0.77 $613K
2017-18 TOR 16 1 3 4 0 6 25 2 0.25 $613K
2018-19 TOR 27 4 2 6 1 7 38 22 0.22 $925K
2018-19 VAN 49 10 8 18 4 25 113 22 0.37
2019-20 VAN 36 7 12 19 0 4 69 17 0.53 $1.5M
2020-21 CGY 38 6 3 9 -3 10 50 33 0.24 $875K
2021-22 CAR 7 1 2 3 1 2 10 4 0.43 $750K
2022-23 STL 51 4 12 16 0 25 91 55 0.31 $750K
10 seasons Career 265 42 51 93 6 93 457 177 0.35

2019-20 season totals

GP G A P +/- PIM Shots Hits P/GP Shooting % Avg TOI
36 7 12 19 0 4 69 17 0.53 10.1 15:01

Contract

$1.5MCap hitends in 2020, then UFA
$79KCap dollars per point19 points in 36 games
$540KCap dollars per goal above replacement2.8 goals above replacement
$3MWorth at the going ratewhat teams paid for a season like his
+$1.5MValueworth 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

Who signed him to it, and when, are not on record. It runs through 2019-20, so this is its last season, after which he is an unrestricted free agent.

Season Cap hit
2019-20 $1.5M

Each season left on the contract. Only its cap hit and its end are known: how the pay is split by season, and any signing bonus, are not.

Contracts he has signed

Signed Signed by Kind Seasons Years In all Cap hit
2022-23 to 2022-23 $750K
2021-22 to 2021-22 $750K
2020-21 to 2020-21 $875K
2019-20 to 2019-20 $1.5M
2018-19 to 2018-19 $925K
2016-17 to 2017-18 $613K

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

+2.8Goals above replacement286th of 670 skaters, 200th of 439 forwards
+0.5Wins above replacementgoals above replacement divided by six
+1.3Goals 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.9 65th percentileEven-strength defence-0.5 32nd percentilePower play-0.4 21st percentilePenalty kill-0.2 26th percentilePenalties+1.4 86th 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. Provisional: under 40 games it is more chance than player. 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.

-2024682013-142015-162017-182019-202021-22Goals 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

53.3Corsi for %456 attempts for, 399 against
+4.7CF% relative to teamagainst the team without him
50.4Expected goals for %19.7 expected for, 19.3 against
+1.9xGF% relative to teamagainst the team without him
51.5Fenwick for %unblocked attempts
55.3Goals for %21 for, 17 against
101.3PDO9.1% shooting + 92.2% saves
117Attempts 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 lineGPTimeCF%xGF%Goals
Josh Leivo · Tanner Pearson · Bo Horvat23124:2452.353.15-4
Josh Leivo · Brock Boeser · Elias Pettersson1535:3342.142.72-2
Brandon Sutter · Josh Leivo · Jake Virtanen634:2556.556.33-0
Brandon Sutter · Josh Leivo · Tanner Pearson1029:3467.968.60-0

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
8.2Expected goalsfrom 105 unblocked attempts
-1.2Goals above expectedgoals minus expected goals
Chances created 0.91 expected goals per 60 minutes73rd
Shot quality 7.8% chance per attempt46th
Finishing -1.2 goals above expected39thOne 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.

02468Game 20Expected 8.2Goals 7

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
Dec 19, 2019 vs VGK W 5-4 (OT) 0 1 1 -1 0 0 1 10:02
Dec 17, 2019 vs MTL L 1-3 0 1 1 0 0 2 1 16:12
Dec 15, 2019 @ VGK L 3-6 0 0 0 -1 0 0 0 13:38
Dec 14, 2019 @ SJS L 2-4 0 0 0 -1 0 1 0 16:28
Dec 12, 2019 vs CAR W 1-0 (OT) 0 0 0 0 0 1 0 15:39
Dec 10, 2019 vs TOR L 1-4 1 0 1 -3 0 2 0 19:06
Dec 7, 2019 vs BUF W 6-5 (OT) 2 0 2 2 0 3 1 17:40
Dec 3, 2019 vs OTT W 5-2 0 0 0 0 0 3 0 13:28
Dec 1, 2019 vs EDM L 2-3 1 0 1 1 0 2 0 18:55
Nov 30, 2019 @ EDM W 5-2 1 0 1 1 0 2 0 15:01
Nov 27, 2019 @ PIT L 6-8 0 1 1 -1 0 1 2 12:29
Nov 25, 2019 @ PHI L 1-2 0 0 0 0 0 2 0 15:08
Nov 23, 2019 @ WSH W 2-1 (SO) 0 0 0 0 0 2 0 14:21
Nov 21, 2019 @ NSH W 6-3 0 1 1 0 0 1 1 12:16
Nov 19, 2019 @ DAL L 1-6 0 0 0 -2 0 4 0 15:05
Nov 16, 2019 vs COL L 4-5 (OT) 0 1 1 0 0 3 0 12:51
Nov 14, 2019 vs DAL L 2-4 0 0 0 1 0 0 0 16:14
Nov 12, 2019 vs NSH W 5-3 0 1 1 -1 0 2 1 16:15
Nov 10, 2019 vs NJD L 1-2 0 0 0 -1 0 1 1 13:26
Nov 8, 2019 @ WPG L 1-4 0 0 0 0 0 2 0 15:21
Nov 7, 2019 @ CHI L 2-5 0 0 0 1 0 2 1 14:08
Nov 5, 2019 vs STL L 1-2 (OT) 0 1 1 1 0 2 0 17:53
Nov 2, 2019 @ SJS W 5-2 0 1 1 2 0 2 0 14:12
Nov 1, 2019 @ ANA L 1-2 (OT) 0 0 0 0 0 1 1 12:52
Oct 30, 2019 @ LAK W 5-3 0 0 0 -1 2 2 0 12:33
Oct 28, 2019 vs FLA W 7-2 1 1 2 1 0 4 0 14:58
Oct 25, 2019 vs WSH L 5-6 (SO) 0 0 0 0 0 4 0 16:01
Oct 22, 2019 @ DET W 5-2 0 1 1 2 0 4 0 13:27
Oct 20, 2019 @ NYR W 3-2 0 0 0 -1 0 1 2 12:00
Oct 19, 2019 @ NJD L 0-1 0 0 0 0 0 0 0 16:12
Oct 17, 2019 @ STL W 4-3 (SO) 0 1 1 -1 0 2 1 17:20
Oct 15, 2019 vs DET W 5-1 0 0 0 1 0 2 2 14:14
Oct 12, 2019 vs PHI W 3-2 (SO) 0 1 1 1 0 3 0 18:15
Oct 9, 2019 vs LAK W 8-2 1 0 1 0 0 1 0 14:44
Oct 5, 2019 @ CGY L 0-3 0 0 0 -1 2 0 1 17:20
Oct 2, 2019 @ EDM L 2-3 0 0 0 1 0 5 1 14:41