betaider.com

Toulouse v Nice — Prediction, Odds & Stats

Saturday 17 January 2026 · FRA-Ligue 1 · 2526

Ligue 1 xG Prediction generated

5–1
1.77 – 1.42 xG
Shots
22 – 15
On target
9 – 6
Shots in box
17 – 13
xG per shot
0.08 – 0.09
Set-piece xG
0.32 – 0.10
Goals − xG
+3.23 – -0.42

AI prediction

ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.
Toulouse win
53.0%
Draw
21.6%
Nice win
25.3%

Probabilities, not certainties. How they are made: the methodology.

Was this pick made in advance?
A model whose name ends -oos is out of sample: it was fitted only on matches played before this one, so its pick is a genuine forecast rather than hindsight. Anything without that suffix was fitted on all available data.

What the chances say

Toulouse are finishing below their chances — 3.6 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding more than the chances against them merit — 2.3 goals above expected, which tends to correct.

LLLDWWDLDL last 10 scored 11 from 14.6 xG conceded 19 from 16.7 xG

Nice are finishing sharply below their chances — 5.6 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding sharply fewer than expected — 5.5 goals saved beyond what the chances suggest.

LDDDDLDDLD last 10 scored 6 from 11.6 xG conceded 12 from 17.5 xG

Finishing swings far more than chance creation, so a gap this size usually narrows. Over ten matches it is suggestive, not settled — a genuinely elite finisher beats expected goals for years.

What the model said

ModelHome / Draw / Away Expected goalsLikeliest score O2.5BTTSOutcome
ai-blend-oos 1.63–1.02 0% 0% 0% Home ✓
dc-xg-oos 1.57–1.07 1-1 12% 49% 52% Home ✓

A model whose name ends -oos was produced by the walk-forward backtest: it was fitted only on matches played before this one, so the pick is genuinely out of sample.

Reading the xG timeline
Each step up is a shot; the height of the step is how good the chance was. Dots mark goals. A side whose line climbs steadily created chances all match. A side that scored while its line stayed flat took a rare chance — that is finishing luck, and it rarely repeats.

Expected goals by minute

0.00.51.01.52.00'15'30'45'60'75'90'Santiago Hidalgo 6' — goalFrank Magri 44' — goalSepe Elye Wahi 48' — goalSantiago Hidalgo 54' — goalCristian Cásseres Jr. 73' — goalJulián Vignolo 79' — goal
Toulouse 1.77 xGNice 1.42 xG
Reading the shot map
Each circle is a shot, placed where it was taken. Bigger means a better chance; filled circles are goals. Clusters near the goal mean a side worked good openings; lots of small circles far out means shooting from poor positions and hoping. Hover any circle for the player, minute and chance quality.

Shot map

Morgan Sanson 2' — Saved Shot (0.03 xG, Open Play)Santiago Hidalgo 6' — Goal (0.53 xG, Open Play)Tom Louchet 10' — Missed Shot (0.08 xG, From Corner)Frank Magri 11' — Missed Shot (0.07 xG, Open Play)Rasmus Nicolaisen 19' — Missed Shot (0.01 xG, Set Piece)Frank Magri 20' — Missed Shot (0.06 xG, Open Play)Tom Louchet 21' — Missed Shot (0.09 xG, Open Play)Pape Diop 30' — Blocked Shot (0.03 xG, Open Play)Aron Dønnum 32' — Saved Shot (0.03 xG, From Corner)Frank Magri 32' — Missed Shot (0.05 xG, From Corner)Frank Magri 32' — Blocked Shot (0.04 xG, From Corner)Frank Magri 32' — Saved Shot (0.07 xG, From Corner)Aron Dønnum 33' — Missed Shot (0.05 xG, From Corner)Isak Jansson 38' — Blocked Shot (0.07 xG, Open Play)Melvin Bard 38' — Saved Shot (0.05 xG, Open Play)Tanguy NDombele Alvaro 38' — Missed Shot (0.09 xG, Open Play)Santiago Hidalgo 41' — Blocked Shot (0.09 xG, Open Play)Frank Magri 42' — Missed Shot (0.08 xG, Open Play)Frank Magri 44' — Goal (0.15 xG, Open Play)Isak Jansson 46' — Saved Shot (0.05 xG, Open Play)Morgan Sanson 47' — Missed Shot (0.10 xG, Open Play)Sepe Elye Wahi 48' — Goal (0.52 xG, Open Play)Tom Louchet 52' — Blocked Shot (0.05 xG, Open Play)Santiago Hidalgo 54' — Goal (0.05 xG, Open Play)Pape Diop 59' — Saved Shot (0.02 xG, Open Play)Everton Pereira 61' — Blocked Shot (0.03 xG, Set Piece)Tiago Gouveia 65' — Saved Shot (0.05 xG, Open Play)Mohamed Ali-Cho 70' — Saved Shot (0.13 xG, Open Play)Cristian Cásseres Jr. 73' — Goal (0.13 xG, Open Play)Frank Magri 76' — Blocked Shot (0.02 xG, Open Play)Julián Vignolo 79' — Goal (0.05 xG, Open Play)Jonathan Clauss 83' — Missed Shot (0.01 xG, Open Play)Noah Edjouma 85' — Missed Shot (0.04 xG, From Corner)Noah Edjouma 87' — Blocked Shot (0.05 xG, Open Play)Kevin Omoruyi 91' — Blocked Shot (0.08 xG, Open Play)Cristian Cásseres Jr. 92' — Blocked Shot (0.12 xG, Open Play)Julián Vignolo 93' — Saved Shot (0.04 xG, From Corner)
Toulouse attacking right Nice attacking left Marker size is xG; filled markers are goals.

