NHL shot data
Explore shot locations, outcomes, distance, angle, and game situations. Observed shot analytics with versioned xG estimates where available.
136 matching attempts. Season coverage: 1328 published games / 1328 collected games. Last source refresh: Oct 4, 2026 04:38.
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 |
|---|---|---|---|---|---|---|---|
| 2019-10-27 SJS at OTT | 1 REG 00:21 | OTT N. Zaitsev | Block | 17.1 | 6.7 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 01:11 | SJS T. Heed | Saved shot | 53.7 | 45.0 | EV | 0.008 |
| 2019-10-27 SJS at OTT | 1 REG 01:23 | SJS M. Ferraro | Block | 43.4 | 28.9 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 02:15 | SJS B. Dillon | Saved shot | 60.2 | 32.1 | EV | 0.010 |
| 2019-10-27 SJS at OTT | 1 REG 02:20 | SJS M. Vlasic | Block | 32.0 | 14.5 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 02:35 | SJS B. Burns | Miss | 55.0 | 19.1 | EV | 0.015 |
| 2019-10-27 SJS at OTT | 1 REG 02:51 | SJS P. Marleau | Block | 41.4 | 8.3 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 03:46 | SJS E. Kane | Miss | 36.1 | 56.3 | EV | 0.012 |
| 2019-10-27 SJS at OTT | 1 REG 04:01 | SJS B. Dillon | Block | 48.4 | 29.7 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 04:35 | SJS J. Thornton | Block | 34.0 | 24.3 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 04:42 | SJS T. Heed | Saved shot | 54.1 | 3.2 | EV | 0.018 |
| 2019-10-27 SJS at OTT | 1 REG 04:44 | SJS M. Sorensen | Saved shot | 15.0 | 36.9 | EV | 0.189 |
| 2019-10-27 SJS at OTT | 1 REG 05:10 | OTT T. Chabot | Block | 40.7 | 62.2 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 05:52 | SJS M. Vlasic | Block | 33.2 | 15.7 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 06:27 | OTT C. Tierney | Saved shot | 62.0 | 17.9 | EV | 0.019 |
| 2019-10-27 SJS at OTT | 1 REG 06:29 | OTT C. Brown | Miss | 56.9 | 30.6 | EV | 0.004 |
| 2019-10-27 SJS at OTT | 1 REG 06:34 | OTT C. Brown | Goal | 21.0 | 0.0 | EV | 0.221 |
| 2019-10-27 SJS at OTT | 1 REG 07:07 | OTT J. Pageau | Miss | 38.8 | 34.5 | EV | 0.039 |
| 2019-10-27 SJS at OTT | 1 REG 08:11 | SJS E. Karlsson | Block | 29.2 | 5.9 | PP | N/A |
| 2019-10-27 SJS at OTT | 1 REG 08:19 | SJS T. Hertl | Saved shot | 13.5 | 42.0 | PP | 0.071 |
| 2019-10-27 SJS at OTT | 1 REG 09:02 | SJS E. Kane | Saved shot | 22.2 | 7.8 | PP | 0.161 |
| 2019-10-27 SJS at OTT | 1 REG 09:30 | SJS E. Kane | Goal | 14.9 | 47.7 | PP | 0.107 |
| 2019-10-27 SJS at OTT | 1 REG 10:16 | SJS B. Burns | Block | 26.0 | 2.2 | PP | N/A |
| 2019-10-27 SJS at OTT | 1 REG 10:31 | SJS J. Thornton | Miss | 42.4 | 34.4 | PP | 0.052 |
| 2019-10-27 SJS at OTT | 1 REG 11:10 | SJS E. Karlsson | Miss | 52.0 | 2.2 | PP | 0.058 |
| 2019-10-27 SJS at OTT | 1 REG 11:23 | OTT B. Tkachuk | Miss | 16.1 | 60.3 | EV | 0.066 |
| 2019-10-27 SJS at OTT | 1 REG 11:32 | OTT T. Chabot | Block | 21.2 | 8.1 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 12:19 | OTT N. Paul | Saved shot | 7.2 | 56.3 | EV | 0.128 |
| 2019-10-27 SJS at OTT | 1 REG 12:27 | OTT M. Borowiecki | Saved shot | 64.1 | 31.0 | EV | 0.008 |
| 2019-10-27 SJS at OTT | 1 REG 12:29 | OTT M. Borowiecki | Block | 36.4 | 20.9 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 13:11 | SJS B. Burns | Block | 49.2 | 26.6 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 13:46 | SJS E. Karlsson | Saved shot | 54.0 | 1.1 | PP | 0.032 |
| 2019-10-27 SJS at OTT | 1 REG 13:54 | SJS L. Couture | Saved shot | 58.3 | 31.0 | PP | 0.028 |
| 2019-10-27 SJS at OTT | 1 REG 14:07 | SJS E. Karlsson | Saved shot | 54.7 | 9.5 | PP | 0.037 |
| 2019-10-27 SJS at OTT | 1 REG 14:14 | SJS T. Hertl | Saved shot | 11.0 | 0.0 | PP | 0.194 |
| 2019-10-27 SJS at OTT | 1 REG 14:15 | SJS E. Kane | Saved shot | 9.8 | 24.0 | PP | 0.043 |
| 2019-10-27 SJS at OTT | 1 REG 14:16 | SJS E. Kane | Block | 2.0 | 90.0 | PP | N/A |
| 2019-10-27 SJS at OTT | 1 REG 14:26 | SJS T. Meier | Miss | 41.0 | 47.0 | PP | 0.027 |
| 2019-10-27 SJS at OTT | 1 REG 15:00 | SJS B. Burns | Block | 44.6 | 15.6 | PP | N/A |
| 2019-10-27 SJS at OTT | 1 REG 15:06 | SJS T. Meier | Saved shot | 8.6 | 35.5 | PP | 0.110 |
| 2019-10-27 SJS at OTT | 1 REG 15:11 | SJS B. Goodrow | Saved shot | 28.2 | 6.1 | PP | 0.068 |
| 2019-10-27 SJS at OTT | 1 REG 15:17 | SJS B. Goodrow | Block | 11.0 | 5.2 | EV | N/A |
| 2019-10-27 SJS at OTT | 1 REG 15:27 | OTT N. Paul | Goal | 39.7 | 40.9 | EV | 0.034 |
| 2019-10-27 SJS at OTT | 1 REG 16:17 | OTT J. Beaudin | Saved shot | 19.2 | 62.1 | EV | 0.038 |
| 2019-10-27 SJS at OTT | 1 REG 17:33 | OTT A. Duclair | Block | 27.2 | 6.3 | PP | N/A |
| 2019-10-27 SJS at OTT | 1 REG 18:38 | OTT A. Duclair | Saved shot | 54.3 | 12.8 | PP | 0.053 |
| 2019-10-27 SJS at OTT | 1 REG 18:59 | OTT L. Brown | Saved shot | 12.6 | 71.6 | PP | 0.076 |
| 2019-10-27 SJS at OTT | 1 REG 19:59 | OTT T. Ennis | Block | 41.1 | 4.2 | PP | N/A |
| 2019-10-27 SJS at OTT | 2 REG 01:01 | OTT T. Ennis | Miss | 9.8 | 66.0 | EV | 0.076 |
| 2019-10-27 SJS at OTT | 2 REG 01:02 | OTT M. Borowiecki | Saved shot | 29.6 | 78.3 | EV | 0.006 |
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.