Sportmonks Match Facts turns historical and live match data into pre-calculated insights your app can surface instantly. No analytics pipeline, no statistical models to maintain: one include on the fixture calls you already make.

Crystal Palace 1-2 Arsenal · Premier LeagueFT
"In Crystal Palace's last 5 Premier League matches both teams scored in 3 of those matches."statistics · team · league_matches
"Arsenal are unbeaten in 22 out of their 25 most recent Premier League matches against Crystal Palace."streaks · h2h
"Kai Havertz has the highest average xGOT for Arsenal in their 10 most recent Premier League matches, with an average xGOT of 0.65."players · league_matches
{
"data": {
"id": 19427238,
"name": "Crystal Palace vs Arsenal",
"starting_at": "2026-05-24 15:00:00",
"result_info": "Arsenal won after full-time.",
"matchfacts": [
{
"id": 50227996,
"type_id": 87913,
"participant": "home",
"basis": "team",
"data": { "count": 3, "percentage": 60 },
"natural_language": "In Crystal Palace's last 5 Premier League matches both teams scored in 3 of those matches.",
"category": "statistics",
"scope": "league_matches"
}
// + head-to-head, player and window-variation facts in the same call
]
}
}
Case study
"The quality of the data itself stands out."
Once you start utilising it, you realise its excellence isn't just superficial.
Case study
"Automated sports media at scale."
ScorePlay powers sports media management with real-time Sportmonks data: every match, every moment.
Case study
"Real-world football, inside FIFA Career Mode."
SoFIFA pulls up-to-date squads, ratings and historical seasons into the game.
Case study
"Sportmonks has proven to be a great partner."
Finding high-quality football and betting data is challenging. When available, it's often too expensive or hard to integrate.
Case study
"Data reliability has been constantly improving."
I particularly highlight the support team's agility and efficiency in resolving any issues.
Case study
"Seven years. No major problems."
Other services provided the same data at much higher prices that we could not afford.
Case study
"Logic over gut feeling in sports betting."
Fine Line replaces guesswork with data-driven decisions across 2,200+ leagues.
Case study
"AI football commentary in 12+ languages."
Botbrains scales generative match commentary across markets, powered by Sportmonks data.
Case study
"Middle East's fastest-growing football fan platform."
Built on Sportmonks data to power live experiences for millions of fans.
Case study
"Sweden's most complete football site."
Fotboll.com is built end-to-end on Sportmonks data across all major leagues.
Football match facts are pre-calculated insights built from historical and live match data: trends, streaks, head-to-head records, player storylines and statistical comparisons that explain what is happening on the pitch. Scores and statistics are table stakes. What fans actually want is context, and Sportmonks Match Facts gives your application that layer without you having to build it yourself.
Building contextual match facts from raw data is expensive. You would need to retrieve large historical datasets, write filtering logic, calculate trends, and maintain all of it across leagues, teams and time windows. Match Facts handles all of that for you: pre-calculated, structured, and window-aware, so you can build features in an afternoon that would otherwise take weeks of engineering work. Every insight is validated automatically, so you never surface a misleading statistic.
Match Facts arrive through the same fixtures endpoint you are already calling as an add-on to the Football API, with structured data and an optional natural language sentence for every fact. It sits next to our other proprietary insight products, xG Data and Predictions, so you will not find this exact dataset anywhere else.
Everything below comes from one real API response: Crystal Palace vs Arsenal, Premier League, 24 May 2026. One include returned the trends, the player storylines, the ready-to-display sentences and the written match overview. Pick the view your product needs.
Match fact can also be returned as a ready-to-display sentence. No formatting logic needed on your side: just output the string. Combine structured data with natural language and you go from API response to editorial-quality content in a single call.

Crystal Palace 1-2 Arsenal · Premier LeagueFT
"Gabriel Jesus has the highest average xG for Arsenal in their Premier League matches against Crystal Palace, with an average xG of 0.84."players · league_matches
"Arsenal have won 6 out of their 7 most recent Premier League matches against Crystal Palace."streaks · h2h

