Gabriel Vilardi
Winnipeg Jets · C · R shot · age 27 at the dated snapshot.
- Team
- WPG
- Lane
- C
- Age
- 27
How the points were built
Official NHL 2025–26 regular-season reports. A missing split stays “—”; it is never converted to zero.
8 C regulars in WPG
The all-team median is 7. WPG’s farm system ranks #22 in the maintained two-board consensus.
Questions a GM still has to answer
- How much of the scoring comes at five-on-five, on special teams, or into an empty net?
- Is the player creating the play, finishing it, or receiving a secondary point?
- Does deployment reveal trust, scarcity, underuse, or a role the roster cannot offer?
- What contract, acquisition cost, development alternative and Cup-window effect complete the argument?
WPG do not play today
League schedule for 2026-09-29; next league date 2026-09-30.
Nothing listed against him.
Gabriel Vilardi is in the middle of the pack for attention (48th percentile); attention is up on the usual
How much he is being talked about: the league's own stories tagged to him, daily pageviews of his Wikipedia article against his own 90-day baseline, posts naming him on the connected networks (Bluesky), and the roster moves and listings that make noise. A measure of attention. Whether it affects a player is his business, and a question the history will let us test later.
Social: 3 posts named him this week on Bluesky · 25 likes, reposts and replies · no baseline yet, it needs a week of readings.
$7.50M cap hit
2025–26 through 2030–31 · UFA at expiry. Certified
Both signals › Cheaper than his position's median cost per point AND drives five-on-five scoring or kills penalties.
- 64% of his five-on-five shifts started in the offensive zone, a sheltered deployment that flatters scoring.
- His team shot 12.1% with him on the ice at five-on-five, well above the league norm near 8–9%. Some of the scoring is likely to regress.
- Falling below 60 points at this cap hit would drop the cost test.
Expected goals
CapOrCup's shot model (distance, angle, shot type, strength, rebounds, rushes), trained on 2023-24 and 2024-25 and tested on unseen games (AUC 0.756). Finishing is goals minus expected goals; it is noisy in one season.
What happens while he plays
Measured from the league's play-by-play and shift charts, not from the scoresheet. Expected goals are counted for every player on the ice, and a goal is credited to whoever was on the ice when the sequence began, including players who had changed off before it was scored.
Goals, assists and plus/minus, weighted by what they changed
Every goal counts the win probability it added, scaled so the average goal is 1.0: a late tying goal counts several, a goal at 6-1 or into an empty net late counts little. Plus/minus also credits the players on the ice when the goal's sequence began.
Where he shoots from, and how it goes
Every unblocked shot placed by distance, angle and shot type. His rate from each spot is set against the league's rate for the same shot from the same spot, so the edge is against everyone else taking that shot, not against an average.
Gabriel Vilardi, season by season
Each dot is one season. The amber bar is what his earlier seasons and his age predicted for that season (80% band), so a dot far above its bar is a season the numbers did not see coming. The shaded band is where most players at his position sit at each age.
Position band: quantile regression (10th/50th/90th) of qualifying seasons on an age spline, weighted for players who drop out.
What the numbers found
No shipped label applies. A label is a measured finding about a run of seasons (for example, a spike that came back to the old level), and it is shown only for label types that passed their test on held-out seasons.
Projection at the draft
At the draft the model expected 74 NHL hours through his age-25 season (80% band 7 to 119). He logged 72 hours, between the 10th percentile and the median.
Every season
| Season | Age | GP | Level | Expected (80%) |
|---|---|---|---|---|
| 2019-20 | 20 | 10 | 55.1 | 6.2 to 79.4 |
| 2020-21 | 21 | 54 | 34.3 | 30.7 to 76.9 |
| 2021-22 | 22 | 25 | 21.0 | 21.9 to 62.3 |
| 2022-23 | 23 | 63 | 48.3 | 18.8 to 52.6 |
| 2023-24 | 24 | 47 | 58.1 | 29.6 to 62.7 |
| 2024-25 | 25 | 71 | 66.7 | 37.2 to 68.2 |
| 2025-26 | 26 | 82 | 63.7 | 47.5 to 77.0 |
Source: CapOrCup careers desk (method and league curves) · as of 2026-09-29
Who looked like this at 23 to 26
Careers are compared as league-adjusted points per game by age, over the same ages. The comparables below are the closest lines, and what matters is the spread of what they did next, not any single name.
This player so far: age 14 ETABHL 1.65 → age 15 OEMMHL 1.86 → age 16 OHL 0.61 → age 17 OHL 1.25 → age 18 OHL 1.81 → age 20 NHL 0.70 → age 21 NHL 0.43 → age 22 NHL 0.28 → age 23 NHL 0.65 → age 24 NHL 0.77 → age 25 NHL 0.86 → age 26 NHL 0.84
| Player | Distance (lower is closer) | What he did afterwards |
|---|---|---|
| Miroslav SatanC · matched at ages 23, 24, 25, 26 | 0.06 | age 27 NHL 0.89 → age 28 NHL 0.95 → age 29 NHL 0.69 → age 30 Slovakia 0.22 → age 31 NHL 0.81 |
| Nikolaj EhlersL · matched at ages 23, 24, 25, 26 | 0.07 | age 27 NHL 0.84 → age 28 NHL 0.74 → age 29 NHL 0.91 → age 30 NHL 0.87 |
| Ryan Nugent-HopkinsC · matched at ages 23, 24, 25, 26 | 0.08 | age 27 NHL 0.67 → age 28 NHL 0.79 → age 29 NHL 1.27 → age 30 NHL 0.84 → age 31 NHL 0.63 |
| Brayden SchennC · matched at ages 23, 24, 25, 26 | 0.09 | age 27 NHL 0.75 → age 28 NHL 0.82 → age 29 NHL 0.64 → age 30 NHL 0.94 → age 31 NHL 0.79 |
| Ryan O'ReillyC · matched at ages 23, 24, 25, 26 | 0.10 | age 27 NHL 0.75 → age 28 NHL 0.94 → age 29 NHL 0.86 → age 30 NHL 0.96 → age 31 NHL 0.74 |
| Bo HorvatC · matched at ages 23, 24, 25, 26 | 0.11 | age 27 NHL 1.10 → age 28 NHL 0.84 → age 29 NHL 0.70 → age 30 NHL 0.84 |
| Jared McCannL · matched at ages 23, 24, 25, 26 | 0.11 | age 27 NHL 0.78 → age 28 NHL 0.74 → age 29 NHL 0.77 |
| Pavel BuchnevichL · matched at ages 23, 24, 25, 26 | 0.11 | age 27 NHL 1.06 → age 28 NHL 0.79 → age 29 NHL 0.75 → age 30 NHL 0.59 |
Reading it
If most comparables became NHL regulars and their later peak sits well above this player's current line, the numbers say there is room to grow. If most did not, the numbers say the odds are against it. Either way it is what the data shows, not a name chosen to flatter.
Every goal, with the league's video
Preseason, regular season and playoffs are kept apart. Each row links to the NHL's own highlight page; no video is hosted here. Where a clip has been reviewed, the reading of it is a model judgement of the frames, not a measurement.
Loading…
What the club lists him as
An injury listing and a projected slot are the club's statements relayed by a licensed feed, shown with their dates. CapOrCup infers nothing from them.
Projected slot · line 2 right wing, first power-play unit (WPG depth chart as of 2026-09-28; Sportradar NHL API v7, team depth charts)
Games missed
The NHL publishes no injury feed. This counts games his club played while he did not dress, for any reason: injury, illness, a healthy scratch, a suspension or a trade gap. No cause is claimed.
Either side of that absence: 0.66 points per 60 in the ten games before, 0.42 in the ten after. A rate change over a small sample, not evidence of a lingering injury.
Speed, shot and ice
From the NHL's own player-tracking data. Percentiles are the NHL's: the share of the league below this player.