We work out how many goals to expect in a match, turn that into probabilities, and compare them with what the bookmaker is paying. We only flag value when that gap survives four checks.
Market
+2.5 Goles
Edge
+0.0%
Suggested stake
0.0%
An example of the output format. The thresholds are the ones the engine applies in production.
How we get to a call
Five steps, always in the same order. If any of them runs short of data, no value is flagged.
First we estimate how many goals each side should score — what is known as expected goals, or xG. We look at up to six different sources, starting with the most complete and dropping down only when data is missing.
From those expected goals we work out how likely every possible scoreline is. That gives us the 1X2, both teams to score and each over/under line, all from the same calculation (a Poisson distribution).
These get their own separate calculation: how many corners and shots each side tends to create and concede lately, adjusted for possession, shot volume and blocks.
We compare our probability against the odds on offer. Four filters throw out anything that does not hold up: weak conviction, gaps with the market that are too large to be real, edges outside a sane range, and thin data.
Whatever clears the filters gets an exposure size proportional to the gap, always cautious and capped at 3%. It is a model reference, not an instruction. Whatever does not is still shown, along with the reason we passed on it.
Delta in numbers
What we analyse
Model versus market
Every featured fixture of the day, placed by the probability the model gives it against the probability the odds imply. The line is perfect agreement; whatever sits off it is where the model and the bookmaker disagree.
Example scatter, not live odds. Points are illustrative.
One dot per fixture: model probability on the vertical axis, odds-implied probability on the horizontal.
Above the fair line the model sees more chance than the price pays. That is the value we look for.
Below it, a paginated ledger with every reading logged exactly as it was calculated — right or wrong.
Which competitions we cover
We analyse matches from more than 50 leagues and cups, from Europe to the Americas. If a competition is here, you can open any of its matches and see the full analysis today.
AFC Champions League EliteInternational
CONMEBOL LibertadoresInternational
CONMEBOL SudamericanaInternational
Leagues CupInternational
UEFA Champions LeagueInternational
UEFA Champions League WomenInternational
UEFA Europa Conference LeagueInternational
UEFA Europa LeagueInternational
Liga Profesional ArgentinaArgentina
A-LeagueAustralia
BundesligaAustria
Jupiler Pro LeagueBelgium
Copa Do BrasilBrazil
Serie ABrazil
Primera DivisiónChile
Super LeagueChina
Primera AColombia
HNLCroatia
Czech LigaCzech-Republic
SuperligaDenmark
Liga ProEcuador
ChampionshipEngland
FA CupEngland
Premier LeagueEngland
Ligue 1France
2. BundesligaGermany
BundesligaGermany
Ligat Ha'alIsrael
Serie AItaly
J1 LeagueJapan
Liga MXMexico
EredivisieNetherlands
EliteserienNorway
Primera DivisiónPeru
EkstraklasaPoland
Primeira LigaPortugal
Stars LeagueQatar
Premier LeagueRussia
Pro LeagueSaudi-Arabia
PremiershipScotland
K League 1South-Korea
Copa del ReySpain
La LigaSpain
Segunda DivisiónSpain
AllsvenskanSweden
Super LeagueSwitzerland
Süper LigTurkey
Premier LeagueUkraine
Pro LeagueUnited-Arab-Emirates
Major League SoccerUSACoverage moves with the calendar: competitions come in when their season starts and drop out when it ends.
Start with today's match
Every match goes through the same process, with no favourites and no VIP lists. And when no event carries value, we say that too, along with why we passed.
Delta analyses probabilities: it does not take bets, connects to no bookmaker, and gives no advice. We publish analyses exactly as the engine ran them, right or wrong. 18+ only.