◄ DENIEDCUMULATIVE xTCREATED ►
HOW TO READ
BLOCK DEPTH: fourth band of the evolution panel. It shows where each defence lives, in metres from its own goal: the median of every defensive action over a sliding quarter-hour, with a grey column beside each step for its sample count, because a median of three actions is a clue, not a statistic. Deep line = high on the band; a line that climbs is a line pushing up.
Tide (possession)Two “mercury” liquids: each zone takes the colour of the team holding the ball. Where they meet, effervescence marks the duels.
Bolt (xT)The build-up to the shot lights up (pass = fast, carry = slow). One badge per player involved.
Shot & goalThe move ends in a front-view goal behind the box, at the ball's real placement. Green = goal, red = save, orange = post.
Columns & quadrantBars = xT created / xT denied per player, cumulative up to the current minute; rows are sorted by that balance (keepers pinned first), so the top rows are the most influential players so far. Below: the quadrant. Creation reads UP, denial RIGHT, volume arc around every dot · the Z pill re-reads it in z-scores, and the xG / momentum evolution.
GLOSSARY
xG: probability a shot ends up in the net.
xGOT: xG on target, shot quality as it reaches the goal.
xT (threat): threat a player adds, one measured action at a time. A pass into a more dangerous spot counts, and so does the ground a shooter gains himself before striking. An action that adds nothing counts zero; none ever subtracts.
xT DENIED: threat taken back from the opponent (tackles, interceptions, recoveries) − threat conceded. Left blank for keepers: a save is neither a progression nor a recovery.
QUADRANT · AXES, ARC & Z: creation reads VERTICALLY (up = threat added), denial HORIZONTALLY (right = threat taken back). The outer arc around each dot is its volume of threat handled, always on, brighter at the freeze of an action, where the pale slice also shows the share of xG created. The quadrant opens in z-scores: each dot sits at its distance from the match average, in standard deviations of THIS match (both camps pooled, keepers excluded); the frame is the minimal bounding box of the cloud (every dot visible, no dead margin) and the axes cross at zero, the match average, wherever the box places them (it always contains it). The X pill in the panel title returns to raw xT: cumulative threat created (right) and denied (up). The outer arc around each dot is its volume of threat handled, always on, brighter at the freeze of an action, where the pale slice also shows the share of xG created.
GOALS PREVENTED: keepers only, third band of the evolution panel. It reads xGOT faced − goals conceded, shot by shot; above zero is what the keeper took off the scoreboard.
KEEPER CURVE: read like cumulative xG. One step per shot on target, up by its xGOT when saved, down by 1 − xGOT when conceded. Dashed line = zero · ball marker = goal conceded · flat dotted line = keeper never tested.
QUADRANT DOT: position = xT created × denied · size = xG + xG created (area ∝ value, hence the square root) · pale slice = % of that total which is xG created, measured clockwise from 12 o'clock · outer arc = xT volume handled · solid inner ring = goal, dashed = assist · dotted 40% outline = substituted · white ring + gold halo = team's top 3 · MED = median of what has been played so far (the role line holds within 15 % of it).
MINUTES PLAYED: both axes are cumulative totals, not per-minute rates. A substitute who came on late sits in the LOW VOLUME corner by construction, not for playing badly. The dotted outline marks a player who went off, but nothing marks one who came on, so read the bottom-left corner against the clock. The outer arc settles the other half: a short arc is a player who did little, a full one a player whose gains and losses cancelled out.
SHOT MAPS: final screen, one card per team. Goal-mouth above, origin half-pitch below. Every disc takes the colour of its outcome (GOAL / SAVED / BLOCKED / POST / WIDE / OVER), the same colours in both panels, identical to the legend under each title. Disc size = xG. Goals are drawn last and carry a dark contour, so a yellow goal mark stays readable when another shot overlaps it.
SHOT STORY: action cards carry how the chance happened: all three ways to strike at once (boot, boot, head) with the one used lit and named (RIGHT FOOT · LEFT FOOT · HEADER), the attack situation (CORNER · FREE KICK · COUNTER · OPEN PLAY), and, on goals, the provider commentator's own sentence, quoted verbatim. The summary adds TURNING POINTS (woodwork, errors leading to a shot, disallowed goals, and only when the match produced some) and HOW SHOTS CAME (body-part and situation split). The PRE-MATCH tile is a sheet of key figures: the league standing where the competition has one, form streaks for both sides, and the published head-to-head record, which covers the pitch at kick-off and holds until read, then clears.
🔥 / ❄️: 🔥 the bar reaches at least half of the longest bar on that side; ❄️ the value is negative, i.e. more threat lost than gained.
WHERE EACH FIGURE COMES FROM
DATA & CREDITS
EVENTS: WhoScored, Opta touch-by-touch.
SHOTS: SofaScore shotmap, with xG, xGOT and placement.
xG CREATED: the shot's xG credited to the passer flagged by Opta (Assisted qualifier). End-of-match aggregate shown on the top-rated cards.
RATINGS: SofaScore lineups & statistics.
xT: model computed in-house from Opta coordinates; every figure on screen is auditable via tools/audit_metrics.py.
◄ CREATEDCUMULATIVE xTDENIED ►