xgEdge

Saturday, 19/09/2026 at 20:00

Full time
Match report · Eredivisie

AFC Ajax 2:2 Excelsior

AFC Ajax Home 2.51 xG · 33 shots
Excelsior Away 0.82 xG · 4 shots
22 AFC Ajax had the better chances, but it finished level

AFC Ajax were the model's likeliest winner before kick-off at 52%. It finished 2–2. The biggest difference was AFC Ajax's attack: 2.51 xG against 1.87 projected (+0.64). Excelsior produced 0.82 xG against 1.22 projected (−0.40).

Goals

  1. 32' Julian Brandt AFC Ajax · 0.19 xG chance 1–0
  2. 45' Lennard Hartjes Excelsior · 0.10 xG chance 1–1
  3. 62' Aymen Sliti Excelsior · 0.57 xG chance 1–2
  4. 64' Tolu Arokodare AFC Ajax · 0.25 xG chance 2–2

The model against the result

priced before kick-off
AFC Ajax
52%
Draw
26% What happened
Excelsior
22%

Data coverage Both teams have the full 20-match model window available.

Projected vs produced

Expected goals
AFC Ajax The model projected 1.87 Produced 2.51 Difference +0.64
Excelsior The model projected 1.22 Produced 0.82 Difference -0.40

AFC Ajax produced 0.64 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

AFC Ajax Excelsior
Shots
33
4
On target
8
2
Inside the box
24
4
xG per shot
0.07
0.21
Open play xG
1.74
0.83
Set-piece xG
0.62
0.02
Penalties
—
—

AFC Ajax's shots add up to 2.36 xG and Excelsior's to 0.85; the published figures are 2.51 and 0.82.

Shot map

Both teams shown attacking the same goal for comparison.

Excelsior · Aymen Sliti · 62' · Goal · 3 m · 0.57 xG AFC Ajax · Jorthy Mokio · 28' · No goal · 5 m · 0.26 xG AFC Ajax · Tolu Arokodare · 64' · Goal · 5 m · 0.25 xG AFC Ajax · Julian Brandt · 32' · Goal · 13 m · 0.19 xG Excelsior · Aymen Sliti · 23' · No goal · 5 m · 0.16 xG AFC Ajax · Davy Klaassen · 41' · No goal · 12 m · 0.14 xG AFC Ajax · Abdellah Ouazane · 80' · No goal · 13 m · 0.12 xG AFC Ajax · Tolu Arokodare · 87' · No goal · 5 m · 0.12 xG AFC Ajax · Oscar Gloukh · 27' · No goal · 15 m · 0.11 xG AFC Ajax · Thilo Kehrer · 28' · No goal · 7 m · 0.11 xG Excelsior · Lennard Hartjes · 45' · Goal · 11 m · 0.10 xG AFC Ajax · Julian Brandt · 36' · No goal · 16 m · 0.09 xG AFC Ajax · Davy Klaassen · 45' · No goal · 11 m · 0.09 xG AFC Ajax · Tolu Arokodare · 90' · No goal · 11 m · 0.08 xG AFC Ajax · Abdellah Ouazane · 79' · No goal · 19 m · 0.07 xG AFC Ajax · Tolu Arokodare · 79' · No goal · 11 m · 0.07 xG AFC Ajax · Oscar Gloukh · 23' · No goal · 18 m · 0.06 xG AFC Ajax · Tolu Arokodare · 75' · No goal · 8 m · 0.06 xG AFC Ajax · Oscar Gloukh · 86' · No goal · 10 m · 0.06 xG AFC Ajax · Kasper Dolberg · 24' · No goal · 18 m · 0.05 xG AFC Ajax · Tolu Arokodare · 64' · No goal · 6 m · 0.05 xG AFC Ajax · Oscar Gloukh · 78' · No goal · 13 m · 0.05 xG AFC Ajax · Kasper Dolberg · 26' · No goal · 12 m · 0.04 xG AFC Ajax · Julian Brandt · 77' · No goal · 15 m · 0.04 xG AFC Ajax · Tolu Arokodare · 81' · No goal · 12 m · 0.04 xG AFC Ajax · Oscar Gloukh · 90' · No goal · 11 m · 0.03 xG Excelsior · Aymen Sliti · 30' · No goal · 13 m · 0.02 xG AFC Ajax · Anton Gaaei · 42' · No goal · 21 m · 0.02 xG AFC Ajax · Oscar Gloukh · 50' · No goal · 23 m · 0.02 xG AFC Ajax · Anton Gaaei · 52' · No goal · 7 m · 0.02 xG AFC Ajax · Viktor Tsygankov · 54' · No goal · 22 m · 0.02 xG AFC Ajax · Anton Gaaei · 58' · No goal · 21 m · 0.02 xG AFC Ajax · Anton Gaaei · 67' · No goal · 20 m · 0.02 xG AFC Ajax · Tolu Arokodare · 67' · No goal · 11 m · 0.02 xG AFC Ajax · Oscar Gloukh · 69' · No goal · 15 m · 0.02 xG AFC Ajax · Anton Gaaei · 29' · No goal · 25 m · 0.01 xG AFC Ajax · Tolu Arokodare · 89' · No goal · 11 m · 0.01 xG

