How the model did: 60 of 107 right (56.1%) on 20 October 2026
107 settled matches, 60 correct picks, one real upset (PSV Eindhoven over FC Porto) and the honest numbers behind them.
107 of our predictions settled in the last day and the model landed 60 of them, a 56.1% hit rate for the day against a running 56% across 1057 settled picks since launch. An ordinary day for a probability model: close to the long-run average and nothing to read into either way.
Upset of the day: PSV Eindhoven 0-1 FC Porto
The model gave FC Porto 76% and PSV Eindhoven only 9.7%. Champions League result: FC Porto 0-1 PSV Eindhoven. A 9.7% outcome should happen about once in every 10 such matches, so the question is whether the inputs missed something, usually team news, rather than whether the probability was wrong.
Best call: Sonay Kartal at 54.2%
Sonay Kartal null-null Kimberly Birrell in the WTA Kinoshita Group Japan Open. This was a genuinely close call that the model leaned the right way on, exactly the kind of edge that adds up over a season.
All results
| Match | Score | Pick | Result |
|---|---|---|---|
| Martin Damm v Francisco Cerundolo | null-null | Francisco Cerundolo (71.1%) | Correct |
| Facundo Diaz Acosta v Nikoloz Basilashvili | null-null | Nikoloz Basilashvili (68.4%) | Correct |
| Lesotho v Uganda | null-null | Uganda (96.8%) | Correct |
| Gambia v Mozambique | null-null | Mozambique (62.2%) | Correct |
| Leylah Fernandez v Aliaksandra Sasnovich | null-null | Leylah Fernandez (62.8%) | Correct |
| James Duckworth v Luciano Darderi | null-null | Luciano Darderi (61.4%) | Wrong |
| Mattia Bellucci v Tomas Martin Etcheverry | null-null | Tomas Martin Etcheverry (53.8%) | Wrong |
| Katie Boulter v Viktorija Golubic | null-null | Katie Boulter (52.2%) | Correct |
| Marie Bouzkova v Iga Swiatek | null-null | Marie Bouzkova (69.7%) | Correct |
| Tereza Valentova v Lilli Tagger | null-null | Tereza Valentova (58.3%) | Wrong |
| Tigres UANL v León | 0-2 | Tigres UANL (45%) | Wrong |
| Perth Scorchers Women v Sydney Sixers Women | null-null | Perth Scorchers Women (50%) | Wrong |
| Vegas Golden Knights v Tampa Bay Lightning | 2-6 | Vegas Golden Knights (58.8%) | Wrong |
| Lanlana Tararudee v Ashlyn Krueger | null-null | Ashlyn Krueger (51%) | Correct |
| Talia Gibson v Sinja Kraus | null-null | Sinja Kraus (57.4%) | Wrong |
| Vancouver Canucks v Carolina Hurricanes | 3-6 | Carolina Hurricanes (69.8%) | Correct |
| San Antonio Spurs v Oklahoma City Thunder | 104-116 | San Antonio Spurs (57.1%) | Wrong |
| Seattle Kraken v Detroit Red Wings | 4-3 | Seattle Kraken (61.5%) | Correct |
| Atlético de San Luis v Querétaro | 2-1 | Atlético de San Luis (39.7%) | Correct |
| FC Juárez v Atlante | 0-1 | Atlante (44.5%) | Correct |
| Edmonton Oilers v Minnesota Wild | 4-3 | Edmonton Oilers (57.3%) | Correct |
| Guadalajara v Necaxa | 1-0 | Guadalajara (64.3%) | Correct |
| St. Louis Blues v Winnipeg Jets | 2-1 | Winnipeg Jets (50.1%) | Wrong |
| Dallas Stars v Boston Bruins | 3-2 | Dallas Stars (50.3%) | Correct |
| Cúcuta Deportivo v Atlético Nacional | 1-0 | Atlético Nacional (62.7%) | Wrong |
| Internacional de Bogotá v Fortaleza CEIF | 2-1 | Internacional de Bogotá (50.9%) | Correct |
| New York Islanders v Anaheim Ducks | 3-2 | New York Islanders (61%) | Correct |
| New Jersey Devils v Colorado Avalanche | 4-3 | Colorado Avalanche (53.5%) | Wrong |
| Washington Capitals v Los Angeles Kings | 2-5 | Washington Capitals (78.9%) | Wrong |
| Columbus Blue Jackets v Toronto Maple Leafs | 2-6 | Columbus Blue Jackets (50.1%) | Wrong |
| Montreal Canadiens v San Jose Sharks | 3-4 | Montreal Canadiens (59.8%) | Wrong |
| New York Knicks v Philadelphia 76ers | 100-106 | New York Knicks (59.2%) | Wrong |
| Florida International Panthers v Middle Tennessee Blue Raiders | 23-26 | Florida International Panthers (55.5%) | Wrong |
| Delaware Blue Hens v Missouri State Bears | 61-38 | Delaware Blue Hens (55.5%) | Correct |
| Deportivo Pereira v Boyacá Chicó FC | 2-0 | Deportivo Pereira (51.5%) | Correct |
| Hamad Medjedovic v Brandon Nakashima | null-null | Brandon Nakashima (75.1%) | Correct |
| AS Roma v Slovan Bratislava | 4-0 | AS Roma (91.5%) | Correct |
| Manchester City v AEK Athens | 5-1 | Manchester City (92.7%) | Correct |
| VfB Stuttgart v Atlético Madrid | 1-1 | Atlético Madrid (50%) | Wrong |
| FC Porto v PSV Eindhoven | 0-1 | FC Porto (76%) | Wrong |
| Liverpool v Villarreal | 4-3 | Liverpool (64.4%) | Correct |
| Gillingham v Port Vale | 1-1 | Port Vale (51.4%) | Wrong |
| Napoli v Bodo/Glimt | 4-3 | Napoli (68.3%) | Correct |
| Paris Saint-Germain v Barcelona | 4-2 | Barcelona (35.3%) | Wrong |
| Detroit Pistons v Boston Celtics | 121-113 | Detroit Pistons (58.3%) | Correct |
| Northampton Town v Tranmere Rovers | 0-1 | Northampton Town (45.4%) | Wrong |
| Walsall v Oldham Athletic | 3-0 | Oldham Athletic (44.1%) | Wrong |
| York City v Accrington Stanley | 1-1 | York City (66.6%) | Wrong |
| AFC Wimbledon v Mansfield Town | 0-3 | Mansfield Town (52.6%) | Correct |
| Cambridge United v Wycombe Wanderers | 2-2 | Cambridge United (35.9%) | Wrong |
| Huddersfield Town v Peterborough United | 4-1 | Huddersfield Town (66.2%) | Correct |
| Cheltenham Town v Fleetwood Town | 4-2 | Fleetwood Town (51.6%) | Wrong |
| Exeter City v Crewe Alexandra | 2-0 | Exeter City (37.5%) | Correct |
| Bromley v Leicester City | 0-4 | Leicester City (63.9%) | Correct |
| Oxford United v Wigan Athletic | 2-1 | Oxford United (55.8%) | Correct |
| Barnet v Swindon Town | 1-3 | Barnet (70.3%) | Wrong |
| Chesterfield v Colchester United | 1-1 | Chesterfield (71.2%) | Wrong |
| Crawley Town v Shrewsbury Town | 2-3 | Shrewsbury Town (44%) | Correct |
| Rochdale v Grimsby Town | 2-2 | Grimsby Town (53.9%) | Wrong |
| Rotherham United v Newport County | 2-2 | Rotherham United (46.8%) | Wrong |
| Burton Albion v Bradford City | 0-0 | Bradford City (62.8%) | Wrong |
| Stevenage v Plymouth Argyle | 3-0 | Plymouth Argyle (45.9%) | Wrong |
| Bristol Rovers v Salford City | 1-2 | Salford City (45.6%) | Correct |
| Wolverhampton Wanderers v Portsmouth | 1-1 | Wolverhampton Wanderers (61.1%) | Wrong |
| Blackpool v Milton Keynes Dons | 2-0 | Blackpool (39.5%) | Correct |
| Doncaster Rovers v Stockport County | 0-2 | Stockport County (64%) | Correct |
| Luton Town v Barnsley | 2-1 | Luton Town (65.9%) | Correct |
| Notts County v Sheffield Wednesday | 2-0 | Sheffield Wednesday (56.6%) | Wrong |
| Matteo Berrettini v Kyrian Jacquet | null-null | Matteo Berrettini (54%) | Wrong |
| Al Ettifaq v Al Ittihad | 1-4 | Al Ittihad (58.8%) | Correct |
| Al Nassr v Neom SC | 1-0 | Al Nassr (74.1%) | Correct |
| Holger Rune v Raphael Collignon | null-null | Holger Rune (53.8%) | Wrong |
| Luca Van Assche v Clement Tabur | null-null | Clement Tabur (51%) | Wrong |
| Sabah FK v Borussia Dortmund | 1-2 | Borussia Dortmund (77.6%) | Correct |
| Fenerbahce v Slavia Prague | 2-2 | Fenerbahce (79%) | Wrong |
| Toby Samuel v Zizou Bergs | null-null | Zizou Bergs (52.5%) | Correct |
| Dolphins v Warriors | null-null | Warriors (53.6%) | Correct |
| Benjamin Bonzi v Cameron Norrie | null-null | Benjamin Bonzi (50.8%) | Correct |
| Al Taawoun v Al Qadsiah | 0-1 | Al Qadsiah (76.1%) | Correct |
| Al Diriyah v Al Riyadh | 1-0 | Al Diriyah (51.2%) | Correct |
| Rei Sakamoto v Karen Khachanov | null-null | Karen Khachanov (55.1%) | Correct |
| Jacob Fearnley v Hugo Gaston | null-null | Jacob Fearnley (52.7%) | Correct |
| Daniel Altmaier v Titouan Droguet | null-null | Titouan Droguet (54.4%) | Wrong |
| India Women v Zimbabwe Women | null-null | India Women (95.6%) | Correct |
| Lesotho v Mozambique | null-null | Mozambique (75.5%) | Wrong |
| Nigeria v Gambia | null-null | Nigeria (87%) | Correct |
| Botic Van De Zandschulp v Kamil Majchrzak | null-null | Botic Van De Zandschulp (77.5%) | Wrong |
| Ugo Humbert v Corentin Moutet | null-null | Ugo Humbert (63.9%) | Wrong |
| Arthur Fery v Borna Gojo | null-null | Arthur Fery (72.8%) | Wrong |
| Jan-Lennard Struff v Marcos Giron | null-null | Jan-Lennard Struff (67.2%) | Correct |
| Guo Hanyu v Ekaterina Alexandrova | null-null | Ekaterina Alexandrova (73.6%) | Correct |
| Katarzyna Kawa v Maja Chwalinska | null-null | Maja Chwalinska (68.6%) | Wrong |
| Fabian Marozsan v Timofey Skatov | null-null | Fabian Marozsan (62.8%) | Correct |
| Pierre-Hugues Herbert v Sebastian Baez | null-null | Sebastian Baez (57.8%) | Wrong |
| Jelena Ostapenko v Belinda Bencic | null-null | Belinda Bencic (56.4%) | Correct |
| Mariano Navone v Juan Manuel Cerundolo | null-null | Mariano Navone (50.1%) | Correct |
| Uganda v Zambia | null-null | Uganda (89.2%) | Correct |
| Stefanos Tsitsipas v Aleksandar Kovacevic | null-null | Stefanos Tsitsipas (76%) | Correct |
| Australia Women v New Zealand Women | null-null | Australia Women (90%) | Correct |
| Katerina Siniakova v Peyton Stearns | null-null | Katerina Siniakova (57.3%) | Correct |
| Pakistan v England | null-null | Pakistan (56.3%) | Correct |
| Jasmine Paolini v Anhelina Kalinina | null-null | Jasmine Paolini (66.8%) | Correct |
| Cristina Bucsa v Polina Kudermetova | null-null | Cristina Bucsa (51%) | Wrong |
| Sonay Kartal v Kimberly Birrell | null-null | Sonay Kartal (54.2%) | Correct |
| Terence Atmane v Rinky Hijikata | null-null | Rinky Hijikata (51.4%) | Wrong |
| Sho Shimabukuro v Roman Safiullin | null-null | Roman Safiullin (77.5%) | Wrong |
| Maya Joint v Zeynep Sonmez | null-null | Zeynep Sonmez (51.7%) | Correct |
By competition
- League Two: 3 of 12 correct
- NHL: 5 of 11 correct
- League One: 7 of 11 correct
- Champions League: 5 of 9 correct
- ATP Almaty Open: 4 of 8 correct
- ATP Grand Prix Auvergne-Rhône-Alpes: 2 of 8 correct
- ATP BNP Paribas Fortis European Open: 5 of 7 correct
- WTA BNB Ningbo Open: 5 of 7 correct
- WTA Kinoshita Group Japan Open: 5 of 7 correct
- ICC Men's T20 World Cup Sub Regional Africa Qualifier Group C: 4 of 5 correct
- Liga MX: 3 of 4 correct
- Saudi Pro League: 4 of 4 correct
- NBA: 1 of 3 correct
- Primera A: 2 of 3 correct
- NCAA Football: 1 of 2 correct
Where the track record stands
Across every settled prediction the model is at 56% (592 of 1057). The full breakdown by confidence band, with Brier score and log-loss, is on the track record page, and the methodology section there shows the same model scored against closing odds over a full season. Read more