What to use instead of FBref for betting research
FBref lost its expected goals in January 2026, and most of the advice that followed was a ranked list of websites. The site you need depends on which number you lost. Some of those numbers have no free replacement anywhere.
Pros
- Every site opened and checked in August 2026.
- Names the leagues where the apps do carry xG.
- Sorted by your league, not as a top five.
- Says when FBref still does the job.
Cons
- Five named sites carry no verdict yet.
- Only the entry price for paid APIs.
- No calculator on the page.
What FBref removed in January 2026 and what it kept
Stats Perform, the company behind the Opta data brand, ended its agreement with Sports Reference. The advanced stats came off the site in the same week.
Expected goals (xG) went. So did expected assists (xA), non-penalty xG, progressive passes and carries, pressure counts, shot-creating actions and the percentile scouting reports. The match logs were cut to four types: Scores & Fixtures, Shooting, Goalkeeping and Miscellaneous. The passing, possession and defensive-action logs went as well.
Expected goals is a score for the quality of a chance. A penalty is worth about 0.8 of a goal. A shot from thirty metres is worth about 0.03. Goals count what happened in one match. xG measures how well a team played toward goal, and that number is more stable from match to match. Our full guide to reading xG shows how to turn it into a price.
The basic data stayed. Results, tables, home and away splits, minutes, starts, shots, shots on target, cards, fouls, penalties, saves, clean sheets, referees and head-to-head records are all still on the site, free and without an account, with the per 90 rates built on them.
Most lists of sites like FBref start at the alternatives and skip the list of what stayed. Most bets are priced off the numbers that stayed. So you need a second site for chance quality, which is xG and the numbers built on it. The rest of your research can stay where it is.
Which number you lost decides which site you need
xG for a big European league: Understat. xG while the match is being played: SofaScore or FotMob, which cover far more leagues than Understat. xG for a small league: sometimes one match at a time in the apps, never as a season table. Scouting percentiles for a player: no free source at all. xG for women's football: almost nothing free. Cards, fouls, referees, minutes, penalties and head-to-head: FBref, unchanged.
What Understat covers and what it misses
Understat is the closest free replacement for xG. It is free and it needs no account.
It covers six leagues: the Premier League, La Liga, the Bundesliga, Serie A, Ligue 1 and the Russian Premier League. Seasons run back to 2014/15. You get expected goals per match and per player, non-penalty xG, expected goals against, expected points, shot maps, home and away splits, and a file you can download from the page you are on.
Understat covers those six leagues and nothing more. It has no live data during a match. It has no cards, no fouls and no referee data, so it does not replace the FBref pages that answer card markets.
What SofaScore and FotMob give you during a match
Both apps are free and both build their own expected goals model. In the leagues their models cover, they show the number as the match is played, with shot maps, heatmaps and player ratings next to it. Both add an expected goals on target line, and FotMob prints an xG value on every single shot. FBref never had live data, so these apps give you something FBref never gave you.
The models are their own. A value from one app will not match Understat's value for the same shot, and a threshold you learned on one site does not transfer to the other. Neither app holds an archive as deep as Understat's. They suit one match, not a study of a whole season.
Their coverage runs much wider than Understat's six leagues. SofaScore gives xG for the Brazilian Serie A. FotMob gives it for the Champions League, the Eredivisie, Major League Soccer and the English Championship, which is a second tier. Understat carries none of those five.
The coverage still stops somewhere, and the line is drawn by competition rather than by country. A Bolivian top-flight match on FotMob has possession, shots, shots on target, big chances, passing accuracy and corners, and no expected goals anywhere on the page. The same is true of a small European qualifier on SofaScore. One app, two matches, a number in one and nothing in the other.
What the apps never give you is a season. The number sits on one match page, with no sortable table, no export and no archive to compare it against.
SofaScore also covers tennis, basketball, ice hockey and other sports. FotMob and Understat cover football only.
FBref alternatives we have not tested yet
Five more names come up in every list. Here is what each one is known for.
The Analyst is Opta's site for readers, so its numbers come from the same company that left FBref. They are published inside articles and interactive graphics, not in tables you can sort, filter or export.
WhoScored is known for player ratings and detailed match statistics. FootyStats collects season rates for markets such as both teams to score. Soccerway holds results and fixture history across a very wide range of leagues. Flashscore carries live scores and match statistics for many sports.
We have not tested any of the five, so this page gives no figures and no verdict for them. Reviews are planned, and this section will be replaced with real numbers when they are done.
What no free FBref alternative covers
Three things have no free replacement now.
Small leagues. FBref lists more than 100 competitions. Understat covers six. The live apps reach a long way past that, into second tiers and outside Europe, but they hand you one match at a time, with no season table and no export. And below a certain level they stop: the Bolivian top flight comes with full match statistics and no xG, and a Danish amateur division has no statistics page at all. So two things are missing free here, and they are different. A season of chance quality outside the six leagues does not exist anywhere. Chance quality for one match exists only if an app covers that competition. For those fixtures, lean on other numbers: form, home and away splits, clean sheet rates, cards and meeting history. FBref still holds all of them. Prices in these leagues are looser than in the big five, so the gap matters more here.
Scouting reports. The percentile ranking of a player against others in his position, progressive passing and carrying, and pressure counts are not published free anywhere now.
Women's football. The 2022 Opta deal made FBref the only free source of advanced numbers for around ten women's competitions. One audit puts free women's xG coverage at roughly a fifth of what the men's game gets. The sites that took over the men's coverage give the women's game very little.
How paid football data is priced
Paid access comes in two types.
A betting tool gives you a ready screen. Hit rates and live prices sit in one place, and you pay for the time that saves you. The data under it is usually the same data the free sites publish.
A data API gives you the feed itself. This is what you buy if you build your own model. Sportmonks, one of the openly priced football APIs, starts at 29 euros a month for football, with a free plan below that and a 14-day trial on the paid ones. Live advanced metrics cost more than delayed ones, and expected goals is not always in the entry plan. Scouting platforms for professionals cost more again and are sold to clubs, not to individuals.
Stathead does not fill the gap. It is the paid search layer over the whole Sports Reference family, FBref included. Its advanced filters were removed at the same time as the data, so it now searches basic statistics only.
How to pull FBref data with R and Python now
If you collect data with a script, your position is different from a reader's.
The packages that read FBref still work for schedules, results and basic season tables. That covers worldfootballR in R, and soccerdata and fbrefdata in Python. The functions written for expected goals and for the possession tables return nothing, because the fields behind them are empty. FBref also rate limits requests, so a large pull is slow.
For a free feed of the numbers that were lost, there is no direct swap. Understat publishes no official API. Its download button is a manual export, and any automatic collection means scraping, which breaks whenever the site changes. StatsBomb publishes an open dataset that is free and of high quality, but it covers a limited set of matches.
Which alternative fits which bet
Totals and both teams to score in the big leagues: Understat, then turn your number into a price before you compare it with the bookmaker's. Live betting: SofaScore or FotMob, which run their own xG model while the match is played. Cards and discipline: FBref, which kept fouls, cards and the referee for every match. Small leagues: FBref for everything, plus one app for the xG of the single match, which is as far as free chance quality goes there. Player markets: FBref for minutes, starts and penalty duty, because a substitute and a starter are priced the same and play very different amounts of football. Building a model: a paid API, or an open dataset if the limited match coverage is acceptable.
Do you actually need a replacement
For a large share of bets, no. January removed the advanced numbers. Most markets are priced off the basic numbers, and those did not move.
Three groups really lost something: bettors who compared chance quality across a season, bettors who study the women's game, and anyone who ran a model on the advanced tables. For everyone else the change means one extra tab for expected goals in the big leagues. The rest of the stats and analytics tools we have reviewed sit in one place.