I’ve built a set of scrapers to gather information, stats and event data (e.g. coordinates of shots, goals and assists) for specific games. The following sites – which are all free – make it possible to find and collect an impressive amount of data (which would otherwise only be accessible via very expensive subscriptions to companies such as Wyscout or Statsbomb):

  1. FotMob (many competitions, with varying levels of detail/available data)
  2. Sofascore (many competitions, with varying levels of detail/available data)
  3. WhoScored (Detailed tournaments: English Premier League, Serie A, La Liga, Bundesliga, Ligue 1, Liga Portugal, Eredivisie, Russian Premier League, Brasileirão, Major League Soccer, Super Lig, Championship (ENG2), Scottish Premiership, League One (ENG3), Liga Professional, Jupiter Pro League, 2. Bundesliga, European Champions League, Europa League, English FA Cup, English League Cup, European Championship (Internationals), English Women’s Super League)
  4. FBRef (many competitions, with varying levels of detail/available data)
  5. Understat (English Premier League, Serie A, La Liga, Bundesliga, Ligue 1, Russian Premier League)


Game: Brighton & Hove Albion 1 – 0 Marseille, Europa League, December 14, 2023.

Link: https://www.fotmob.com/matches/marseille-vs-brighton/2x6hvy#4315104

Formation/lineups and list of players for each team (too detailed to be summarized in a single table)
Simon Adingra’s individual card for this match
Top Stats
Stats: Shots
Stats: Expected Goals
Stats: Passes
Stats: Defense
Stats: Duels
Shotmap & Shot Data
Match ‘momentum’ graph (not entirely clear which method/data it’s based on, perhaps xT)
Timeline of moments/goals/substitutes/cards


Game: West Ham United 3 – 0 Wolverhampton, Premier League, December 17, 2023.

Link: https://www.sofascore.com/west-ham-united-wolverhampton/dsM.

Substitutes/Bench are also included in the full tables/lists
Players’ Average Positions
Statistics, heatmaps and shotmaps for each player (here I’m using Mario Lemina as an example)
Best players for each team, according to Sofascore ratings
Match Timeline
Match statistics
Latest results (“form”) for each team, as well as their ranking (in the league/comp.), before the match.
Latest results between these two teams
‘Attacking Momentum’ Chart


Game: Manchester Utd 1 – 0 Wolverhampton Wanderers, August 14, 2023.

Link: https://understat.com/match/22284.

Shotmap + Shot Data (incl.. xG)
Match statistics
xG Flow Chart
This is just one example (Mario Lemina’s yellow card), to show that I have managed to find and extract this type of data (the scrapers for the other sites make reproducing the chronology of events in one table easier!)
Player Info and Stats


Game: Marseille 4 – 3 Ajax, Europa League, November 30, 2023.

Link: https://www.whoscored.com/Matches/1775737/Live/Europe-Europa-League-2023-2024-Marseille-Ajax.

Match Timeline (goals, incidents, cards substitutes)
Formation/lineup and Player List
Match/Team Stats

Although this is not visible on the page itself, you can also find individual information and statistics for each player:

Event data (shots, touches, passes, etc.). You can also filter for each team and each player!
Marseille’s completed passes
(created with Python, not in the page itself)
Marseille’s heatmap, based on data on touches, shots, passes and defensive actions
(created with Python, not in the page itself)


Game: Girona 3 – 0 Alavés, La Liga, December 18, 2023.

Link: https://fbref.com/en/matches/b26778b7/Girona-Alaves-December-18-2023-La-Liga.

General Match Info, including xG for each team
Team’s logos (links)
For each team: goals scored, xG, coach and captain
Date, time, competition, stadium and referees
Lineup and player list
Match and Team Stats
Player Stats
(as you can see in the screenshot above, there are seven player stats tables for each team)
Shots Table