Bundesliga · Matchweek 20
Waldemar Anton 44'
Serhou Guirassy 68' (pen)
Serhou Guirassy 69'
HT 1:1
Julian Niehues 45'
Julian Niehues 48'
Sun, 1 Feb 2026, 16:30 (UK) · Signal Iduna Park, Dortmund
Borussia Dortmund · 45 pts|1. FC Heidenheim · 13 pts

Borussia Dortmund won on the scoreboard and on xG (3.32–2.31).

Player of the matchSerhou Guirassy8.6Decisive moment68' Serhou Guirassy+1.0

Borussia Dortmund 3-2 1. FC Heidenheim

Key numbers

  • Possession 65% – 35%
  • Shots 19 (5 on target) – 12 (3)
  • Decisive moment: 68' Serhou Guirassy, FN xPts +1.0
Player of the match
Serhou Guirassy 8.6Dominant

Highest FN Score on the pitch: 8.6 (Dominant)

Game state

1-01-11-22-23-2
Borussia Dortmund ahead 22 min · level 48 min · 1. FC Heidenheim ahead 20 min
  • Maximilian Beier — off the bench 32 min · 0G 1A

FN xPts — what each moment was worth

How much each moment changed that team's expected points (win 3, draw 1). A goal's value is credited 70% to the scorer and 30% to the assist.

44' Waldemar Anton Goal +0.6
45' Julian Niehues Goal +0.5
48' Julian Niehues Goal · scorer +0.6 · assist Eren Dinkçi +0.3 +0.9
68' Serhou Guirassy Pen goal +1.0
69' Serhou Guirassy Goal · scorer +0.6 · assist Maximilian Beier +0.3 +0.9
Borussia Dortmund Expected (last two seasons) 2.3Own moments +2.5Opponent moments −1.6Time effect −0.2→ League points won 3
1. FC Heidenheim Expected (last two seasons) 0.5Own moments +1.4Opponent moments −2.2Time effect +0.3→ League points won 0

Expected points don't add up to a fixed total (a draw is 1 + 1), so an opponent's moment isn't simply the mirror of your loss. "Time effect" is the change as the clock runs down on a lead or a chase, and isn't credited to any player.

How FN Score and FN xPts work →

Match stats

Borussia Dortmund1. FC Heidenheim
65%Possession35%
3.32Expected goals (xG)2.31
0.17xG per shot0.19
19Shots12
5Shots on target3
26%Shots on target %25%
14Shots in box10
479Passes257
83%Pass accuracy71%
12Corners3
1Saves2
11Fouls11
2Yellow cards2
0Offsides6

Compared with usual

Borussia Dortmund

30 matches this season, all competitions baseline
This matchAvg
Goals32
Conceded21.2
xG3.321.5
xG against2.310.98
Shots1912.6
On target54.8
Shots faced1211.2
xG per shot0.170.13
Possession65%53.7%
Passes479514.5
Pass accuracy83%83.9%
Corners125.1
Fouls1111.4

1. FC Heidenheim

last 20 matches, all competitions baseline
This matchAvg
Goals20.85
Conceded32.2
xG2.311.2
xG against3.321.8
Shots1211.1
On target33.5
Shots faced1915.6
xG per shot0.190.1
Possession35%42%
Passes257366.6
Pass accuracy71%75.9%
Corners34.7
Fouls1110.6

Timeline

  • 40' Yellow Mathias Honsak
  • 44' Goal Waldemar Anton league goal #2
  • 45' Goal Julian Niehues league goal #2
  • 46' Sub Filippo Mané → Niklas Süle
  • 46' Sub Mathias Honsak → Arijon Ibrahimović
  • 48' Goal Julian Niehues league goal #3 assist Eren Dinkçi
  • 49' Yellow Waldemar Anton
  • 58' Sub Yan Couto → Maximilian Beier
  • 58' Sub Jobe Bellingham → Carney Chukwuemeka
  • 64' Yellow Julian Niehues
  • 66' VAR Julian Brandt
  • 68' Goal Serhou Guirassy (pen) league goal #7
  • 69' Sub Karim Adeyemi → Fábio Silva
  • 69' Goal Serhou Guirassy league goal #8 assist Maximilian Beier
  • 70' Sub Julian Niehues → Jan Schöppner
  • 80' Sub Haktab Omar Traore → Stefan Schimmer
  • 80' Sub Eren Dinkçi → Mikkel Kaufmann
  • 80' Sub Marvin Pieringer → Sirlord Conteh
  • 90+3' Sub Serhou Guirassy → Salih Özcan
  • 90+8' Yellow Gregor Kobel

Category leaders

  • Key passesJulian Brandt5
  • Duels wonHennes Behrens11/20
  • DribblesKarim Adeyemi4/6
  • Defensive actionsNiklas Dorsch8
  • ShotsSerhou Guirassy7 (on target 3)
  • Fouls wonHennes Behrens4

Past-season matches are summarised from match data (API-Football) without a written review. FN Score and FN xPts are calculated by Fulltime Note using a published formula.