The learning loop
Results are pulled hourly, verified against predictions nightly, and folded back into the models on retrain. This page shows all three happening — so a stalled loop is visible instead of looking idle.
Job heartbeats
| Job | Last run | Age | What it did |
|---|---|---|---|
| ingest | 2026-09-19 02:23 | 12.4h ago | 22 new fixture(s), 9298 price(s) |
| odds | 2026-09-19 14:05 | 0.7h ago | betway 7387 price(s), sportybet 5162 price(s) on 772 fixture(s) |
| predict | 2026-09-18 09:08 | 29.7h ago | re-scored 889 upcoming prediction(s) |
| results | 2026-09-19 14:20 | 0.5h ago | recorded 0 (soccerstats) + 0 (football-data) + 61 (sportybet) finished fixture(s); verified 13336 |
| verify | 2026-09-19 00:22 | 14.4h ago | recorded 2 result(s), verified 13136 prediction(s) |
| retrain | 2026-09-18 09:08 | 29.7h ago | trained on 132151 matches |
| footballdata | 2026-09-14 05:01 | 129.8h ago | 1333 new, 91675 with odds |
Running accuracy by league group
1X2 hit-rate over 6517 verified prediction(s), as results land. This is the live counterpart to the out-of-sample holdout on Reliability.
| Group | Verified | Accuracy |
|---|---|---|
| South America | 936 | 43.4% |
| Sweden | 600 | 42.8% |
| Poland | 447 | 44.5% |
| England | 434 | 45.2% |
| Usa | 431 | 47.3% |
| Norway | 408 | 46.6% |
| Finland | 367 | 48.5% |
| Iberia East | 286 | 35.0% |
| Japan | 266 | 48.5% |
| Low Countries | 245 | 42.0% |
| Spain | 229 | 44.1% |
| Italy | 225 | 43.1% |
| Denmark | 224 | 41.5% |
| Central | 223 | 44.8% |
| Romania | 205 | 45.9% |
| China | 199 | 38.2% |
| Scotland | 187 | 47.1% |
| Switzerland | 142 | 35.9% |
| France | 129 | 30.2% |
| Mexico | 122 | 49.2% |
| Germany | 120 | 44.2% |
| Ireland | 84 | 40.5% |
| Other | 8 | 37.5% |
Recently settled
33 further settled match(es) carried no forecast — competitions we deliberately don't model (cups, exotic leagues), or fixtures stubbed before their league's model existed. Nothing to judge, so they are counted rather than listed.
| Date | League | Match | Score | Model pick | Result |
|---|---|---|---|---|---|
| 09-19 | Super Lig | Kocaelispor v Gaziantep | 3–1 | Home win (46%) | correct |
| 09-19 | FA Cup | United v United | 0–1 | Home win (47%) | wrong |
| 09-19 | Super Lig | Corum FK v Alanyaspor | 1–1 | Home win (39%) | wrong |
| 09-19 | Premier League | Brighton v Arsenal | 1–2 | Away win (57%) | correct |
| 09-19 | Serie A | Bologna FC 1909 v Torino FC | 0–1 | Home win (50%) | wrong |
| 09-19 | 3. Division, Group 5 | Harstad v Skjetten | 3–1 | Home win (51%) | correct |
| 09-19 | 1. Division | Aarhus Fremad v Hvidovre IF | 1–3 | Home win (58%) | wrong |
| 09-19 | 2nd Division Group 2 | Follo v Eidsvold TF | 0–1 | Home win (51%) | wrong |
| 09-19 | Division 2 | Torns IF v Räppe | 1–2 | Home win (48%) | wrong |
| 09-19 | Division 2 | Skara v Ahlafors | 1–0 | Home win (48%) | correct |
| 09-19 | 3rd Division | Hoersholm-Usseroed IK v Vanloese IF | 1–1 | Home win (49%) | wrong |
| 09-19 | Division 2 | Farsta v Karlslunds IF HFK | 0–3 | Home win (48%) | wrong |
| 09-19 | 3rd Division | Naesby BK v Helsingor | 1–1 | Home win (59%) | wrong |
| 09-19 | 3. Division, Group 1 | Baerum SK v Union Carl Berner | 1–2 | Home win (51%) | wrong |
| 09-19 | III Liga, Group 2 | Blekitni Stargard v MKS Viktoria Wrzesnia | 1–1 | Home win (50%) | wrong |
| 09-19 | 3. Division, Group 4 | Hinna v Akra | 2–2 | Home win (51%) | wrong |
| 09-19 | Ykkonen | FC Jazz v VJS | 0–2 | Home win (52%) | wrong |
| 09-19 | Division 2 | Karlskrona v AIK | 2–0 | Home win (51%) | correct |
| 09-19 | 3. Liga | TSG Hoffenheim II U23 v SV Meppen 1912 | 1–0 | Home win (56%) | correct |
| 09-19 | La Liga | CA Osasuna v Rayo Vallecano | 1–0 | Home win (45%) | correct |
| 09-19 | 3rd Division | Sundby BK v Holstebro BK | 2–0 | Home win (49%) | correct |
| 09-19 | 3. Liga | VfB Stuttgart II U21 v Jahn Regensburg | 3–3 | Home win (50%) | wrong |
| 09-19 | 3. Division, Group 6 | Drobak-Frogn v Lyn 1896 FK | 3–2 | Away win (40%) | wrong |
| 09-19 | 2nd Division | Middelfart BK v Aarhus | 1–1 | Home win (45%) | wrong |
| 09-19 | 1. Division | AB Gladsaxe v Esbjerg FB | 3–0 | Home win (49%) | correct |
| 09-19 | 3. Division, Group 3 | Sogndal 2 v Vard | 2–4 | Home win (57%) | wrong |
| 09-19 | 3rd Division | Bronshoj BK v Aarhus | 5–1 | Home win (45%) | correct |
| 09-19 | Division 2 | Motala AIF FK v Grebbestads IF | 1–3 | Home win (48%) | wrong |
| 09-19 | 3. Liga | FC Viktoria Cologne v FC Ingolstadt 04 | 3–0 | Home win (46%) | correct |
| 09-19 | 3. Division, Group 3 | Gneist v Varegg | 2–2 | Home win (51%) | wrong |
| 09-19 | Veikkausliiga | Turun Palloseura v Ilves | 0–3 | Home win (42%) | wrong |
| 09-19 | Division 2 | Bollstanas SK v Skiljebo SK | 0–4 | Home win (48%) | wrong |
| 09-19 | China League 2 | Chengdu Rongcheng B v Taian Tiankuang | 1–1 | Home win (57%) | wrong |
| 09-19 | National League | Tamworth FC v Wealdstone FC | 2–1 | Home win (47%) | correct |
| 09-19 | Championship | Millwall FC v West Ham | 2–2 | Home win (41%) | wrong |
| 09-19 | China League 1 | United v Foshan Nanshi FC | 1–1 | Draw (43%) | correct |
| 09-19 | National League | United v Worthing FC | 1–3 | Home win (43%) | wrong |
| 09-19 | Championship | Cardiff City v Charlton | 3–1 | Home win (43%) | correct |
| 09-19 | League Two | Walsall v Port Vale | 2–0 | Home win (47%) | correct |
| 09-19 | Tweede Divisie | Rijnsburgse Boys v K.v.v. Quick Boys | 3–1 | Away win (45%) | wrong |