xgEdge

Friday, 28/08/2026 at 19:00

Full time
Match report · Superliga (Denmark)

AC Horsens 2:3 Viborg FF

AC Horsens Home 0.83 xG · 9 shots
Viborg FF Away 1.92 xG · 12 shots
23 The scoreline reflected the chances

Viborg FF were the model's likeliest winner before kick-off at 41%. They won 3–2. The biggest difference was Viborg FF's attack: 1.92 xG against 1.47 projected (+0.45). AC Horsens produced 0.83 xG against 1.24 projected (−0.41).

Goals

  1. 34' Dorian Hanza Viborg FF · 0.42 xG chance 0–1
  2. 45' Charly Nouck Viborg FF · 0.04 xG chance 0–2
  3. 47' Kelvin Ehibhatiomhan AC Horsens · 0.61 xG chance 1–2
  4. 55' Asker Beck Viborg FF · 0.09 xG chance 1–3
  5. 71' Ivan Miličević AC Horsens · 0.02 xG chance 2–3

The model against the result

priced before kick-off
AC Horsens
29%
Draw
30%
Viborg FF
41% What happened

Data coverage One of these teams has only 5 matches in the model window, short of the 10 the model wants. Read the projection as a direction rather than as a number.

Projected vs produced

Expected goals
AC Horsens The model projected 1.24 Produced 0.83 Difference -0.41
Viborg FF The model projected 1.47 Produced 1.92 Difference +0.45

Viborg FF produced 0.45 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

AC Horsens Viborg FF
Shots
9
12
On target
5
6
Inside the box
3
9
xG per shot
0.09
0.15
Open play xG
0.12
1.54
Set-piece xG
0.69
0.23
Penalties
—
—
Shot-level xG may differ from the published match total

The provider publishes the match total separately from its shot-by-shot values. Those values are rounded to two decimals and, leaving out penalties and own goals, add up to its non-penalty xG: 0.80 for AC Horsens and 1.80 for Viborg FF.

Shot map

Both teams shown attacking the same goal for comparison.

AC Horsens · Kelvin Ehibhatiomhan · 47' · Goal · 5 m · 0.61 xG Viborg FF · Oliver Bundgaard · 7' · No goal · 4 m · 0.51 xG Viborg FF · Dorian Hanza · 34' · Goal · 5 m · 0.42 xG Viborg FF · Sami Jalal · 55' · No goal · 13 m · 0.23 xG Viborg FF · Sami Jalal · 15' · No goal · 9 m · 0.13 xG Viborg FF · Sami Jalal · 67' · No goal · 11 m · 0.12 xG Viborg FF · Srđan Kuzmić · 14' · No goal · 5 m · 0.09 xG Viborg FF · Asker Beck · 55' · Goal · 14 m · 0.09 xG Viborg FF · Dorian Hanza · 61' · No goal · 4 m · 0.09 xG AC Horsens · Adrian Justinussen · 53' · No goal · 9 m · 0.06 xG Viborg FF · Charly Nouck · 45' · Goal · 15 m · 0.04 xG AC Horsens · Adam Herdonsson · 12' · No goal · 19 m · 0.03 xG Viborg FF · Mads Søndergaard · 13' · No goal · 20 m · 0.03 xG AC Horsens · Kristian Kirkegaard · 89' · No goal · 14 m · 0.03 xG AC Horsens · Ivan Miličević · 71' · Goal · 29 m · 0.02 xG AC Horsens · Jimi Tauriainen · 75' · No goal · 22 m · 0.02 xG AC Horsens · Yamirou Ouorou · 90' · No goal · 22 m · 0.02 xG AC Horsens · Adrian Justinussen · 6' · No goal · 24 m · 0.01 xG AC Horsens · Adrian Justinussen · 35' · No goal · 48 m · 0.01 xG Viborg FF · Oliver Bundgaard · 42' · No goal · 23 m · 0.01 xG Viborg FF · Charly Nouck · 43' · No goal · 19 m · 0.01 xG

All shots

21 shots · 2.58 xG

Hover, focus or tap a shot to read it.

  • AC Horsens
  • Viborg FF
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
AC Horsens

0.95 xG created 1.90 xGA

  • D 1.50 created, 2.66 conceded against FC Nordsjælland
  • L 0.41 created, 1.97 conceded against FC Midtjylland
  • L 0.49 created, 0.63 conceded against Brøndby IF
  • W 1.58 created, 1.37 conceded against Odense Boldklub
  • W 0.76 created, 2.87 conceded against Lyngby
Viborg FF

1.63 xG created 1.44 xGA

  • L 2.09 created, 2.70 conceded against AGF
  • W 2.04 created, 1.72 conceded against Odense Boldklub
  • L 1.95 created, 1.34 conceded against Brøndby IF
  • D 1.47 created, 0.62 conceded against Sønderjyske Fodbold
  • W 1.03 created, 1.92 conceded against AGF
  • W 1.19 created, 0.34 conceded against FC København

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

Pre-match model & market record

7 opportunities flagged2 won5 lost

  • Lost
  • Lost
  • Lost
  • Lost
  • Won
  • Lost
  • Won
View pre-match record
The outcomes the model flagged on AC Horsens against Viborg FF before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
AC Horsens to win 4.50 +31.7% Lost
Viborg FF not to score 6.00 +22.1% Lost
Viborg FF at most 1 goal 2.20 +22.0% Lost
Draw 3.80 +14.2% Lost
AC Horsens 2+ goals 3.00 +7.3% Won
Under 2.5 goals 2.20 +5.0% Lost
AC Horsens to score 1.40 +3.5% Won

Pre-match model vs market

Outcome Model Market Difference Fair odds
AC Horsens 29.3% 20.7% +8.6 pp 3.42
Draw 30.1% 24.5% +5.6 pp 3.33
Viborg FF 40.7% 54.8% −14.1 pp 2.46

Other markets

Outcome Model Market Difference Fair odds
AC Horsens to score 73.9% 66.3% +7.7 pp 1.35
AC Horsens not to score 26.1% 33.7% −7.7 pp 3.84
Viborg FF to score 79.7% 84.2% −4.6 pp 1.26
Viborg FF not to score 20.3% 15.8% +4.6 pp 4.91
Both teams to score 60.6% 57.7% +3.0 pp 1.65
Both teams not to score 39.4% 42.3% −3.0 pp 2.54
AC Horsens 2+ goals 35.8% 31.3% +4.5 pp 2.80
AC Horsens at most 1 goal 64.2% 68.7% −4.5 pp 1.56
Viborg FF 2+ goals 44.5% 57.7% −13.1 pp 2.25
Viborg FF at most 1 goal 55.5% 42.3% +13.1 pp 1.80
Over 1.5 goals 79.5% 79.2% +0.3 pp 1.26
Under 1.5 goals 20.5% 20.8% −0.3 pp 4.88
Over 2.5 goals 52.3% 57.1% −4.9 pp 1.91
Under 2.5 goals 47.7% 42.9% +4.9 pp 2.10

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

· 1 warning
Show
Fit window
the last 20 matches, recency weighted (a match 107 days old counts half)
AC Horsens sample
5 matches
Viborg FF sample
20 matches
Computed
8 hours before kick-off
Prices taken
8 hours before kick-off

Warnings

  • AC Horsens has only 5 matches in the database. Below 10 matches the estimate is very unreliable.

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.