WC2026 Model Tracker
Bivariate-Poisson predictions vs actual results · a live, honest experiment

How the model works

Every prediction comes from the same pipeline, run before kickoff:

StepWhat happens
DataEach team's last 10 internationals are scraped from Sofascore (via browser interception): goals, expected goals (xG), possession, corners, cards and goalscorers per match.
Strength of scheduleEvery match is weighted by opponent quality — beating a minnow counts less than beating an elite side, and conceding to a weak team is punished. Ratings are normalized so an average international team = 1.0.
ContextHost-nation home advantage, travel/altitude fatigue and known absences are applied as adjustments. Neutral-venue games get no home boost.
Scoreline modelA Karlis–Ntzoufras bivariate Poisson turns the two expected-goal numbers into a full scoreline probability matrix, from which every market (1X2, over/under, BTTS, Asian handicap, scorelines) is derived.
EventsCard and red-card markets use the assigned referee's career rate blended with a World-Cup base rate; corners use both teams' for/against averages.
CalibrationAfter each match, model error (log loss) is measured and the internal weights are nudged conservatively (≤5% per match) toward the truth.