Soccer League Results and Standings Scraper
Pricing
from $12.38 / 1,000 results
Soccer League Results and Standings Scraper
Get soccer results, league tables at any matchday, team form, head to head records, scorers, cards and referee stats for 40+ leagues since 2010-11. Premier League, La Liga, Bundesliga, Serie A and more with derived stats. Export to CSV or Excel.
Get soccer results, league tables, team form, head to head records, goal scorers, cards and referee statistics for more than 40 leagues, from the Premier League and La Liga to the Bundesliga, Serie A, Ligue 1, the Brazilian Serie A and MLS. Every season since 2010-11 is available, and the current season is updated as results come in. Export the data to CSV or Excel, or feed it straight into your own model.
The raw results are free and open, but they are scattered across hundreds of files with different team names, no table, no form and no statistics. This Actor reads them, cleans the team names, and adds the numbers analysts normally calculate by hand: the table before every match, the last five results of both teams, goals per game, both teams to score rates, comebacks, streaks and more.
What can you do with this soccer data scraper?
- Download all Premier League results for the 2025-26 season with scores, half-time scores, scorers and attendance.
- Build the league table as it stood on any date or after any matchday, for the full table, the home table or the away table.
- Find every Bundesliga match with four or more goals since 2010.
- See how a team does at home against away, how often it wins after leading at half-time, and how often it scores in the second half.
- Compare two teams over all their meetings: wins, draws, goals, last five results and the biggest win of each side.
- Rank players by goals, minutes played, goals per 90 minutes, penalties, braces, hat-tricks and cards.
- Compare referees by cards per match, red card rate, penalty goals and home win rate.
- Get one summary row per league and season: goals per match, home win rate, draw rate, champion, best attack and best defence.
- Collect upcoming fixtures with the form and table position of both teams before kick-off.
Which leagues and seasons are covered?
England (Premier League, Championship, League One, League Two), Spain (La Liga, La Liga 2), Germany (Bundesliga, 2. Bundesliga, 3. Liga, DFB-Pokal), Italy (Serie A, Serie B), France (Ligue 1, Ligue 2), Netherlands, Portugal, Belgium, Scotland, Turkey, Greece, Austria, Switzerland, Czech Republic, Hungary, Russia, Mexico, Australia, Argentina, Brazil (Serie A and B), Colombia, China, Japan, MLS, the UEFA Champions League and the Copa Libertadores. Some older seasons have fewer leagues than recent ones, and the Actor tells you when a combination has no data.
Seven ways to collect data
| Mode | One row is | Best for |
|---|---|---|
| Matches and results | one match | datasets, betting models, fixtures, scorers |
| League table (standings) | one team in one table | tables at any date, home and away tables |
| Team statistics | one team, or one team per season | form, goal rates, home and away splits |
| Head to head | one pair of teams | rivalries, previews, trend articles |
| Player statistics | one player | scorers, minutes, cards (detailed leagues) |
| Referee statistics | one referee | card and penalty tendencies (detailed leagues) |
| League season summaries | one league and season | comparing leagues and eras |
What data do you get for every match?
- League, country, division, season, round and matchday number.
- Date, weekday, kick-off time, time zone and kick-off in UTC when the time zone is known.
- Home and away team with a clean name and a stable team ID.
- Full-time score, half-time score, second-half goals, result (H, D or A), winner and points won.
- Total goals, goal difference, both teams to score, over 1.5, 2.5 and 3.5 goals, clean sheets.
- Comeback flag: none, draw from behind or turned around.
- Table position of both teams before the match, points before the match and last five results of each side.
- Goals per game scored and conceded by both teams so far in the season.
- Venue, attendance, referee and assistants, scorers with minutes, penalties and own goals, yellow and red cards, captains and substitution counts. These come from the detailed files, which exist for the Premier League, the Bundesliga and the Austrian Bundesliga 2025-26.
Example input
{"mode": "matches","leagues": ["en.1"],"seasons": ["2025-26"],"teams": ["Liverpool"],"maxItems": 3}
Example output
{"matchId": "en.1|2025-26|2026-05-24|liverpool|brentford","leagueCode": "en.1","league": "Premier League","season": "2025-26","date": "2026-05-24","homeTeam": "Liverpool","awayTeam": "Brentford","scoreline": "1-1","result": "D","totalGoals": 2,"bothTeamsScored": true,"homePositionBefore": 5,"awayPositionBefore": 9,"homeFormBefore": "WWLDL","awayFormBefore": "DLWLD","scorersText": "Curtis Jones 58', Kevin Schade 64'","referee": "Darren England","attendance": 60325}
A standings row from the same season looks like this: Arsenal, position 1, 36 played, 83 points, goal difference 44, last five results WWWWW, a current streak of W5 and a home points per game of 2.56.
How do I build a league table at a past date?
Choose the standings mode, pick the league and season, and fill in either a date or a matchday. The table uses only matches played up to that point. Ties are broken by goal difference, then goals scored, then team name. Each row also shows points behind the leader, the gap to the next team, the last five results and the longest winning, unbeaten and losing runs.
How do the player and referee modes work?
They read the detailed match files, which list scorers, cards, line-ups and referees. At the moment those files exist for the Premier League, the Bundesliga and the Austrian Bundesliga in 2025-26. Minutes played are calculated from starting line-ups, substitution minutes and red cards. Stoppage time is not counted, so a full match is 90 minutes. A player who scored twice in a match counts as a brace, three goals as a hat-trick.
Frequently asked questions
Where does the data come from? The openfootball project, a public domain collection of match results maintained by volunteers. It is free to use for any purpose.
Does it include betting odds or expected goals? No. This Actor covers results, tables, scorers, cards and the statistics derived from them. If you need bookmaker odds or expected goals, use a dedicated odds scraper next to it.
How current is the data? The files are updated by volunteers, usually within days of a matchday. A match with status scheduled has no result in the source yet, even when its date has passed.
Are team names the same across seasons? Names are cleaned (FC, AFC and CF are removed) and turned into a team ID, so Liverpool FC and Liverpool are the same team. A few clubs were renamed by the source over the years and may appear under two names.
How many results can I get for free? A free account returns up to 10 rows per run. Paid accounts can return up to one million rows.
Limits
- Player, card and referee data exist only for the leagues named above, and only for 2025-26.
- Tables are computed from match results. Points deductions and special tie-break rules, such as head to head in Spain and Italy, are not applied.
- Leagues with split seasons or conferences (Liga MX, Argentina, Colombia, MLS) and cups have no single table, so the standings mode skips them.