Every shot

MinTeamPlayerxG SituationBody partResultAssisted by
2' Nice Morgan Sanson 0.03 Open Play Right Foot Saved Shot Tom Louchet
6' Toulouse Santiago Hidalgo 0.53 Open Play Left Foot Goal Aron Dønnum
10' Nice Tom Louchet 0.08 From Corner Right Foot Missed Shot
11' Toulouse Frank Magri 0.07 Open Play Left Foot Missed Shot Yann Gboho
19' Toulouse Rasmus Nicolaisen 0.01 Set Piece Missed Shot Aron Dønnum
20' Toulouse Frank Magri 0.06 Open Play Right Foot Missed Shot Djibril Sidibe
21' Nice Tom Louchet 0.09 Open Play Right Foot Missed Shot Jonathan Clauss
30' Toulouse Pape Diop 0.03 Open Play Right Foot Blocked Shot
32' Toulouse Aron Dønnum 0.03 From Corner Left Foot Saved Shot Yann Gboho
32' Toulouse Frank Magri 0.05 From Corner Missed Shot Pape Diop
32' Toulouse Frank Magri 0.04 From Corner Blocked Shot Aron Dønnum
32' Toulouse Frank Magri 0.07 From Corner Right Foot Saved Shot
33' Toulouse Aron Dønnum 0.05 From Corner Left Foot Missed Shot Pape Diop
38' Nice Isak Jansson 0.07 Open Play Left Foot Blocked Shot
38' Nice Melvin Bard 0.05 Open Play Left Foot Saved Shot
38' Nice Tanguy NDombele Alvaro 0.09 Open Play Right Foot Missed Shot
41' Toulouse Santiago Hidalgo 0.09 Open Play Left Foot Blocked Shot Frank Magri
42' Toulouse Frank Magri 0.08 Open Play Missed Shot Djibril Sidibe
44' Toulouse Frank Magri 0.15 Open Play Left Foot Goal Yann Gboho
46' Nice Isak Jansson 0.05 Open Play Saved Shot Tom Louchet
47' Nice Morgan Sanson 0.10 Open Play Right Foot Missed Shot Mohamed Ali-Cho
48' Nice Sepe Elye Wahi 0.52 Open Play Right Foot Goal
52' Nice Tom Louchet 0.05 Open Play Right Foot Blocked Shot Jonathan Clauss
54' Toulouse Santiago Hidalgo 0.05 Open Play Left Foot Goal Frank Magri
59' Toulouse Pape Diop 0.02 Open Play Right Foot Saved Shot Cristian Cásseres Jr.
61' Nice Everton Pereira 0.03 Set Piece Left Foot Blocked Shot
65' Nice Tiago Gouveia 0.05 Open Play Right Foot Saved Shot Melvin Bard
70' Nice Mohamed Ali-Cho 0.13 Open Play Saved Shot Sepe Elye Wahi
73' Toulouse Cristian Cásseres Jr. 0.13 Open Play Right Foot Goal
76' Toulouse Frank Magri 0.02 Open Play Right Foot Blocked Shot Julián Vignolo
79' Toulouse Julián Vignolo 0.05 Open Play Left Foot Goal
83' Nice Jonathan Clauss 0.01 Open Play Left Foot Missed Shot
85' Toulouse Noah Edjouma 0.04 From Corner Left Foot Missed Shot Cristian Cásseres Jr.
87' Toulouse Noah Edjouma 0.05 Open Play Right Foot Blocked Shot Yann Gboho
91' Nice Kevin Omoruyi 0.08 Open Play Right Foot Blocked Shot Jonathan Clauss
92' Toulouse Cristian Cásseres Jr. 0.12 Open Play Right Foot Blocked Shot Noah Edjouma
93' Toulouse Julián Vignolo 0.05 From Corner Right Foot Saved Shot

