Flashscore Results
Pricing
from $1.00 / 1,000 results
Flashscore Results
Extract match results from Flashscore tournaments and teams. Get scores, dates, teams, leagues, and more for football, basketball, and other sports.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Extractify Labs
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Share
Flashscore Results: Match Listings & Historical Data
Extract complete match results from Flashscore tournaments and team pages — no proxy required. Build historical match datasets, populate sports analytics dashboards, or feed prediction models with scores, team metadata, and tournament context. Supports football and basketball (fully tested); other Flashscore sports may also work.
Built by Extractify Labs. Last updated: 2026-04-26.
Key Features
- Extract historical football and basketball results from any Flashscore tournament page (e.g. Premier League, La Liga, NBA).
- Monitor team match history across multiple seasons using team result URLs.
- Auto-detect page type — mix tournament and team URLs in the same run; the actor handles both and returns the same structured output.
- Multi-tournament team histories — when using a team URL, each match is tagged with its correct tournament name and country, even when the team played in multiple competitions.
- Filter by match status — return only finished results, or include scheduled and live matches too.
- Optional team logos — enable
includeImagesto add CDN logo URLs per match. - Fast, direct extraction via Flashscore's ninja feed endpoint — no browser, no proxy required.
- Pagination handled automatically — fetches all available pages for each URL; you control the total cap with
maxItems.
When to Use This Actor
| Use Case | Recommended Setup |
|---|---|
| Build all-time Premier League results dataset | Tournament URL, maxItems: null (unlimited) |
| Get a team's full match history | Team URL, maxItems: null |
| Recent season snapshot (top 100) | Tournament URL, maxItems: 100 (default) |
| Finished matches only | matchStatuses: ["finished"] (default) |
| Include upcoming fixtures | matchStatuses: ["all"] |
| Include team logos | includeImages: true |
| Multi-league run | Multiple tournament or team URLs in startUrls |
Typical scenarios:
- Historical dataset pipelines: Feed complete match results into a database, spreadsheet, or data warehouse for long-term analysis.
- Betting and prediction models: Populate training data with historical scores, team identifiers, and tournament context.
- Sports dashboards: Display a team's recent form or a league's full results table with live-updated data.
- Automated match reporting: Trigger downstream workflows (notifications, reports) when new results appear.
- Cross-tournament team analysis: Pull a team's entire Flashscore history across all competitions in a single run.
How It Works
- You provide one or more Flashscore results page URLs in
startUrls. - The actor automatically detects whether each URL is a tournament results page or a team results page.
- For each URL it fetches the Flashscore ninja feed directly (no browser, no proxy).
- Match rows are parsed, filtered by
matchStatuses, and yielded as structured JSON items. - Pagination continues until no more matches are available, or
maxItemsis reached.
Supported URL patterns:
- Tournament:
https://www.flashscore.com/{sport}/{country}/{tournament}/results/Example:https://www.flashscore.com/football/england/premier-league/results/ - Team:
https://www.flashscore.com/{sport}/team/{team-slug}/{team-id}/results/Example:https://www.flashscore.com/team/manchester-city/xSfcViB0/results/
Supported Sports
| Sport | Status |
|---|---|
| Football | Fully tested — all fields including round_name |
| Basketball | Fully tested — all fields except round_name (not available in basketball feed) |
| Other sports (tennis, hockey, volleyball, handball, etc.) | May work — not guaranteed; actor logs a warning for untested sports |
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | array of URLs | required | One or more Flashscore results page URLs. The actor auto-detects tournament vs. team pages. You can mix both types in the same run. Example tournament URL: https://www.flashscore.com/football/england/premier-league/results/. Example team URL: https://www.flashscore.com/team/manchester-city/xSfcViB0/results/. |
maxItems | integer | 100 | Maximum number of match results to return across all URLs. Set to null or leave blank for complete historical data (longer run time). Minimum: 1. |
matchStatuses | array of strings | ["finished"] | Filter results by match status. Accepted values: "finished", "live", "scheduled", "all". Use ["all"] to include matches of any status. Invalid values are silently dropped; if all values are invalid, defaults to ["finished"]. |
includeImages | boolean | false | Include team logo URLs (home_team_logo_url, away_team_logo_url) in each result. Image URLs are direct CDN links. Disabled by default to keep payload size small. |
Sample input (JSON):
{"startUrls": ["https://www.flashscore.com/football/england/premier-league/results/","https://www.flashscore.com/team/manchester-city/xSfcViB0/results/"],"maxItems": 50,"matchStatuses": ["finished"],"includeImages": false}
Output Fields
Each match record contains up to 23 fields. Required fields are always present; optional fields may be absent if the data is not available in the feed.
| Field | Type | Example | When Available |
|---|---|---|---|
match_id | string | "YBkFXzhf" | Always |
match_url | string (URL) | "https://www.flashscore.com/match/football/aston-villa-W00wmLO0/brentford-xYe7DwID/?mid=YBkFXzhf" | Always |
match_date | string (ISO 8601 UTC) | "2026-02-01T14:00:00+00:00" | Always |
match_status | string | "finished" | Always. One of: finished, live, scheduled, unknown. |
home_team_name | string | "Aston Villa" | Always |
home_team_id | string | "W00wmLO0" | Always |
home_team_slug | string | "aston-villa" | Always |
home_team_short_name | string | "AST" | Always |
home_team_logo_url | string (URL) | "https://static.flashscore.com/res/image/data/UHchCEVH-jwz95gs0.png" | Only when includeImages: true |
away_team_name | string | "Brentford" | Always |
away_team_id | string | "xYe7DwID" | Always |
away_team_slug | string | "brentford" | Always |
away_team_short_name | string | "BRE" | Always |
away_team_logo_url | string (URL) | "https://static.flashscore.com/res/image/data/..." | Only when includeImages: true |
score_home | integer | 0 | Finished matches only; absent for scheduled and live |
score_away | integer | 1 | Finished matches only; absent for scheduled and live |
tournament_name | string | "Premier League" | Always |
tournament_id | string | "dYlOSQOD" | Always |
tournament_url | string (URL) | "https://www.flashscore.com/football/england/premier-league/" | Always |
country_name | string | "England" | Always |
round_name | string | "Round 24" | Football tournaments only; absent for other sports and some cup competitions |
sport_name | string | "football" | Always |
source_url | string (URL) | "https://www.flashscore.com/football/england/premier-league/results/" | Always; identifies which input URL produced this result |
Sample output record:
{"match_id": "YBkFXzhf","match_url": "https://www.flashscore.com/match/football/aston-villa-W00wmLO0/brentford-xYe7DwID/?mid=YBkFXzhf","match_date": "2026-02-01T14:00:00+00:00","match_status": "finished","home_team_name": "Aston Villa","home_team_id": "W00wmLO0","home_team_slug": "aston-villa","home_team_short_name": "AST","away_team_name": "Brentford","away_team_id": "xYe7DwID","away_team_slug": "brentford","away_team_short_name": "BRE","score_home": 0,"score_away": 1,"tournament_name": "Premier League","tournament_id": "dYlOSQOD","tournament_url": "https://www.flashscore.com/football/england/premier-league/","country_name": "England","round_name": "Round 24","sport_name": "football","source_url": "https://www.flashscore.com/football/england/premier-league/results/"}
Limitations
- This actor is not affiliated with Flashscore. It reads from Flashscore's publicly accessible feed endpoints.
- Multi-sport support: Fully tested with football and basketball. Other sports (tennis, hockey, volleyball, etc.) may work but are not guaranteed. The actor logs a warning for untested sports and attempts extraction; if the sport ID cannot be determined, the URL is skipped.
round_namefield: Available for football tournaments where the feed includes round labels. Absent for basketball and other sports, and for some cup competitions that do not use explicit round labels.maxItemsis a global cap, not a per-URL cap. In a multi-URL run, whichever feed responds first may fill the cap before other URLs are fully processed. If you need a fixed number of results from each URL, run the actor once per URL.- Historical data depth: The actor returns all results available in Flashscore's feed for the given URL. Flashscore's own data retention determines how far back results are available; the actor does not impose any additional limit beyond
maxItems. - Scores are absent for non-finished matches. The
score_homeandscore_awayfields are only populated when a match has finished. They are absent (notnull) for scheduled and live matches. - This is not a live-scores actor. If you need near-real-time match monitoring, use the Flashscore Live Matches actor instead.
FAQ
Q: What is the difference between tournament and team modes?
A: A tournament URL (e.g. https://www.flashscore.com/football/england/premier-league/results/) returns all matches played in that competition for the current or historical season. A team URL (e.g. https://www.flashscore.com/team/manchester-city/xSfcViB0/results/) returns all of that team's matches across all competitions — the tournament_name and country_name fields identify which competition each match belongs to. You can mix both URL types in a single run.
Q: Can I fetch all historical results for a team or tournament?
A: Yes. Set maxItems to null (or leave it blank) to remove the cap. The actor will paginate through all available results. Run time will be longer for teams or tournaments with many years of history.
Q: Can I include upcoming fixtures, not just finished results?
A: Yes. Set matchStatuses to ["all"] to include scheduled, live, and finished matches. You can also select specific statuses, for example ["finished", "scheduled"].
Q: Does this actor work with sports other than football and basketball?
A: It may. The actor is fully tested with football and basketball. For other Flashscore sports (tennis, hockey, volleyball, handball, etc.), provide a valid Flashscore results URL in the standard format and the actor will attempt extraction. It logs a warning for untested sports. Results are not guaranteed and round_name will typically be absent.
Q: Is pagination automatic?
A: Yes. The actor handles all pagination internally. You do not need to specify page numbers or offsets — just provide the results URL and set maxItems to control the total number of results you want.
Q: Why did some URLs in my multi-URL run produce fewer results than expected?
A: maxItems is a global cap across all URLs in the run, not a per-URL cap. If one URL fills the cap first, results from other URLs may be limited or absent. To get a fixed count from each URL, run the actor once per URL.
No Proxy Required
This actor fetches data directly from Flashscore's internal feed endpoint — no residential or datacenter proxies needed. You are charged only for standard Apify compute time, not proxy bandwidth. This makes it significantly cheaper to run at scale compared to browser-based scrapers.
Related Actors
- Flashscore: Match Listings, Scores & Fixtures — Today's matches, live scores, and upcoming fixtures in a ±7-day window
- Flashscore Live Matches — Real-time live match monitoring
- Flashscore H2H — Head-to-head match history between two teams
Support & Issues
- Report bugs or request features on GitHub.
- For general questions, use the actor's Discussion tab on the Apify Store page.