Hockey Terminal
Be a GM

← All players

Photo of Thomas Harley

Thomas Harley

#55 · Defence · Dallas Stars

Born Aug 19, 2001 in Syracuse, New York, USA (age 25) · 6'3", 214 lb · Shoots left · Drafted 18th overall in 2019 by DAL (round 1)

Compare with a similar player

The defencemen closest to him in points in 2025-26. Pick one to see the two side by side, or choose someone else.

Morgan Rielly TOR · 36 P in 78 GP John Marino UTA · 36 P in 80 GP K'Andre Miller CAR · 37 P in 72 GP Luke Hughes NJD · 35 P in 68 GP Tony DeAngelo NYI · 35 P in 76 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.

010203040502021-22: 4 points421-222022-23: 2 points222-232023-24: 47 points4723-242024-25: 50 points5024-252025-26: 36 points3625-262026-27: 1 points126-27

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

Season Team GP G A P +/- PIM Shots Hits P/GP Cap hit
2021-22 DAL 34 1 3 4 -4 6 36 30 0.12 $863K
2022-23 DAL 6 0 2 2 5 2 8 1 0.33 $863K
2023-24 DAL 79 15 32 47 28 18 144 67 0.59 $863K
2024-25 DAL 78 16 34 50 32 16 171 33 0.64 $4M
2025-26 DAL 70 6 30 36 3 26 113 39 0.51 $4M
2026-27 DAL 5 0 1 1 3 2 10 3 0.20 $10.587M
6 seasons Career 272 38 102 140 67 70 482 173 0.51

Playoffs

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

Season Team GP G A P +/- PIM Shots Hits P/GP
2022-23 DAL 19 1 8 9 1 14 23 19 0.47
2023-24 DAL 19 0 4 4 8 0 28 12 0.21
2024-25 DAL 18 4 10 14 -10 10 31 22 0.78
2025-26 DAL 6 0 0 0 -6 2 15 5 0.00
4 seasons Playoffs 62 5 22 27 -7 26 97 58 0.44

2025-26 season totals

GP G A P +/- PIM Shots Hits P/GP Shooting % Avg TOI
70 6 30 36 3 26 113 39 0.51 5.3 23:03

Contract

$4MCap hitends in 2026, then extended to 2034
$111KCap dollars per point36 points in 70 games
$3.634MCap dollars per goal above replacement1.1 goals above replacement
$1.7MWorth at the going ratewhat teams paid for a season like his
-$2.3MValueworth 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 715 ranked skaters whose contract is known. How value is worked out.

The contract

Signed by the Dallas Stars on Sep 17, 2024, as an extension of the contract he was on: 2 years and $8M, beginning in 2024-25. It runs through 2025-26, so this is its last season, and his extension takes over. His next contract is already signed: an extension with the Dallas Stars on Oct 28, 2025, 8 years and $84.696M at $10.587M a season, beginning in 2026-27.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2024-25 $4M $3.5M $0 $3.5M
2025-26 $4M $4.5M $0 $4.5M

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
Oct 28, 2025 Dallas Stars Extension not begun 2026-27 to 2033-34 8 $84.696M $10.587M
Sep 17, 2024 Dallas Stars Extension 2024-25 to 2025-26 2 $8M $4M
Sep 23, 2019 Dallas Stars Entry-level 2021-22 to 2023-24 signed for 2019-20, slid 3 $4.05M $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 2025-26 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.

2025-26 analytics

Regular season Playoffs

Rating

+1.1Goals above replacement443rd of 715 skaters, 126th of 239 defencemen
+0.2Wins above replacementgoals above replacement divided by six
-4.3Goals above averagethe five parts below added up

Each number is coloured by where it ranks among the 239 ranked defencemen: 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+1.3 80th percentileEven-strength defence-4.2 3rd percentilePower play-0.3 24th percentilePenalty kill+0.2 67th percentilePenalties-1.2 28th 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 defencemen. A full season is about two-thirds the player and one-third chance.

0510152021-222022-232023-242024-252025-262026-27Goals 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

