Football Match Predictor

Select a league, pick two clubs from the map or the dropdowns, and get an instant ML-powered win probability prediction.

Arsenal
Aston Villa
Bournemouth
Brentford
Brighton
Burnley
Chelsea
Crystal Palace
Everton
Fulham
Ipswich
Leeds
Leicester
Liverpool
Luton
Man City
Man United
Newcastle
Norwich
Nott'm Forest
Sheffield United
Southampton
Sunderland
Tottenham
Watford
West Brom
West Ham
Wolves
Alaves
Almeria
Ath Bilbao
Ath Madrid
Barcelona
Betis
Cadiz
Celta
Eibar
Elche
Espanol
Getafe
Girona
Granada
Huesca
Las Palmas
Leganes
Levante
Mallorca
Osasuna
Oviedo
Real Madrid
Sevilla
Sociedad
Valencia
Valladolid
Vallecano
Villarreal
Augsburg
Bayern Munich
Bielefeld
Bochum
Darmstadt
Dortmund
Ein Frankfurt
FC Koln
Fortuna Dusseldorf
Freiburg
Greuther Furth
Hamburg
Heidenheim
Hertha
Hoffenheim
Holstein Kiel
Leverkusen
M'gladbach
Mainz
Paderborn
RB Leipzig
Schalke 04
St Pauli
Stuttgart
Union Berlin
Werder Bremen
Wolfsburg
Atalanta
Benevento
Bologna
Brescia
Cagliari
Como
Cremonese
Crotone
Empoli
Fiorentina
Frosinone
Genoa
Inter
Juventus
Lazio
Lecce
Milan
Monza
Napoli
Parma
Pisa
Roma
Salernitana
Sampdoria
Sassuolo
SP
Spezia
Torino
Udinese
Venezia
Verona
Ajaccio
Amiens
Angers
Auxerre
Bordeaux
Brest
Clermont
Dijon
Le Havre
Lens
Lille
Lorient
Lyon
Marseille
Metz
Monaco
Montpellier
Nantes
Nice
Nimes
Paris FC
Paris SG
Reims
Rennes
St Etienne
Strasbourg
Toulouse
Troyes
Select a league above, then pick teams from the map or the dropdowns below

Under the hood

Five separate logistic regression models โ€” one per league โ€” each trained with strict temporal validation so every prediction uses only what was known before kickoff.

5
Leagues
142
Clubs tracked
12,428
Matches analysed
49%
Avg test accuracy
Per-league accuracy

Up to 52% accuracy. Across 12,428 real matches, temporally validated.

๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟPremier League47%
๐Ÿ‡ช๐Ÿ‡ธLa Liga49%
๐Ÿ‡ฉ๐Ÿ‡ชBundesliga52%
๐Ÿ‡ฎ๐Ÿ‡นSerie A50%
๐Ÿ‡ซ๐Ÿ‡ทLigue 145%
23 features, 5 models

Pure form, nothing else. No injuries, no transfers, no weather โ€” just the numbers teams put on the pitch.

  • Points per game โ€” Last 5 and last 10 matches
  • Goals scored & conceded โ€” Both 5 and 10 game windows
  • Goal difference โ€” Per game, 5 and 10 game windows
  • Composite comparisons โ€” Head-to-head form gaps (5 features)
  • Rest / fatigue proxy โ€” Days since last match
Features are computed independently for home and away, then compared with difference features โ€” giving the model 23 inputs per fixture.
Bundesliga โ€” model performance

Accuracy through the 2025/26 season. Tested on matches the model had never seen before.

Beats the baseline

52% test accuracy. 3% lower log-loss than a majority-class baseline, across 2,142 Bundesliga matches.

52%
ML model
80%
Home-win baseline
Temporal validation

No data leakage. Each feature snapshot uses only matches played before the fixture date. The test season was never in the training set.

  • Train: all seasons before the test season
  • Test: the most recent completed full season
  • Snapshots computed match-by-match in chronological order