NHL shot data
Explore shot locations, outcomes, distance, angle, and game situations. Observed shot analytics with versioned xG estimates where available.
123 matching attempts. Season coverage: 1511 published games / 1511 collected games. Last source refresh: Oct 4, 2026 16:15.
xG V1 is a 0–1 goal probability for scored unblocked, non-empty-net regular-season attempts. N/A means excluded or not yet scored; hover for the reason. CSV includes the scoring status and model version.
| Date / game | Period / time | Team / shooter | Outcome | Distance (ft) | Angle (°) | Strength | xG |
|---|---|---|---|---|---|---|---|
| 2023-11-30 DAL at CGY | 1 REG 00:04 | DAL M. Heiskanen | Saved shot | 129.1 | 16.2 | EV | 0.002 |
| 2023-11-30 DAL at CGY | 1 REG 02:56 | DAL M. Heiskanen | Block | 25.5 | 25.6 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 02:58 | DAL S. Steel | Saved shot | 9.4 | 32.0 | EV | 0.101 |
| 2023-11-30 DAL at CGY | 1 REG 03:19 | DAL R. Suter | Saved shot | 46.5 | 28.2 | EV | 0.020 |
| 2023-11-30 DAL at CGY | 1 REG 04:42 | CGY B. Coleman | Saved shot | 23.0 | 2.5 | EV | 0.133 |
| 2023-11-30 DAL at CGY | 1 REG 04:51 | DAL T. Harley | Goal | 16.0 | 3.6 | EV | 0.169 |
| 2023-11-30 DAL at CGY | 1 REG 05:37 | DAL S. Steel | Block | 20.6 | 14.0 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 05:45 | CGY C. Zary | Saved shot | 6.7 | 63.4 | EV | 0.119 |
| 2023-11-30 DAL at CGY | 1 REG 06:02 | CGY A. Mangiapane | Miss | 28.0 | 2.0 | EV | 0.069 |
| 2023-11-30 DAL at CGY | 1 REG 06:08 | CGY E. Lindholm | Saved shot | 59.1 | 18.7 | EV | 0.035 |
| 2023-11-30 DAL at CGY | 1 REG 07:20 | DAL W. Johnston | Miss | 47.8 | 52.7 | EV | 0.009 |
| 2023-11-30 DAL at CGY | 1 REG 07:28 | CGY D. Gilbert | Saved shot | 19.8 | 45.0 | EV | 0.096 |
| 2023-11-30 DAL at CGY | 1 REG 08:02 | CGY C. Tanev | Goal | 11.7 | 59.0 | EV | 0.080 |
| 2023-11-30 DAL at CGY | 1 REG 09:45 | CGY J. Oesterle | Block | 15.7 | 63.4 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 09:55 | DAL M. Marchment | Saved shot | 64.1 | 34.2 | EV | 0.008 |
| 2023-11-30 DAL at CGY | 1 REG 10:04 | DAL R. Suter | Miss | 37.8 | 52.5 | EV | 0.035 |
| 2023-11-30 DAL at CGY | 1 REG 10:27 | CGY N. Hanifin | Miss | 35.4 | 73.6 | EV | 0.019 |
| 2023-11-30 DAL at CGY | 1 REG 10:32 | CGY E. Lindholm | Saved shot | 60.4 | 6.7 | EV | 0.034 |
| 2023-11-30 DAL at CGY | 1 REG 10:51 | DAL J. Hakanpää | Block | 40.0 | 36.9 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 11:04 | DAL J. Hakanpää | Block | 30.5 | 41.0 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 11:24 | CGY R. Andersson | Miss | 60.9 | 14.3 | EV | 0.007 |
| 2023-11-30 DAL at CGY | 1 REG 11:41 | CGY N. Kadri | Block | 7.3 | 15.9 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 12:15 | DAL S. Steel | Saved shot | 33.4 | 51.1 | EV | 0.029 |
| 2023-11-30 DAL at CGY | 1 REG 12:26 | DAL R. Suter | Block | 19.7 | 30.5 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 14:10 | CGY C. Zary | Saved shot | 23.1 | 85.0 | EV | 0.020 |
| 2023-11-30 DAL at CGY | 1 REG 15:29 | CGY M. Backlund | Saved shot | 20.9 | 16.7 | EV | 0.166 |
| 2023-11-30 DAL at CGY | 1 REG 15:30 | CGY N. Hanifin | Goal | 14.0 | 4.1 | EV | 0.033 |
| 2023-11-30 DAL at CGY | 1 REG 15:45 | DAL R. Faksa | Saved shot | 15.8 | 18.4 | EV | 0.144 |
| 2023-11-30 DAL at CGY | 1 REG 15:45 | DAL R. Suter | Block | 47.9 | 26.0 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 16:28 | DAL M. Heiskanen | Block | 17.0 | 3.4 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 17:16 | DAL N. Lundkvist | Saved shot | 38.4 | 38.7 | EV | 0.031 |
| 2023-11-30 DAL at CGY | 1 REG 17:22 | CGY A. Greer | Saved shot | 31.1 | 45.0 | EV | 0.048 |
| 2023-11-30 DAL at CGY | 1 REG 18:17 | DAL J. Robertson | Miss | 64.8 | 13.4 | EV | 0.008 |
| 2023-11-30 DAL at CGY | 1 REG 18:38 | DAL T. Seguin | Miss | 14.1 | 81.9 | EV | 0.046 |
| 2023-11-30 DAL at CGY | 1 REG 18:40 | DAL M. Heiskanen | Block | 14.1 | 45.0 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 18:40 | DAL M. Duchene | Saved shot | 3.6 | 56.3 | EV | 0.272 |
| 2023-11-30 DAL at CGY | 1 REG 18:52 | DAL M. Marchment | Miss | 22.8 | 15.3 | EV | 0.133 |
| 2023-11-30 DAL at CGY | 1 REG 18:58 | DAL T. Seguin | Block | 20.6 | 29.1 | EV | N/A |
| 2023-11-30 DAL at CGY | 1 REG 19:00 | DAL M. Marchment | Goal | 22.1 | 5.2 | EV | 0.163 |
| 2023-11-30 DAL at CGY | 2 REG 00:23 | DAL M. Heiskanen | Miss | 52.4 | 28.5 | EV | 0.029 |
| 2023-11-30 DAL at CGY | 2 REG 01:19 | CGY R. Andersson | Block | 41.9 | 33.3 | EV | N/A |
| 2023-11-30 DAL at CGY | 2 REG 01:38 | CGY N. Hanifin | Block | 30.9 | 24.9 | PP | N/A |
| 2023-11-30 DAL at CGY | 2 REG 02:10 | CGY N. Hanifin | Block | 26.0 | 22.6 | PP | N/A |
| 2023-11-30 DAL at CGY | 2 REG 02:18 | CGY N. Hanifin | Saved shot | 54.0 | 2.1 | PP | 0.034 |
| 2023-11-30 DAL at CGY | 2 REG 02:24 | CGY J. Huberdeau | Saved shot | 12.5 | 28.6 | PP | 0.076 |
| 2023-11-30 DAL at CGY | 2 REG 02:30 | CGY J. Huberdeau | Miss | 12.2 | 9.5 | PP | 0.194 |
| 2023-11-30 DAL at CGY | 2 REG 02:34 | CGY N. Hanifin | Saved shot | 32.9 | 19.5 | PP | 0.121 |
| 2023-11-30 DAL at CGY | 2 REG 02:46 | CGY E. Lindholm | Miss | 30.5 | 66.8 | PP | 0.060 |
| 2023-11-30 DAL at CGY | 2 REG 03:01 | CGY N. Hanifin | Block | 20.6 | 14.0 | PP | N/A |
| 2023-11-30 DAL at CGY | 2 REG 03:08 | CGY E. Lindholm | Saved shot | 32.2 | 36.2 | PP | 0.077 |
About this dataset
Shootouts are excluded. Unblocked attempts include goals, saved shots, and misses. All attempts also include blocks. Empty-net attempts remain included and are labelled in the CSV.
Coordinates are normalized toward the attacking net. Older NHL data may require direction inferred from a strong period-wide shot consensus; orientation_source records this. Missing or ambiguous locations produce blank distance and angle. Player IDs remain available when names are unknown.
The rebound flag means a same-team saved shot immediately preceded the attempt within three seconds. Historical NHL final shot totals may differ from the event feed. Coverage describes collected and published games, not a guarantee that the upstream summary contains every NHL game.