"In the last Premier League matches between Crystal Palace and Arsenal both teams scored in 15 of those matches."statistics · h2h
"Arsenal are unbeaten in 22 out of their 25 most recent Premier League matches against Crystal Palace."streaks · h2h
"Once you start utilising it, you realise that its excellence isn't just superficial, the quality of the data itself stands out."
One field returns a full written overview of the match: form, head-to-head, clean sheets, shot and corner averages, top-rated players. It is generated from the same pre-calculated facts in the response, so the prose and the structured numbers can never disagree. Publish it as a preview, a push body or a newsletter paragraph.

Crystal Palace 1-2 Arsenal · Premier Leaguetype_id 121211
"The way the API is structured and documented makes it naturally compatible with how modern development works, including AI-assisted coding and automated data pipelines."
Facts span seven categories: team statistics, players, streaks, head-to-head, comparisons, match context and referee insights. Every one is pre-calculated, window-aware, and available as structured data or a natural language sentence. Here are real facts from this fixture, Crystal Palace against Arsenal.
Arsenal have won 6 of their last 7 Premier League meetings with Crystal Palace.
statistics · h2h
0.84
Gabriel Jesus holds Arsenal's highest average xG against Crystal Palace, at 0.84.
players · league_matchesArsenal are unbeaten in 22 of their last 25 Premier League matches against Crystal Palace.
streaks · h2hArsenal average 1.9 expected goals per match, above the league average of 1.5.
comparisons · teamPalace coach Oliver Glasner has not beaten Mikel Arteta in 6 Premier League meetings.
coaches · h2hThe same fact arrives in 4 windows: h2h, team, league only and overall. Query the angle you need.
basis · scope
"Finding high-quality football and betting data is challenging. This is where Sportmonks has proven to be a great partner."
Football statistics are heavily shaped by recency. A full-season record tells a different story than the last five matches. The card shows one fact, Arsenal's goals conceded, across four window variations from the same response. Your application picks what is most relevant.
Arsenal · goals conceded, last 10type_id 87878
"The widest coverage out there for both in-play and pre-match events."
Every fact is one object in the matchfacts array on the fixture, in the same uniform JSON for every covered league. These are the exact fields from the sample response, so your parser is written once and done.
statistics or players.team, h2h or overall.all_matches, league_matches or allFixtures. This powers window variations.home, away or both, mapped to the fixture's participants."count": 3 and "percentage": 60.player_id and display_name, like 5329, Gabriel Jesus.87878 for the goals-conceded facts in the sample response.AI Overviews take Match Facts one step further, generating a complete, ready-to-display match summary built directly from the underlying Match Facts data. They are not part of the standard Match Facts add-on: AI Overviews are available on the Advanced plan. Once enabled, add AIOverviews to your fixtures call and your response includes a fully written match preview for your application.
Facts are only generated when sufficient match history exists, so a fixture response contains the facts that apply to that match. Field and include definitions live in the Football API documentation.
No new endpoints to learn. Match Facts arrive through the same fixtures endpoint you are already calling: same authentication, same data format, no new infrastructure. New here? Your first call is minutes away.
include=matchfacts;AIOverviews.natural_language string directly, or parse the structured data. One uniform JSON shape for every covered league.Stuck on an include or an endpoint? You talk to a person, 7 days a week. Sportmonks is the only sports data API with an actual face.
{
"matchfacts": [
{
"id": 50227051,
"fixture_id": 19427238,
"type_id": 76094,
"participant": "away",
"basis": "h2h",
"data": {
"all": { "streak": 6, "matches": 7 },
"home": { "streak": 1, "matches": 1 },
"away": { "streak": 4, "matches": 5 }
},
"natural_language": "Arsenal have won 6 out of their 7 most recent Premier League matches against Crystal Palace.",
"category": "streaks",
"scope": "league_matches"
}
// one object per fact, per window variation
]
}
"The way the API is structured and documented makes it naturally compatible with how modern development works, including AI-assisted coding and automated data pipelines."
Ahmet SayarliogluCo-Founder, ScoutsLand
"The widest coverage out there for both in-play and pre-match events."
Borko BajicCTO at BettingKick.com
"Sportmonks feels like a partner rather than just a service. The support team is fast, helpful, and actually understands what you're trying to achieve."
Eglė NeumannCo-Founder, ScoutsLand
Read the full stories on our case studies page.
Match Facts attaches to your Football API plan. Basic covers pre-match facts, Advanced adds live updates and the AI overview. No contracts, no minimums. We publish our prices, compare us openly.
Best for side projects and early builds
Best for startups and growing applications
For production apps at scale
The ultimate solution for the real pros, contact us for a tailored offer
Basic and Advanced, priced à la carte
All prices are per month, exclusive of VAT where applicable. Advanced includes everything in Basic plus live updates and the AI overview.
Give fans more than the score. Streaks, head-to-head records and match context turn a plain fixture row into a reason to stay on your page.
Livescore portals →Surface pre-match trends your users act on: both-teams-scored rates, goals conceded windows, referee strictness. Structured data ready for insight features.
Betting platforms →Natural language sentences and AI Overviews turn one API call into editorial-quality match previews and automated commentary, at any volume.
Sports media →Player-based facts surface top scoring threats, standout performers and notable absences: the storylines that drive captain picks and transfer debates.
Fantasy games →Rivalry records, streaks and match context make a club app feel alive. ShiftOneZero built a live club app for Dinamo Zagreb on Sportmonks data.
Clubs and scouting →Referee tendencies, statistical comparisons and window-aware trends add the game-flow context that analysis and prediction features need.
All solutions →Quick answers before you sign up. Want the long version? It's all in the Match Facts documentation.
Basic covers the pre-match facts: form, head-to-head, streaks, player storylines, comparisons and every window variation, all ready before kickoff.
Advanced includes everything in Basic and adds two things: the facts keep updating during the match, and you get the AI overview, a fully written match summary in one field. Both tiers are available on every paid plan, so you can start on Basic and move up without changing your integration. See add-on pricing for the current rates.
Match Facts covers 1,500+ of our 2,200+ football leagues. How many of those you can select is set by your plan: Starter includes 5 custom leagues, Growth 30, Pro 120, and Enterprise covers all available leagues. You choose which ones in your Sportmonks dashboard and can add more to any plan.
Which facts you get for a given match then depends on the match data behind it. Facts are calculated from the underlying statistics for that competition, so a league without corner data returns no corner facts. You always get the facts that league supports, never an estimate standing in for missing data.
Part of your existing integration. Once the add-on is active on your subscription, match facts are returned through the same fixtures endpoint you are already calling: add the include and the response comes back enriched, in the same matchfacts array for every covered league. Same token, same JSON shape, no new infrastructure and no second integration to maintain.
Yes, on Starter, Growth, Pro and Enterprise. Match Facts is a paid add-on, so it does need to be switched on for your subscription, but that happens in your dashboard: no new account, no migration, no separate integration. After that the include works on the fixture calls you already make.
Facts are pre-calculated, so they are already on the fixture before kickoff. That is what Basic gives you: everything you need to build a preview page or a pre-match notification.
On Advanced the same facts keep updating as the match plays out, on the same fixture call, so a live match centre stays current without you recalculating anything.
The same insight, calculated across multiple timeframes. A team's full-season record tells a different story than their last five matches, so Match Facts delivers both and your application chooses what is most relevant. Window variations are generated automatically and only when sufficient match history exists. If a team has played fewer matches than the window requires, that variation is simply not returned, so you never surface a misleading statistic.
Yes. Every match fact can also be returned as a ready-to-display natural language sentence, like "Arsenal have won 6 out of their 7 most recent Premier League matches against Crystal Palace". No formatting logic needed on your side: just output the string. The structured data ships alongside it for custom rendering.
The same as with the rest of your plan. Match Facts arrives as an include on calls you already make, so it does not multiply your call count, and you can add extra API calls at any time. See add-on pricing for the options.
Pre-calculated match insights on the most approachable sports data API. Start free, upgrade when your product does.