About

Notts County match data & analysis, sourced from Sofascore.

Glossary

AppsAppearances (matches with ≥1 minute played)
MinTotal minutes played
TouchesTouches
PassesPasses completed / attempted
%Pass completion %
Long%Long balls as % of all the player's passes (how long-ball oriented, NOT a success rate)
Fwd%Forward passes as % of completed passes
Lat%Sideways passes as % of completed passes
Back%Backward passes as % of completed passes
KeyKey passes (a pass leading directly to a shot)
ProgProgressive passes (Wyscout: distance to goal cut ≥30m own half / ≥15m own→opp / ≥10m opp half)
CrossesCrosses completed / attempted
%Cross completion %
LongLong balls completed / attempted
%Long balls completed %
CarBall carries
ProgCProgressive carries (FBref: ≥10y closer from outside the final 40%, ≥5y inside, or into the box)
T-onTake-ons (dribbles) won / attempted
T-on%Take-on (dribble) success %
ChancesBig chances created
ShotsShots taken
SoT%Shots on target as % of shots taken
GGoals
AAssists
TacklesTackles won / attempted
Tkl%Tackle success %
IntInterceptions
ClrClearances
BlkBlocks (shots/passes blocked)
RecBall recoveries
AerialAerial duels won / total
Aer%Aerial duels won %
DuelTotal duels won / total
Duel%Duels won %
DispTimes dispossessed (lost the ball to a challenge)
PastTimes dribbled past
FlsFouls committed
Min/appMinutes per appearance — total minutes ÷ appearances; a quick read on whether he tends to play full games or part-games.
YCYellow cards.
RCRed cards (a straight red or a second yellow).

Modelled & advanced stats

These power the Key stats tables and shot tooltips, for the 2025-26 season only (they need per-action coordinate data). They are modelled — our own estimates on a League One/Two-specific model, not official figures — and inherit the flow map’s reconstruction caveats (no timestamps, no pressure/tracking data). Useful indicators, not exact truth; VAEP DEF in particular is experimental.

