J.J. Moser
Age 26 · born Jun 6, 2000Biel, CHE6'2" (188 cm) · 182 lb (83 kg)Shoots leftDrafted 2021 R2 #60 by ARI
2026–27 by team
| Team | GP | G | A | P | +/- | PIM | PPG | SOG | TOI/GP | HIT | BLK | ixG | G−ixG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TBL | 9 | 0 | 0 | 0 | +4 | 4 | 0 | 8 | 17:57 | 3 | 11 | 1.0 | −1.0 |
Player Puckigree
On the league chart →2026–27 · TBL
+0.5goals above replacement · 0.1 wins
EV off+0.1
EV def+0.1
PP−0.0
PK−0.1
Finish−0.0
Pen+0.3
Workload+0.1
By season
| Season | Team | GP | Goals | Wins |
|---|---|---|---|---|
| 2022–23 | ARI | 82 | −3.2 | -0.5 |
| 2023–24 | ARI | 80 | −0.5 | -0.1 |
| 2024–25 | TBL | 54 | −0.7 | -0.1 |
| 2025–26 | TBL | 79 | +4.0 | 0.7 |
| 2026–27 | TBL | 9 | +0.5 | 0.1 |
Goals above a replacement-level player (someone outside a team’s regular rotation): how he did against an average player, plus credit for the workload a replacement would otherwise take. About 6.2 goals make one win. Hover a part for what it measures. How it’s built: How it works.
At 5-on-5
TBL · 102 min
xGF%61.3CF%52.6GF–GA5–3Rel xGF%+5.5OZ%74
Most common linemates
- John Carlson85 min62.3
- Nikita Kucherov64 min68.0
- Brayden Point48 min63.1
- Brandon Hagel35 min61.4
- Gage Goncalves35 min77.5
- Anthony Cirelli33 min70.6
Game log
Average Imprint 0.52 over 9 games, best 2.1.
| Date | Team | Opponent | G | A | P | +/- | SOG | PIM | TOI | Imprint |
|---|---|---|---|---|---|---|---|---|---|---|
| Oct 20 | TBL | @ VGK | 0 | 0 | 0 | +3 | 1 | 0 | 17:05 | 0.9 |
| Oct 17 | TBL | vs VAN | 0 | 0 | 0 | 0 | 0 | 0 | 20:06 | 2.1 |
| Oct 15 | TBL | vs SEA | 0 | 0 | 0 | -1 | 2 | 0 | 22:56 | 0.3 |
| Oct 13 | TBL | @ NYR | 0 | 0 | 0 | 0 | 1 | 0 | 19:45 | 0.1 |
| Oct 10 | TBL | @ NYI | 0 | 0 | 0 | 0 | 1 | 0 | 17:01 | 0.1 |
| Oct 8 | TBL | vs MIN | 0 | 0 | 0 | 0 | 0 | 0 | 13:21 | -0.0 |
| Oct 5 | TBL | vs PHI | 0 | 0 | 0 | +2 | 3 | 0 | 17:03 | 1.5 |
| Oct 3 | TBL | vs WSH | 0 | 0 | 0 | +1 | 0 | 0 | 19:23 | 0.5 |
| Oct 1 | TBL | @ NYR | 0 | 0 | 0 | -1 | 0 | 4 | 14:54 | -0.7 |
NHL career
| Season | League | Team | GP | G | A | P | PIM | +/- |
|---|---|---|---|---|---|---|---|---|
| 2026–27 | NHL | TBL | 9 | 0 | 0 | 0 | 4 | +4 |
| 2025–26 | NHL | Tampa Bay Lightning | 79 | 7 | 22 | 29 | 69 | +41 |
| 2024–25 | NHL | Tampa Bay Lightning | 54 | 2 | 12 | 14 | 22 | +20 |
| 2023–24 | NHL | Arizona Coyotes | 80 | 5 | 21 | 26 | 35 | -5 |
| 2022–23 | NHL | Arizona Coyotes | 82 | 7 | 24 | 31 | 35 | -12 |
| 2021–22 | NHL | Arizona Coyotes | 43 | 4 | 11 | 15 | 16 | -10 |
NHL playoffs
| Season | League | Team | GP | G | A | P | PIM | +/- |
|---|---|---|---|---|---|---|---|---|
| 2025–26 | NHL | Tampa Bay Lightning | 7 | 1 | 2 | 3 | 2 | +3 |
| 2024–25 | NHL | Tampa Bay Lightning | 5 | 0 | 0 | 0 | 0 | -2 |
Other leagues
Junior, college, minor-league, European and international seasons from NHL records. Some seasons may be missing. Refreshed Oct 22.
| Season | League | Team | GP | G | A | P | PIM | +/- |
|---|---|---|---|---|---|---|---|---|
| 2025–26 | OG | Switzerland | 5 | 1 | 3 | 4 | 4 | 0 |
| 2024–25 | WC | Switzerland | 10 | 1 | 5 | 6 | 2 | +8 |
| 2022–23 | WC | Switzerland | 7 | 1 | 1 | 2 | 4 | +6 |
| 2022–23 | EHT | Switzerland | 2 | 0 | 0 | 0 | 0 | -2 |
| 2021–22 | EHT | Switzerland | 2 | 1 | 2 | 3 | 2 | 0 |
| 2021–22 | WC | Switzerland | 8 | 1 | 3 | 4 | 2 | -1 |
| 2021–22 | AHL | Tucson Roadrunners | 18 | 5 | 7 | 12 | 11 | -3 |
| 2020–21 (playoffs) | NL | Biel-Bienne | 2 | 0 | 0 | 0 | 0 | -1 |
| 2020–21 | WC | Switzerland | 7 | 0 | 2 | 2 | 2 | +5 |
| 2020–21 | NL | EHC Biel-Bienne | 48 | 9 | 21 | 30 | 10 | +18 |
| 2019–20 | WJC-20 | Switzerland U20 | 5 | 0 | 4 | 4 | 2 | +2 |
| 2019–20 | Champions HL | EHC Biel-Bienne | 9 | 1 | 2 | 3 | 0 | +9 |
| 2019–20 | NL | EHC Biel-Bienne | 40 | 2 | 7 | 9 | 10 | +4 |
| 2018–19 (playoffs) | NL | Biel-Bienne | 12 | 0 | 2 | 2 | 6 | +3 |
| 2018–19 | WC | Switzerland | 3 | 0 | 0 | 0 | 0 | +1 |
| 2018–19 | WJC-20 | Switzerland U20 | 7 | 0 | 2 | 2 | 2 | -4 |
| 2018–19 | NL | EHC Biel-Bienne | 43 | 0 | 7 | 7 | 20 | +8 |
| 2017–18 (playoffs) | Elite Jr. A | Biel-Bienne U20 | 8 | 3 | 3 | 6 | 6 | — |
| 2017–18 | Elite Jr. A | Biel-Bienne U20 | 41 | 6 | 16 | 22 | 22 | — |
| 2017–18 | WJC-18 | Switzerland U18 | 6 | 0 | 0 | 0 | 2 | -1 |
| 2017–18 | NL | Biel-Bienne | 2 | 0 | 1 | 1 | 0 | +1 |
| 2017–18 | Ivan Hlinka Memorial | Switzerland U18 | 4 | 0 | 1 | 1 | 0 | — |
| 2016–17 (playoffs) | Elite Novizen | Biel-Bienne U17 | 6 | 1 | 2 | 3 | 4 | — |
| 2016–17 (playoffs) | Elite Jr. A | Biel-Bienne U20 | 3 | 0 | 0 | 0 | 2 | — |
| 2016–17 | Elite Novizen | Biel-Bienne U17 | 28 | 2 | 4 | 6 | 6 | — |
| 2016–17 | Elite Jr. A | Biel-Bienne U20 | 15 | 0 | 3 | 3 | 4 | — |
| 2015–16 (playoffs) | Elite Novizen | Biel-Bienne U17 | 5 | 0 | 1 | 1 | 0 | — |
| 2015–16 | Top Novizen | Neuchâtel U17 | 2 | 2 | 1 | 3 | 2 | — |
| 2015–16 | Elite Novizen | Biel-Bienne U17 | 41 | 1 | 7 | 8 | 6 | — |
| 2014–15 (playoffs) | U17-Elit | Biel-Bienne U17 | 6 | 0 | 0 | 0 | 4 | — |
| 2014–15 | U17-Top | Tramelan U17 | 14 | 5 | 5 | 10 | 2 | — |
| 2014–15 | U15-Elit | Biel-Bienne U15 | 28 | 8 | 13 | 21 | 8 | — |
| 2014–15 | U17-Elit | Biel-Bienne U17 | 1 | 0 | 0 | 0 | 0 | — |
| 2013–14 (playoffs) | U15-Elit | Biel-Bienne U15 | 2 | 0 | 0 | 0 | 0 | — |
| 2013–14 | U15-Elit | Biel-Bienne U15 | 26 | 1 | 7 | 8 | 2 | — |
| 2012–13 | U15-Top | Zuchwil U15 | 2 | 0 | 2 | 2 | 0 | — |
| 2012–13 | U15-Elit | Biel-Bienne U15 | 10 | 0 | 0 | 0 | 0 | — |
| 2011–12 | U15-Top | Zuchwil U15 | 10 | 6 | 8 | 14 | 0 | — |
Source: NHL.com data. Player status per the NHL player registry.