Hockey Terminal
Be a GM

← All players

Photo of J.J. Moser

J.J. Moser

#90 · Defence · Tampa Bay Lightning

Born Jun 6, 2000 in Biel, CHE (age 26) · 6'2", 182 lb · Shoots left · Drafted 60th overall in 2021 by ARI (round 2)

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.

Owen Power BUF · 29 P in 81 GP Rasmus Sandin WSH · 29 P in 73 GP Charle-Edouard D'Astous TBL · 29 P in 70 GP MacKenzie Weegar UTA · 28 P in 79 GP Parker Wotherspoon PIT · 30 P in 80 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.

01020302021-22: 15 points1521-222022-23: 31 points3122-232023-24: 26 points2623-242024-25: 14 points1424-252025-26: 29 points2925-262026-27: 0 points026-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 ARI 43 4 11 15 -10 16 40 32 0.35 $887K
2022-23 ARI 82 7 24 31 -12 35 93 80 0.38 $887K
2023-24 ARI 80 5 21 26 -5 35 77 99 0.33 $887K
2024-25 TBL 54 2 12 14 20 22 48 34 0.26 $3.375M
2025-26 TBL 79 7 22 29 41 69 111 61 0.37 $3.375M
2026-27 TBL 5 0 0 0 2 4 4 2 0.00 $6.75M
6 seasons Career 343 25 90 115 36 181 373 308 0.34

Playoffs

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

Season Team GP G A P +/- PIM Shots Hits P/GP
2024-25 TBL 5 0 0 0 -2 0 3 1 0.00
2025-26 TBL 7 1 2 3 3 2 9 9 0.43
2 seasons Playoffs 12 1 2 3 1 2 12 10 0.25

2025-26 season totals

GP G A P +/- PIM Shots Hits P/GP Shooting % Avg TOI
79 7 22 29 41 69 111 61 0.37 6.3 21:34

Contract

$3.375MCap hitends in 2026, then extended to 2034
$116KCap dollars per point29 points in 79 games
$450KCap dollars per goal above replacement7.5 goals above replacement
$7.1MWorth at the going ratewhat teams paid for a season like his
+$3.8MValueworth 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 Tampa Bay Lightning on Jul 11, 2024, as a new contract: 2 years and $6.75M, 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 Tampa Bay Lightning on Dec 27, 2025, 8 years and $54M at $6.75M a season, beginning in 2026-27.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2024-25 $3.375M $2.7M $0 $2.7M
2025-26 $3.375M $4.05M $0 $4.05M

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
Dec 27, 2025 Tampa Bay Lightning Extension not begun 2026-27 to 2033-34 8 $54M $6.75M
Jul 11, 2024 Tampa Bay Lightning New contract 2024-25 to 2025-26 2 $6.75M $3.375M
Aug 14, 2021 Arizona Coyotes Entry-level 2021-22 to 2023-24 3 $2.775M $887K

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

+7.5Goals above replacement124th of 715 skaters, 36th of 239 defencemen
+1.3Wins above replacementgoals above replacement divided by six
+1.8Goals 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+2.2 85th percentileEven-strength defence-2.6 12th percentilePower play+0.2 93rd percentilePenalty kill+0.6 90th percentilePenalties+1.4 97th 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.

-4-2024682021-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

56.6Corsi for %1543 attempts for, 1182 against
+5.6CF% relative to teamagainst the team without him
55.0Expected goals for %71.1 expected for, 58.1 against
+0.7xGF% relative to teamagainst the team without him
55.6Fenwick for %unblocked attempts
60.8Goals for %73 for, 47 against
102.3PDO10.2% shooting + 92.2% saves
236Attempts 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
Darren Raddysh · J.J. Moser67873:0758.957.146-30
Victor Hedman · J.J. Moser18182:1155.355.38-7
J.J. Moser · Emil Lilleberg4377:2255.250.87-2
Erik Cernak · J.J. Moser3968:5652.748.42-2

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.

