Live
Every in-play game, ticking in realtime — green = home, blue = away. Each chiclet lists who scored, who came on and red cards, with the minute, each club’s 📊 league table — official standing, win–draw–loss record and points, and each club’s ⚡ clinical power — goals per 100 xG this season (100 = scores what its chances are worth; above is clinical, below wasteful), 🎯 offence power — everything that leads to goals: chances created, shot volume, shots on target, pressure (corners) and goals per game against the league (50 = league average; above 50 potent, below blunt) with goals scored per game, 🛡 defence power — how few chances it allows against the league average (50 = league average; above 50 solid, below leaky) with goals allowed per game, 📈 momentum — recent form from the last five results, newest weighted heaviest (above 100 rising, below fading), 🥅 last 5 — each of those five games: who they faced, first-half score and second-half score as it stood on the pitch (home–away; away games keep the home club first), plus clinical / offence / defence (power and rank) and the archive table rank with the W–D–L record as they stood after that night, and 🔮 potential — underlying strength from chance quality both ways, with whether results lag it (upside) or run ahead of it (overachieving), and 🧤 clean sheets — the season total, how many in the last five, and the share of games kept clean — each with its rank in the league. 🥅 goals-per-half rows follow the clock: before the break, how often each club’s first halves produced 0 / 1 / 2 / 3+ goals in total, scored and allowed; after it, the same three splits over only the club’s past games that stood at this half-time score from that club’s side — a 2–0 home lead looks up the home club’s games when they led 2–0, and the away club’s games when they trailed 0–2. Markers for shots (incl. blocked), SOT, goals, corners, an xG vs time chart, a separate box-to-box graph — the home penalty box is the top line, the away penalty box is the bottom line, and time runs across. A dot is only the other team’s touch in that box — a team in its own box is left off. A flat stretch is the same end; a slope is the trip to the other box, and how wide that slope is is how long it took. Then a rolling 15′ pressure bar for who is in the other side’s final third right now, a pressure graph of that same window at every minute so you can see who was pinning whom 10′ ago, a possession graph — two ribbons, 1H and 2H, minutes along the x-axis, coloured green while the home side has the ball and blue when it changes hands — an intensity graph under those ribbons (end-to-end swings + how far the ball travels, scaled so the league’s typical game sits in the middle — above is hotter, below is quieter; ESPN has no player GPS so this is the ball’s path, not miles run) — a duel graph with three lines (home, away, 50%) over that same last 15′ window at every minute, and a territory heat of where the ball has actually been in those last 15′ (not the whole match). Switch to Finished for the same chiclet on today’s and yesterday’s full-time games, or Upcoming for today’s kickoffs that have not started yet. Tap a chiclet and the pitch graphic opens at the top — last 15′ of the ball, fading older touches, home attacking right — plus each team's formation and XI — every player's match power number, a freshness bar by minutes played, and ⇄ sub markers with the minute and who came off. Click a player for his card: every logged touch, pass and shot with the minute, a touch map, and a highlight cut list — download the clip times or an ffmpeg script and run it against your own recording of the broadcast — ▾ to collapse, or hold and drag ⠿ to reorder the board. League chips stack: click EPL then La Liga to see both.
Bets
Every no more goals this half alarm that fired today, split by league, plus the last 30 days and season record. Won means the half stayed goalless after the alarm. Lost means a goal landed. Live bets are still waiting on half-time or the final whistle. Season is every alarm still in the log. The Signals tab has the model behind the trigger.
WinProb
Scheduled EPL fixtures as chiclets — home / draw / away win probability from a Poisson attack–defence model over the cached seasons. The chart is the daily hit rate over the last 30 days; hover a bar for that day’s pick-% buckets, click a bar or a league bucket to pin those graded picks. Double-click a chiclet for each club’s last five games and head-to-head.
Matches
Today's scheduled fixtures first. Pick one, freeze the cut minute, then jump to Similar lookalikes.
Similar
Live match chiclets — tap one to match the current scoreline against each club’s history, then the league. Follow the branch tree as the score evolves.
0-0 at half time
Every archived game that went in level at 0-0, broken out by league and cut at 45′ — the same event strip and xG chart as Live, so you can read what a goalless half actually looks like. The profile card gives the 80% band (the middle of the pack, 10th to 90th percentile) for shots, on-target, corners and xG, and what happened after the break. Switch to Similar live to score today’s 0-0 first halves against the archive, minute for minute, and see how the closest lookalikes finished.
No more goals this half
For every live game the dashboard scores P(no goal for the rest of this half) from
the archive’s goal hazard by minute (stoppage time included), the league’s scoring rate,
whether the game is still 0–0, and the edge found by working backwards from every 0–0 half:
passes into the penalty box — how often these two clubs’ halves usually reach the box,
and how many entries this half has produced so far. When it clears the threshold inside the betting window it fires
once per half — on the chiclet and, with EEESOC_DISCORD_WEBHOOK set, in
Discord — then tracks the half to held or busted. The live record is a
daily bar (green held, red busted) — click a day to open those game chiclets.
The tables below replay the whole archive so you can see what each threshold would have done,
and whether the probabilities mean what they say. 1 / P is the decimal price you need to break even.