xGExpected goals — the chance quality of a shot (0–1), modelled from its location, angle, body part and situation on a League One/Two-specific model (the feed carries no xG at this level).
xGOTExpected goals on target — post-shot xG for on-target shots, factoring where in the goal they were placed (a corner beats a central strike). Off-target shots score 0.
xAExpected assists — the xG of the shot a player's pass created (chance creation, whether or not it was finished).
xA opExpected assists from open play only — excludes set-piece deliveries (corners, free-kicks) that otherwise inflate a dead-ball taker.
xTExpected threat — how much a player's completed passes and carries move the ball into more dangerous areas (goal-probability units). Rewards progression.
VAEP OFFOffensive value — chance value added to possessions through progression and shots, minus value lost to turnovers. OFF/90 is per 90 minutes.
VAEP DEFDefensive value — opposition threat removed by ball-wins, blocks and clearances, minus threat conceded by turnovers. Experimental: with no pressure data it over-credits high-volume deep defenders. DEF/90 is per 90.
xGChain (xGC)Total xG of every possession a player was involved in that ended in a shot — a broad 'involvement in dangerous moves' measure.
xGBuildup (xGB)xGChain excluding the shooter and the assister — isolates deep build-up contribution (progressors who aren't near the end of the move).

Goalkeeping stats

The GK tab (season and match) covers a keeper’s three jobs: shot-stopping (how many goals he prevented versus what an average keeper would concede), command of his area (claims, punches, sweeping), and distribution (passing volume, accuracy and how often he goes long). Goals prevented and xGOT faced use our modelled post-shot xG, so they only appear from 2025/26; each match is credited to its primary keeper, and own goals and off-target shots are excluded.

Apps (GK)Matches as Notts' primary goalkeeper — each game is credited to the keeper who played most of it.
SoT facedShots on target faced.
SavesSaves made (Sofascore).
GAGoals conceded from the shots he faced (own goals excluded).
xGOT facedThe post-shot expected goals (xGOT) of every on-target shot he faced, summed — i.e. the goals an average keeper would be expected to concede from those shots.
Goals preventedxGOT faced − goals conceded: shot-stopping relative to an average keeper. Positive = he saved more than expected, negative = fewer. Needs modelled xG, so 2025/26 onward.
ClaimsHigh claims — crosses caught under pressure (command of his area).
PunchesPunched clearances.
SweeperKeeper-sweeper actions — rushing off his line to clear — shown completed / attempted.
Passes / Pass%Passing volume and completion rate — the keeper's distribution.
Long% (GK)Long-ball completion rate — accuracy of his long distribution (a success rate, unlike the outfield Long% which is a share).
Launch%Long balls as a share of all his passes — how direct his distribution is (higher = goes long more often); not a success rate.

“vs season”

Each match player-stats table (In possession, Out of possession, Key stats and GK) has a vs season checkbox. Ticking it keeps this game’s value and adds, beneath it, the player’s season-so-far average for that stat and a % change vs that average, coloured green when this game beat his average and red when it fell short (inverted for stats you want low — goals conceded, times dispossessed, fouls). The average is his per-appearance mean over that season’s league games up to and including this match (appearances = games with at least one minute). While ticked, sorting a column ranks by the % change rather than the raw value, so you can see who most over- or under-performed their usual level. It only appears once a player has league history that season, and early on the average rests on very few games — read it lightly.

Pass map & flow accuracy

Sofascore does not publish timestamps or an explicit passer→receiver link, so the game-flow map is reconstructed: possession sequences are stitched together by pitch proximity and player continuity, and each pass’s receiver is inferred from the nearest teammate touch. This is an approximation. A completed pass whose receiver can’t be identified is marked ??; a ball lost to the opposition is marked with a red or, when a player is tackled on a take-on, ⊘ dispossessed. Treat individual chains as best-effort rather than an official record.

League tables (standings, form, momentum & xPts)

On a season page, the League tables tab rebuilds the full division picture for that season from every club’s results. Choose any dated gameweek and team: Standings is the 24-team table as of that round; Form ranks every side by their last six games; and Season momentum plots a club’s rolling six-game points-per-game against its league position after each week, with the background shaded by result (win / draw / loss) — hover any week for the detail, or click a table row to switch team. The xPts sub-tab re-sorts the whole division on expected points — a Poisson of each game’s modelled team xG rather than the result — with columns for xPts, actual Pts and their difference Δ (positive = a club banked more than its chances deserved). The xG is our own level-normalised model scored over every shot in the division (all League Two clubs, from the shotmap corpus that trains the model), so every regular-season fixture is covered; the xG column counts a club’s modelled games (play-offs and the odd unmapped tie fall back to the actual result). Hover a row for the breakdown. It’s all computed live in your browser, so it works mid-season too: rolling windows and tables simply cap at the games played so far.

Points share

Under Player stats → Points share is a football take on basketball’s Win Shares. Each league game’s points (3/1/0) are split into an attacking and a defending pool, then shared among the players who featured, by their contribution that game — so the Pts column adds up to the team’s actual league points. Attackers earn from goals, assists, xG and chance-creation; outfield defenders from ball-winning volume; goalkeepers from shot-stopping (post-shot save value) net of costly errors, plus build-up (distribution) — so a keeper who shot-stops well but gives the ball away or errs isn’t over-rewarded. Two versions sit side by side: actual (real goals & results) and xPts (expected points from xG), and the gap Δ is finishing & luck. It’s a season metric (too noisy game-by-game) and a team measure — a player’s share is capped by the points the side actually won, so use % of team points to compare across seasons. xPts needs xG, which Sofascore only provides from 2025/26.

The total is the number that matters: the table defaults to sorting by xPts descending (actual points share for seasons without xG), the totals are what reconcile to the team’s league points, and the % and per-90 columns are simply derived from them — the totals drive every calculation, never the other way round. Treat per-90 as a read-off, not a ranking: it’s a rate, so for a low-minute player it swings on a handful of moments and can flatter a fringe or since-dropped squad member. For anyone under roughly a season’s worth of minutes, trust the total, not the rate.

Questions, issues & bugs

Spotted something wrong, or have a question? Get in touch with @nottscounting on Twitter/X. You can also follow NYC Magpies on Instagram.