47.3Corsi for %1142 attempts for, 1274 against
+0.1CF% relative to teamagainst the team without him
49.1Expected goals for %58.0 expected for, 60.0 against
-3.5xGF% relative to teamagainst the team without him
47.4Fenwick for %unblocked attempts
51.4Goals for %55 for, 52 against
101.0PDO10.0% shooting + 91.0% saves
221Attempts takenhis own shot attempts

Each share is coloured by where it ranks among the 615 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

Defence pairGPTimeCF%xGF%Goals
Nils Lundkvist · Thomas Harley50537:4349.552.027-17
Ilya Lyubushkin · Thomas Harley45256:5636.538.44-11
Miro Heiskanen · Thomas Harley57146:3650.952.84-5
Alexander Petrovic · Thomas Harley38143:3147.443.77-10

The pairs 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 pairs 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.

6Goalsnot counting empty-netters
7.1Expected goalsfrom 172 unblocked attempts
-1.1Goals above expectedgoals minus expected goals
Chances created 0.26 expected goals per 60 minutes76th
Shot quality 4.1% chance per attempt79th
Finishing -1.1 goals above expected24thOne season of finishing is mostly luck.

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

0246Game 20Game 40Game 60Expected 7.1Goals 6

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. Darker red means more attempts from that spot, and each dot is a goal. "Show every shot" switches to a dot for each attempt, bigger for a better chance. Click a goal for its details.

Game log

