Every prediction on FootUps is published before kick-off. Every miss is published here, alongside every correct call. No prediction is deleted or adjusted after the fact. That is the policy, and this page is the evidence.
— Danny, FootUps Editor
These are the five largest gaps between the model's pre-match prediction and the actual result. The model's stated probability is shown; the outcome is what actually happened.
| Match | Stage | Score | Model gave | Outcome |
|---|---|---|---|---|
| Ecuador vs Germany | Group Stage · 25 Jun | 2–1 | Germany 75.2% (model picked Germany) | Ecuador win ✖ |
| Spain vs Cape Verde | Group Stage · 15 Jun | 0–0 | Spain 79.3% (model picked Spain) | Draw ✖ |
| Portugal vs DR Congo | Group Stage · 17 Jun | 1–1 | Portugal 76.2% (model picked Portugal) | Draw ✖ |
| Uruguay vs Cape Verde | Group Stage · 21 Jun | 2–2 | Uruguay 75.5% (model picked Uruguay) | Draw ✖ |
| South Africa vs South Korea | Group Stage · 25 Jun | 1–0 | South Korea 69.7% (model picked South Korea) | South Africa win ✖ |
The model gave Argentina a 39.2% chance of winning the Final against Spain (Spain 32.4%, Draw 28.3%). It picked Argentina. Spain won 1–0. A 6.8-point upset by the model's own measure. The semi-final was similar: the model backed France (42.2%) to beat Spain; Spain won 2–0.
These misses are documented because they happened, not hidden because they're inconvenient. The 70.2% overall figure includes them.
Brier score (lower = better probability calibration): overall 0.488. A perfectly calibrated model scores 0.000; predicting every match at 33%/33%/33% scores 0.667. See methodology for how probabilities are calculated.