Hockey Terminal
Be a GM

← All players

Photo of Ville Heinola

Ville Heinola

#34 · Defence · Vegas Golden Knights

Born Mar 2, 2001 in Honkajoki, FIN (age 25) · 6'0", 186 lb · Shoots left · Drafted 20th overall in 2019 by WPG (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.

Adam Ginning PHI · 0 P in 5 GP Michael Callahan BOS · 0 P in 5 GP Abram Wiebe CGY · 0 P in 4 GP Henry Thrun TOR · 0 P in 4 GP Jaycob Megna VGK · 0 P in 4 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.

0123452019-20: 5 points519-202020-21: 0 points020-212021-22: 5 points521-222022-23: 1 points122-232024-25: 1 points124-252025-26: 0 points025-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
2019-20 WPG 8 1 4 5 3 4 10 3 0.63 $925K
2020-21 WPG 5 0 0 0 -2 2 9 2 0.00 $894K
2021-22 WPG 12 0 5 5 -2 10 25 9 0.42 $863K
2022-23 WPG 10 0 1 1 -5 2 5 7 0.10 $863K
2024-25 WPG 18 0 1 1 6 4 12 8 0.06 $800K
2025-26 WPG 5 0 0 0 0 4 7 6 0.00 $800K
6 seasons Career 58 1 11 12 0 26 68 35 0.21

2025-26 season totals

GP G A P +/- PIM Shots Hits P/GP Shooting % Avg TOI
5 0 0 0 0 4 7 6 0.00 0.0 14:06

Contract

$800KCap hitends in 2026, then RFA
$2.483MCap dollars per goal above replacement0.3 goals above replacement

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.

The contract

Signed by the Winnipeg Jets on Jul 15, 2024, as a new contract: 2 years and $1.6M, beginning in 2024-25. It runs through 2025-26, so this is its last season, after which he is a restricted free agent.

Season Cap hit Base salary Signing bonus Performance bonuses Paid in all Clause
2024-25 $800K $800K $0 $800K
2025-26 $800K $800K $0 $800K

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
Jul 1, 2026 Vegas Golden Knights New contract 2026-27 to 2026-27 1 $850K $850K
Jul 15, 2024 Winnipeg Jets New contract 2024-25 to 2025-26 2 $1.6M $800K
Jul 15, 2019 Winnipeg Jets Entry-level 2021-22 to 2023-24 signed for 2019-20, slid 3 $3.413M $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

Rating

+0.3Goals above replacementsix goals are worth about one win
+0.1Wins above replacementgoals above replacement divided by six
+0.1Goals above averagethe five parts below added up
Even-strength offence+0.2Even-strength defence+0.1Power play-0.1Penalty kill+0.0Penalties-0.2

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. A full season is about two-thirds the player and one-third chance. He has played fewer than 20 games, too few to be ranked.

-1-0.500.512019-202020-212021-222022-232024-252025-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

58.2Corsi for %71 attempts for, 51 against
+10.9CF% relative to teamagainst the team without him
56.4Expected goals for %3.9 expected for, 3.0 against
+12.1xGF% relative to teamagainst the team without him
57.0Fenwick for %unblocked attempts
50.0Goals for %2 for, 2 against
97.2PDO5.6% shooting + 91.7% saves
14Attempts takenhis own shot attempts

These are left plain: he has not been on the ice enough to be ranked. That takes at least 200 shot attempts with him out there, about six or seven games, and a quarter of what the busiest skater has. Over a game or two these numbers are mostly chance.

Who he played with

Defence pairGPTimeCF%xGF%Goals
Luke Schenn · Ville Heinola217:1048.645.61-1
Haydn Fleury · Ville Heinola19:4950.032.80-1
Colin Miller · Ville Heinola17:2650.042.20-0
Ville Heinola · Isaak Phillips17:0525.00.00-0

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.

0Goalsnot counting empty-netters
0.5Expected goalsfrom 12 unblocked attempts
-0.5Goals above expectedgoals minus expected goals
Chances created 0.42 expected goals per 60 minutes96th
Shot quality 4.1% chance per attempt78th
Finishing -0.5 goals above expected38thOne 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.

00.20.40.60.81Expected 0.5Goals 0

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
Apr 16, 2026 vs SJS L 1-6 0 0 0 -1 4 0 0 15:54
Apr 14, 2026 @ UTA L 3-5 0 0 0 1 0 2 1 14:54
Mar 5, 2026 vs TBL W 4-1 0 0 0 0 0 1 1 13:51
Feb 27, 2026 @ ANA L 4-5 (OT) 0 0 0 -1 0 2 2 12:07
Feb 25, 2026 @ VAN W 3-2 (OT) 0 0 0 1 0 2 2 13:44