Fixture360 only lists fixtures from a curated set of leagues, chosen specifically to keep our prediction model accurate.
Prediction vindicated as Luton edge out Bradford 2-1.
📝 Match Report
How It Unfolded
Luton beat Bradford 2-1 at Kenilworth Road, Regular Season - 31, in the League One. The remainder of the report sets that outcome against the pre-match model, the markets and the teams' data profiles.
The Model vs The Result
The Poisson model went into this projecting Luton 1.59 xG and Bradford 0.80 xG, a combined 2.40. The scoreboard read 2-1 for 3 actual goals. Both sides finished within a goal of their individual projections, so the scoreline sat close to the model's expected shape. Those figures were built on strength ratings of Luton attack 1.09 / defence 0.95 against Bradford attack 0.77 / defence 1.08, drawn from 29/28 games (CurrentSeason).
On the result, the model split it Luton 56% | Draw 25% | Bradford 19%, with Luton to win its most likely call at 56%. The result followed the model's preferred path, landing its top-rated outcome.
Goals & Markets
The model rated Over 2.5 goals at 43%. The game delivered 3, so it went over — against the model's lean. Over 1.5 had been 69% and landed. On both teams to score, the model sat at 44% and the match saw both sides score — a miss on BTTS. Historically the two sides average 47% Over 2.5 across their same-competition games (Luton 45%, Bradford 50%), a base rate that pointed the other way from today's over. Their combined BTTS history runs at 49%, which did not match the both-scored outcome.
Trading Patterns vs Reality
Luton's trading profile (74 games, 37 home) set some clear expectations: BTTS lands in 45% of their matches — today it did.
Bradford's trading profile (74 games, 37 away) set some clear expectations: BTTS lands in 54% of their matches — today it did; they keep a clean sheet 34% of the time, and conceded here.
Form vs Result
On form, Bradford arrived the stronger side — 1.72 PPG against 1.23. Form was overturned, with Luton winning despite arriving in poorer recent shape.
Verdict
Grading the result against the stored data, 1 of 4 pre-match signals came in: result (hit), Over 2.5 (miss), BTTS (miss), form (miss). This one broke away from the data — most of the pre-match signals were overturned by how the ninety minutes actually played out.
💡 Key Insights
⚠️ This match report is generated algorithmically from the final score, our prediction model, and each team's historical form and trading data. Analysis is for informational purposes only.