Date Opponent Result G A P +/- PIM Shots Hits TOI
Apr 15, 2026 @ BUF W 4-3 (SO) 0 0 0 -1 0 4 0 22:45
Apr 13, 2026 @ TOR W 6-5 0 1 1 1 0 2 0 24:24
Apr 11, 2026 vs NYR W 2-0 0 0 0 1 2 3 0 26:26
Apr 9, 2026 vs MIN W 5-4 0 1 1 2 2 1 1 25:17
Apr 7, 2026 vs CGY W 4-3 (OT) 0 1 1 1 0 1 1 20:11
Apr 4, 2026 vs COL L 0-2 0 0 0 0 0 1 1 22:24
Apr 2, 2026 vs WPG W 3-0 0 0 0 0 0 2 1 19:56
Mar 31, 2026 @ BOS L 3-6 0 0 0 -2 0 0 0 21:39
Mar 29, 2026 @ PHI L 1-2 (OT) 0 0 0 1 0 1 0 25:09
Mar 28, 2026 @ PIT W 6-3 0 0 0 -1 0 0 0 20:44
Mar 26, 2026 @ NYI L 1-2 0 1 1 1 2 0 1 25:11
Mar 24, 2026 vs NJD L 4-6 0 2 2 1 0 2 0 23:07
Mar 22, 2026 vs VGK L 2-3 0 0 0 -1 0 0 0 24:47
Mar 21, 2026 @ MIN L 1-2 (OT) 0 0 0 -1 0 0 0 23:40
Mar 18, 2026 @ COL W 2-1 (SO) 0 1 1 1 0 2 0 22:45
Mar 16, 2026 vs UTA L 3-6 0 0 0 -3 0 4 1 21:15
Mar 14, 2026 vs DET W 3-2 (OT) 1 0 1 0 0 3 0 22:43
Mar 12, 2026 vs EDM W 7-2 0 0 0 -1 2 3 0 21:08
Mar 10, 2026 vs VGK W 2-1 0 1 1 0 2 1 0 21:34
Mar 8, 2026 vs CHI W 4-3 (OT) 0 0 0 1 0 2 0 23:18
Mar 6, 2026 vs COL L 4-5 (SO) 0 0 0 -1 0 1 0 23:36
Mar 3, 2026 @ CGY W 6-1 0 1 1 2 0 1 0 22:52
Mar 2, 2026 @ VAN W 6-1 0 0 0 1 0 1 0 22:34
Feb 28, 2026 vs NSH W 3-2 (OT) 0 1 1 0 4 2 1 23:22
Feb 25, 2026 vs SEA W 4-1 0 2 2 3 2 2 1 22:38
Feb 4, 2026 vs STL W 5-4 0 1 1 1 0 2 2 20:27
Feb 2, 2026 vs WPG W 4-3 (OT) 1 0 1 1 0 4 1 23:52
Jan 31, 2026 @ UTA W 3-2 1 0 1 -2 0 3 1 22:23
Jan 29, 2026 @ VGK W 5-4 (SO) 0 0 0 0 0 2 1 26:12
Jan 27, 2026 @ STL W 4-3 1 1 2 0 0 2 1 22:11
Jan 23, 2026 vs STL W 3-2 0 0 0 1 0 0 0 26:02
Jan 22, 2026 @ CBJ L 0-1 0 0 0 0 0 2 0 23:46
Jan 20, 2026 vs BOS W 6-2 0 2 2 1 0 2 2 23:08
Jan 18, 2026 vs TBL L 1-4 0 0 0 1 0 0 0 23:25
Jan 15, 2026 @ UTA L 1-2 0 0 0 -1 0 6 0 30:46
Jan 13, 2026 @ ANA L 1-3 0 0 0 -1 0 3 1 28:58
Jan 12, 2026 @ LAK W 3-1 0 0 0 1 0 4 0 23:08
Jan 10, 2026 @ SJS L 4-5 (OT) 0 0 0 0 0 2 0 22:53
Jan 7, 2026 @ WSH W 4-1 0 1 1 1 0 2 3 22:11
Jan 6, 2026 @ CAR L 3-6 0 0 0 -2 0 3 2 22:50
Jan 4, 2026 vs MTL L 3-4 (OT) 0 1 1 1 0 1 2 24:24
Jan 1, 2026 @ CHI L 3-4 0 0 0 2 0 1 2 22:46
Dec 31, 2025 vs BUF L 1-4 0 0 0 -4 0 2 1 22:58
Dec 27, 2025 vs CHI L 3-4 (SO) 0 0 0 2 0 3 0 25:06
Dec 23, 2025 @ DET L 3-4 (OT) 0 0 0 0 0 1 1 22:10
Dec 21, 2025 vs TOR W 5-1 0 1 1 1 2 0 0 20:53
Dec 19, 2025 @ ANA W 8-3 1 1 2 5 0 3 0 21:09
Dec 18, 2025 @ SJS W 5-3 0 0 0 0 0 1 0 22:00
Dec 15, 2025 vs LAK W 4-1 0 1 1 1 0 2 1 20:48
Dec 13, 2025 vs FLA L 0-4 0 0 0 -2 0 1 0 22:07
Dec 11, 2025 @ MIN L 2-5 0 0 0 -3 0 0 1 22:43
Dec 9, 2025 @ WPG W 4-3 0 0 0 1 0 1 0 17:32
Nov 13, 2025 @ MTL W 7-0 0 1 1 1 0 0 2 21:25
Nov 11, 2025 @ OTT W 3-2 (OT) 0 0 0 -1 0 3 0 24:12
Nov 9, 2025 vs SEA W 2-1 0 0 0 0 2 0 0 21:02
Nov 8, 2025 @ NSH W 5-4 0 0 0 0 0 0 1 22:02
Nov 6, 2025 vs ANA L 5-7 0 0 0 -1 0 2 0 22:09
Nov 4, 2025 vs EDM W 4-3 (SO) 0 0 0 -1 0 2 1 23:30
Nov 1, 2025 @ FLA L 3-4 (SO) 0 1 1 -2 0 2 0 26:47
Oct 30, 2025 @ TBL L 1-2 (OT) 0 0 0 0 0 1 0 23:32
Oct 28, 2025 vs WSH W 1-0 0 0 0 0 0 1 0 21:01
Oct 26, 2025 @ NSH W 3-2 0 1 1 1 0 3 1 25:17
Oct 25, 2025 vs CAR W 3-2 0 1 1 -1 0 1 1 25:16
Oct 23, 2025 vs LAK L 2-3 (OT) 0 0 0 -2 0 2 0 21:39
Oct 21, 2025 vs CBJ L 1-5 0 0 0 -1 0 0 1 20:03
Oct 18, 2025 @ STL L 1-3 0 0 0 0 0 0 1 23:54
Oct 16, 2025 vs VAN L 3-5 0 1 1 -1 2 2 1 21:17
Oct 14, 2025 vs MIN W 5-2 0 1 1 1 0 0 0 22:54
Oct 11, 2025 @ COL W 5-4 (SO) 1 1 2 0 2 2 0 25:52
Oct 9, 2025 @ WPG W 5-4 0 2 2 0 2 0 0 21:52