All shots

37 shots · 3.21 xG

Hover, focus or tap a shot to read it.

  • AFC Ajax
  • Excelsior
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
AFC Ajax

2.67 xG created 1.32 xGA

  • W 1.97 created, 0.59 conceded against PEC Zwolle
  • D 2.00 created, 1.36 conceded against SC Heerenveen
  • W 2.13 created, 1.13 conceded against SC Telstar
  • L 1.99 created, 2.55 conceded against PSV Eindhoven
  • W 4.13 created, 0.71 conceded against Fortuna Sittard
  • W 3.79 created, 1.58 conceded against Willem II Tilburg
Excelsior

1.43 xG created 1.26 xGA

  • W 2.87 created, 0.72 conceded against SC Cambuur
  • L 0.51 created, 2.24 conceded against PSV Eindhoven
  • W 1.21 created, 0.97 conceded against Sparta Rotterdam
  • W 1.60 created, 0.86 conceded against Willem II Tilburg
  • D 1.81 created, 1.36 conceded against NEC Nijmegen
  • L 0.61 created, 1.42 conceded against FC Utrecht

xG created xG conceded (xGA) W / D / L: the match result

Head to head

AFC Ajax: 0 won · 1 drawn · 1 lost

Pre-match model & market record

9 opportunities flagged4 won5 lost

  • Lost
  • Lost
  • Lost
  • Won
  • Lost
  • Lost
  • Won
  • Won
  • Won
View pre-match record
The outcomes the model flagged on AFC Ajax against Excelsior before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
Excelsior to win 11.00 +143.3% Lost
AFC Ajax not to score 17.00 +123.8% Lost
AFC Ajax at most 1 goal 5.00 +111.2% Lost
Draw 7.00 +84.6% Won
Under 2.5 goals 4.00 +53.6% Lost
Under 1.5 goals 10.00 +48.1% Lost
Excelsior 2+ goals 3.50 +23.1% Won
Excelsior to score 1.53 +12.6% Won
Both teams to score 1.62 +5.3% Won

Pre-match model vs market

Outcome Model Market Difference Fair odds
AFC Ajax 51.5% 77.8% −26.3 pp 1.94
Draw 26.4% 13.6% +12.8 pp 3.79
Excelsior 22.1% 8.6% +13.5 pp 4.52

Other markets

Outcome Model Market Difference Fair odds
AFC Ajax to score 86.8% 94.3% −7.5 pp 1.15
AFC Ajax not to score 13.2% 5.7% +7.5 pp 7.59
Excelsior to score 73.5% 60.8% +12.7 pp 1.36
Excelsior not to score 26.5% 39.2% −12.7 pp 3.77
Both teams to score 65.2% 57.7% +7.6 pp 1.53
Both teams not to score 34.8% 42.3% −7.6 pp 2.88
AFC Ajax 2+ goals 57.8% 81.1% −23.3 pp 1.73
AFC Ajax at most 1 goal 42.2% 18.9% +23.3 pp 2.37
Excelsior 2+ goals 35.2% 26.9% +8.3 pp 2.84
Excelsior at most 1 goal 64.8% 73.1% −8.3 pp 1.54
Over 1.5 goals 85.2% 90.4% −5.2 pp 1.17
Under 1.5 goals 14.8% 9.6% +5.2 pp 6.75
Over 2.5 goals 61.6% 76.2% −14.6 pp 1.62
Under 2.5 goals 38.4% 23.8% +14.6 pp 2.60

Prices and probabilities are the ones stored before kick-off; nothing here is recalculated. Edge is the model's probability times the price, minus one, so a flagged outcome that lost is the ordinary case rather than a contradiction.

Model details

Show
Fit window
the last 20 matches, recency weighted (a match 107 days old counts half)
AFC Ajax sample
20 matches
Excelsior sample
20 matches
Computed
11 hours before kick-off
Prices taken
11 hours before kick-off

Limitations

The model reads expected goals and nothing else. It does not know the lineups, who is injured or suspended, what either side has to play for, the weather, or how congested the schedule around this match is.