7Goalsnot counting empty-netters
6.3Expected goalsfrom 169 unblocked attempts
+0.7Goals above expectedgoals minus expected goals
Chances created 0.22 expected goals per 60 minutes65th
Shot quality 3.7% chance per attempt64th
Finishing +0.7 goals above expected64thOne 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 60Goals 7Expected 6.3

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 13, 2026 vs DET W 4-3 (OT) 0 1 1 2 2 2 0 22:10
Apr 11, 2026 @ BOS W 2-1 0 0 0 -1 0 0 2 22:29
Apr 9, 2026 @ MTL L 1-2 0 0 0 -1 2 0 2 20:41
Apr 7, 2026 @ OTT L 2-6 0 0 0 -1 0 3 0 20:23
Apr 6, 2026 @ BUF L 2-4 0 0 0 -1 0 2 0 19:54
Apr 4, 2026 vs BOS W 3-1 0 1 1 0 0 0 0 21:42
Apr 2, 2026 vs PIT W 6-3 0 0 0 0 0 0 1 19:13
Mar 31, 2026 vs MTL L 1-4 0 0 0 -1 0 1 0 17:55
Mar 29, 2026 vs NSH W 3-2 0 0 0 1 0 2 1 20:10
Mar 28, 2026 vs OTT W 4-2 0 0 0 -1 0 2 1 21:48
Mar 26, 2026 vs SEA L 3-4 (OT) 0 0 0 0 5 0 0 21:46
Mar 24, 2026 vs MIN W 6-3 0 0 0 1 0 1 0 20:26
Mar 22, 2026 @ CGY L 3-4 (OT) 0 1 1 -2 0 1 0 23:08
Mar 21, 2026 @ EDM W 5-2 0 1 1 3 0 0 0 22:42
Mar 19, 2026 @ VAN W 6-2 0 1 1 2 2 1 1 22:55
Mar 17, 2026 @ SEA W 6-2 0 0 0 1 0 0 0 19:11
Mar 14, 2026 vs CAR L 2-4 0 0 0 -2 0 1 0 20:55
Mar 12, 2026 vs DET W 4-1 0 0 0 0 0 1 2 21:09
Mar 10, 2026 vs CBJ L 2-5 1 0 1 1 9 2 5 18:20
Mar 8, 2026 @ BUF L 7-8 1 2 3 2 0 3 2 26:17
Mar 7, 2026 @ TOR W 5-2 0 0 0 0 0 3 1 18:44
Mar 5, 2026 @ WPG L 1-4 0 0 0 -2 0 3 0 16:39
Mar 3, 2026 @ MIN L 1-5 0 0 0 0 0 1 0 16:14
Feb 28, 2026 vs BUF L 2-6 0 0 0 -1 0 2 1 15:46
Feb 26, 2026 @ CAR L 4-5 0 1 1 0 0 2 1 19:42
Feb 25, 2026 vs TOR W 4-2 0 0 0 2 0 2 1 18:53
Feb 5, 2026 vs FLA W 6-1 0 0 0 1 17 0 1 14:55
Feb 3, 2026 vs BUF W 4-3 (OT) 0 1 1 -1 2 2 0 23:51
Feb 1, 2026 vs BOS W 6-5 (SO) 0 0 0 -1 0 1 1 24:21
Jan 29, 2026 vs WPG W 4-1 0 1 1 3 2 3 0 21:58
Jan 26, 2026 vs UTA W 2-0 0 1 1 0 0 3 0 25:29
Jan 24, 2026 @ CBJ L 5-8 0 0 0 -1 0 1 0 26:56
Jan 23, 2026 @ CHI W 2-1 (SO) 0 0 0 0 0 2 0 24:51
Jan 20, 2026 vs SJS W 4-1 0 0 0 1 0 0 0 22:44
Jan 18, 2026 @ DAL W 4-1 0 1 1 1 0 0 2 21:24
Jan 16, 2026 @ STL L 2-3 (SO) 0 0 0 -1 0 3 0 22:16
Jan 13, 2026 @ PIT W 2-1 (SO) 1 0 1 0 0 4 0 25:54
Jan 12, 2026 @ PHI W 5-1 0 0 0 2 0 0 1 23:00
Jan 10, 2026 @ PHI W 7-2 0 0 0 3 0 2 0 21:29
Jan 6, 2026 vs COL W 4-2 0 0 0 2 0 2 2 24:06
Jan 3, 2026 @ SJS W 7-3 0 0 0 1 6 0 1 16:57
Jan 1, 2026 @ LAK W 5-3 0 1 1 2 0 1 1 24:49
Dec 31, 2025 @ ANA W 4-3 (OT) 1 0 1 2 0 1 2 24:57
Dec 28, 2025 vs MTL W 5-4 (SO) 0 0 0 0 0 0 1 24:28
Dec 27, 2025 @ FLA W 4-2 0 0 0 1 10 1 2 22:28
Dec 22, 2025 vs STL W 4-1 0 0 0 2 0 1 1 21:35
Dec 20, 2025 vs CAR W 6-4 0 1 1 2 0 4 3 22:55
Dec 18, 2025 vs LAK L 1-2 0 0 0 0 0 2 0 22:00
Dec 15, 2025 vs FLA L 2-5 1 0 1 2 0 2 2 21:50
Dec 13, 2025 @ NYI L 2-3 (SO) 1 0 1 1 0 3 0 26:02
Dec 11, 2025 @ NJD W 8-4 0 2 2 2 0 4 0 20:49
Dec 9, 2025 @ MTL W 6-1 0 0 0 0 0 0 0 22:13
Dec 8, 2025 @ TOR L 0-2 0 0 0 -1 0 1 0 21:12
Dec 6, 2025 vs NYI L 0-2 0 0 0 0 0 1 1 19:11
Dec 4, 2025 vs PIT L 3-4 0 0 0 1 0 1 1 23:03
Dec 2, 2025 @ NYI L 1-2 0 0 0 -1 0 1 0 22:48
Nov 29, 2025 @ NYR W 4-1 0 0 0 3 0 3 1 23:44
Nov 28, 2025 @ DET W 6-3 0 0 0 2 0 2 0 23:59
Nov 26, 2025 vs CGY W 5-1 0 0 0 2 2 0 0 20:44
Nov 24, 2025 vs PHI W 3-0 0 0 0 2 0 0 0 23:38
Nov 22, 2025 @ WSH W 5-3 0 1 1 1 2 0 0 24:46
Nov 20, 2025 vs EDM W 2-1 (OT) 0 1 1 1 2 1 0 21:51
Nov 18, 2025 vs NJD W 5-1 0 1 1 1 0 1 3 22:08
Nov 16, 2025 vs VAN L 2-6 0 0 0 1 2 1 1 22:02
Nov 15, 2025 @ FLA W 3-1 0 0 0 1 0 1 2 22:24
Nov 12, 2025 vs NYR L 3-7 0 1 1 0 0 3 0 19:44
Nov 8, 2025 vs WSH W 3-2 0 0 0 -1 0 3 0 20:00
Nov 6, 2025 @ VGK W 6-3 0 1 1 0 0 0 0 19:23
Nov 4, 2025 @ COL L 2-3 0 0 0 -1 0 0 0 19:00
Nov 2, 2025 @ UTA W 4-2 0 0 0 1 0 3 1 21:02
Oct 30, 2025 vs DAL W 2-1 (OT) 0 0 0 0 0 1 1 17:42
Oct 28, 2025 @ NSH W 5-2 0 0 0 0 2 1 1 18:15
Oct 26, 2025 vs VGK W 2-1 (OT) 0 0 0 1 0 1 0 22:15
Oct 25, 2025 vs ANA W 4-3 0 0 0 3 0 1 1 19:49
Oct 23, 2025 vs CHI L 2-3 0 0 0 -1 0 3 2 19:27
Oct 18, 2025 @ CBJ L 2-3 0 0 0 0 2 1 1 21:24
Oct 17, 2025 @ DET L 1-2 (OT) 1 0 1 1 0 2 1 21:21
Oct 14, 2025 @ WSH L 2-3 (OT) 0 0 0 -1 0 2 0 25:26
Oct 13, 2025 @ BOS W 4-3 0 1 1 0 0 0 3 24:23