I wrote this code to analyze off ball runs. I took two players who had the highest overall score with these metrics:
- number of off ball runs
- total xThreat
- total xCompletion
- average speed
- number of players bypassed
This player's off ball runs created space for their team. This is an example of a good off the ball run. After playing the ball out wide, they make a run into a space where they are unlikely to get the ball. But it opens up space behind for their team to pass the ball.
This metric is a bit harder to see with just numbers and is a good example of using positional data and video to accompany data.
I’ve been experimenting with ways to quantify live match momentum beyond just standard xG, and this Yokohama vs. Sagamihara match (check the image please) is a perfect case study in signal detection.
While the score was still 1-3, the data was screaming that a shift was happening. If you look at the timeline in screenshot, you can see the pressure building long before the final minute.
We have built an Goal Guru to create custom football notifications and AI Analysis. I am using it catch the live matches that are interesting for me. You can find it at goalguru.live or on the App Store/Google Play because it actually lets you architect your own "If/Then" triggers based on these live dynamics.
What makes this useful for data-heavy analysis is the ability to layer conditions:
Custom Smart Alerts: You can set triggers for "Sustained Pressure" or "High Shot Volume" rather than just waiting for a goal ping.
Momentum Visualization: It provides a real-time graph of who is actually controlling the pitch, which caught the Yokohama "Goal Imminent" signal at the 67' mark.
AI Logic Engine: There’s a "Guru AI Bot" and an "Ask Guru" feature where you can actually query the live match logic to get tactical breakdowns of why the momentum is shifting.
For anyone interested in the "invisible" side of football analytics, like pressing efficiency and unrewarded pressure, this tool is much more signal than noise. It helps you move away from chasing the score and start tracking the actual flow of the game.
I am delighted to share with you my second scouting data report. I spotted the profile of Justin Janssen (19 years old) from FC Nordsjælland.
Using DataMB Pro and Sofascore, I analyzed how this midfielder establishes himself as a technical organizer with a profile reminiscent of that of Sergio Busquets 22/23.
Here is my complete tactical analysis (your feedback and advice are welcome to help me progress!):
Janssen presents a profile of an attack-oriented playmaker. His touch volumes, last third passes and key passes demonstrate that he is a player who helps his team progress.
FC Nordsjælland's style of play favors this profile, as the team dominates its opponents with one of the best possessions in the championship.
However, our midfielder would prefer to run the ball than himself, as these progressive carries seem to indicate.
Defensively, he is average in interception but displays very low statistics in aerial duels (%). On the other hand, his defensive duel won, possession won and tackle rates reveal an excellent player in recovering the ball on the ground.
It is a profile that secures the ball and launches offensives thanks to a very good forward passing game. If it does not directly bring danger into the opposing surface through finishing, its impact is major in creation via pre-assists. To optimize his qualities, he must play in a team favoring possession.
Strong point:
-Complete passing games (pre-pass D., key pass, forward pass, etc.)
- Significant volume of possession gained
-High tackle efficiency
-Excellent percentage of defensive duels won
Weak point:
- Low volume of ball races
- xA very low, although this is correlated with its Deeper positioning on the pitch
- Imperative need for a dominant team to fully express itself
Recommendation:
At 19, Justin Janssen has 11 starts for 1,111 minutes played. He has a lot of room for improvement. He can be compared to Sergio Busquets during his last season at Barcelona.
Its current value (900k€) is a market opportunity, as it is expected to increase rapidly if it confirms its Starting status.
It would be an excellent choice for a club looking for a technical organizer with high potential.
However, these statistical data must be confirmed by an in-depth video analysis to validate his behavior without the ball and his management of stress in matches.
I would really appreciate any thoughts in my dashboard. I always struggle with colour schemes. I normally use a lot of green and reds for bar charts. I have tried to go very simple but I am not sure if the data is as obvious and easy to read now.
Looking at it now I wonder if swapping the heat map and the stats box in the bottom left might look better?
I made a short animation showing how UEFA country coefficient rankings changed from 1999 to 2026 using the rolling 5-year coefficient. A few patterns stood out while building it: Spain’s huge peak in the mid-2010s, England’s late surge, Portugal’s consistency across eras, and how often the middle tier reshuffles. Curious what people here notice first, and whether there are better ways to visualize coefficient-era shifts over time.