Players

Nice

PlayerMinGA ShKPxGxA xGChain
Tom Louchet FWR 90 0 0 3 2 0.22 0.08 0.44
Morgan Sanson MC 90 0 0 2 0 0.12 0.00 0.31
Jonathan Clauss DR 90 0 0 1 3 0.01 0.22 0.28
Brad-Hamilton Mantsounga DC 90 0 0 0 0 0.00 0.00 0.45
Juma Bah DC 90 0 0 0 0 0.00 0.00 0.22
Maxime Dupé GK 90 0 0 0 0 0.00 0.00 0.09
Sepe Elye Wahi FW 85 1 0 1 1 0.52 0.13 0.97
Melvin Bard DL 73 0 0 1 1 0.05 0.05 0.28
Everton Pereira MC 70 0 0 1 0 0.03 0.00 0.05
Isak Jansson FWL 49 0 0 2 0 0.12 0.00 0.21
Tanguy NDombele Alvaro MC 49 0 0 1 0 0.09 0.00 0.18
Mohamed Ali-Cho Sub 41 0 0 1 1 0.13 0.10 0.36
Tiago Gouveia Sub 41 0 0 1 0 0.05 0.00 0.23
Kevin Omoruyi Sub 20 0 0 1 0 0.08 0.00 0.21
Ali Abdi Sub 17 0 0 0 0 0.00 0.00 0.08
Charles Vanhoutte Sub 5 0 0 0 0 0.00 0.00 0.00

Toulouse

PlayerMinGA ShKPxGxA xGChain
Aron Dønnum DML 90 0 1 2 3 0.08 0.58 0.96
Rafik Messali DMR 90 0 0 0 0 0.00 0.00 0.02
Guillaume Restes GK 90 0 0 0 0 0.00 0.00 0.17
Djibril Sidibe DC 90 0 0 0 2 0.00 0.14 0.21
Charlie Cresswell DC 90 0 0 0 0 0.00 0.00 0.13
Yann Gboho FWL 90 0 1 0 4 0.00 0.30 0.99
Frank Magri FW 85 1 1 8 2 0.54 0.14 0.52
Pape Diop MC 85 0 0 2 2 0.05 0.09 0.11
Rasmus Nicolaisen DC 85 0 0 1 0 0.01 0.00 0.23
Santiago Hidalgo FWR 78 2 0 3 0 0.67 0.00 0.75
Alexis Vossah MC 59 0 0 0 0 0.00 0.00 0.27
Cristian Cásseres Jr. Sub 31 1 0 2 2 0.24 0.05 0.31
Julián Vignolo Sub 12 1 0 2 1 0.10 0.02 0.07
Noah Edjouma Sub 5 0 0 2 1 0.09 0.12 0.17
Mário Sauer Sub 5 0 0 0 0 0.00 0.00 0.00
Seny Koumbassa Sub 5 0 0 0 0 0.00 0.00 0.00
betaider.com

Sport

Football sections

Preferences

Appearance
Aider Reading the Football model · online
Open the Radar
Bet slip
Open full page
to move to open esc to close See all results

On this page

Match

What this page is for

One fixture in full. The model's probability for every market it prices, the prices stored against them, the teams expected to feature, and for a match already played, the shot map and the xG timeline.

How to read the shot map

Every shot is placed where it was taken and sized by its chance of being scored. A cluster of small marks from distance and a clean sheet is a side that was busy without ever threatening; two big marks and a defeat is a side that had the better of it and lost anyway. Both happen constantly, and both are invisible in the score.

How to read the xG timeline

The steps are chances as they arrived, so the shape shows who was on top and when. A flat line that jumps once near the end is a smash and grab.

Things to watch

The stored prediction is the one made before the match, kept deliberately so it can be judged afterwards. It is not re-fitted with hindsight.

Press esc to close Read the full guide