From goals to probabilities
Corners and the decision tree
5 min
The goal model is the core, but the football model surfaces two more signals alongside it: a corner prediction and a transitive decision tree.
Corners, the same idea on different data
Corners are predicted with exactly the goal model's logic, just on corner data. Using each team's historical corner averages — corners won (HC) and corners conceded (AC) over the last 10 — the model blends one side's corners-for with the other's corners-against, then H2H-weights it when there's enough head-to-head history, to estimate corners for each team and a match total.
The honest catch is coverage. The free CSVs only carry HC/AC for the top European leagues, so for many competitions corners simply come up as no data rather than a guessed number. The model would rather show nothing than invent a figure.
The transitive decision tree
The decision tree is a common-sense cross-check: if A beat B, and B beat C, that's evidence A would beat C, even with little direct history between A and C. The model scans recent results, builds these win chains, and surfaces the ones linking the two teams in this fixture — shown next to each side's recent W/D/L form and the head-to-head record.
It's especially useful where direct data is thin (think group-stage opponents who've never met), filling gaps a head-to-head record alone can't. It's presented as supporting context, not a separate probability — a way to see the logic behind the numbers.
Corners and the decision tree round out the picture. When corner data is missing the model says so, and the decision tree explains the result rather than replacing it.