| Thats all. Game finished. | ||
| 90+2' | Ringo Meerveld from Heerenveen is awarded a free kick in the defensive half. | |
| 90+2' | Valentin Sulzbacher from Excelsior commits a foul. | |
| 90' | Noah Naujoks from Excelsior commits a foul. | |
| 90' | Sam Kersten from Heerenveen is awarded a free kick in the defensive half. | |
| 90' | The fourth official has indicated there will be 2 minutes of added time. | |
| 88' | Attempt saved. Stijn van Gassel from Excelsior saves a header by Roberts Uldrikis of Heerenveen from the right side of the six-yard box, which was assisted by Marko Farji. | |
| 88' | Goal! Heerenveen leads 4-0 after Jacob Trenskow scores with a left-footed shot from the right side of the six-yard box into the bottom right corner. | |
| 86' | Substitution for Heerenveen: Hristiyan Petrov comes on for Maas Willemsen. | |
| 86' | Foul committed by Ilano Silva Timas of Excelsior. | |
| 86' | Oliver Braude from Heerenveen wins a free kick in the defensive half. | |
| 84' | Goal! Heerenveen leads 3-0 against Excelsior. Luca Oyen scores with a left-footed shot from the center of the box into the bottom left corner, assisted by Ringo Meerveld's through ball. | |
| 84' | Foul committed by Rick Meissen of Excelsior. | |
| 84' | Marko Farji from Heerenveen is awarded a free kick on the left wing. | |
| 82' | Substitution for Heerenveen: Luca Oyen comes on for Nolhan Courtens. | |
| 82' | Substitution for Heerenveen: Ringo Meerveld comes on for Levi Smans. | |
| 82' | Substitution for Heerenveen: Roberts Uldrikis comes on for Dylan Vente. | |
| 79' | Attempt missed. Mario Domínguez from Excelsior has a right-footed shot from very close range that goes just to the right. | |
| 77' | Foul committed by Mario Domínguez of Excelsior. | |
| 77' | Marcus Linday from Heerenveen wins a free kick in the defensive half. | |
| 77' | Substitution for Excelsior: Noah Naujoks comes on for Eric da Silva Moreira. | |
| 76' | Heerenveen wins a corner after Eric da Silva Moreira concedes. | |
| 73' | Substitution for Heerenveen: Marko Farji comes on for Maxence Rivera. | |
| 72' | Lennard Hartjes from Excelsior is awarded a free kick in the attacking half. | |
| 72' | Foul committed by Marcus Linday of Heerenveen. | |
| 71' | Valentin Sulzbacher from Excelsior wins a free kick in the attacking half. | |
| 71' | Marcus Linday from Heerenveen commits a foul. | |
| 71' | Eric da Silva Moreira from Excelsior wins a free kick on the right wing. | |
| 71' | Foul committed by Vasilios Zagaritis of Heerenveen. | |
| 67' | Attempt saved. Levi Smans from Heerenveen has a right-footed shot from the center of the box, but it's saved in the top center of the goal by Stijn van Gassel from Excelsior. The assist comes from Maas Willemsen. | |
| 66' | Substitution for Excelsior: Valentin Sulzbacher comes on for Aymen Sliti. | |
| 66' | Substitution for Excelsior: Osman Turay comes on for Simon Janssen. | |
| 66' | Substitution for Excelsior: Ilano Silva Timas comes on for Ágúst Thorsteinsson. | |
| 63' | Jacob Trenskow from Heerenveen hits the bar with a left-footed shot from outside the box, assisted by Oliver Braude. | |
| 60' | Dylan Vente from Heerenveen misses an attempt with a header from the center of the box, sending it too high. Maxence Rivera provided the assist with a cross. | |
| 58' | Excelsior wins a corner after Oliver Braude concedes. | |
| 58' | Attempt missed. Casper Widell from Excelsior heads the ball from very close range but it goes too high. Simon Janssen provided the assist with a cross after a corner. | |
| 55' | Foul committed by Rick Meissen of Excelsior. | |
| 55' | Levi Smans from Heerenveen is awarded a free kick in the defensive half. | |
| 54' | Goal! Heerenveen leads 2-0 against Excelsior. Oliver Braude scores with a right-footed shot from the right side of the box into the top right corner, assisted by Jacob Trenskow after a fast break. | |
| 51' | Irakli Yegoian from Excelsior wins a free kick in the defensive half. | |
| 51' | Foul committed by Oliver Braude of Heerenveen. | |
| 50' | Heerenveen wins a corner after Casper Widell concedes. | |
| 46' | Jacob Trenskow's right-footed shot from the right side of the box is blocked. He was assisted by Levi Smans. | |
| 46' | Heerenveen is awarded a corner after Jan Plug concedes. | |
| 46' | The second half begins with Heerenveen leading Excelsior 1-0. | |
| 46' | Substitution for Excelsior: Mario Domínguez comes on for David Garden. | |
| 45+2' | Dylan Vente from Heerenveen misses an attempt, shooting high and wide to the left from the right side of the box. The cross was assisted by Levi Smans. | |
| 45+1' | Dylan Vente from Heerenveen misses a right-footed shot from the center of the box, sending it to the left. Oliver Braude provided the assist. | |
| 45+1' | Attempt missed. Jacob Trenskow from Heerenveen takes a left-footed shot from the right side of the box, but it goes high and wide to the left. He was assisted by Dylan Vente. | |
| 45' | The fourth official has indicated there will be 2 minutes of added time. | |
| 45' | Offside for Heerenveen. Dylan Vente is caught in an offside position. | |
| 43' | Ágúst Thorsteinsson from Excelsior commits a foul. | |
| 43' | Oliver Braude from Heerenveen wins a free kick in the defensive half. | |
| 43' | Ágúst Thorsteinsson from Excelsior receives a yellow card for a foul. | |
| 41' | Casper Widell from Excelsior is awarded a free kick in the defensive half. | |
| 41' | Foul committed by Dylan Vente of Heerenveen. | |
| 40' | Eric da Silva Moreira from Excelsior is awarded a free kick in the defensive half. | |
| 40' | Foul committed by Sam Kersten of Heerenveen. | |
| 38' | Heerenveen wins a corner after Jan Plug concedes. | |
| 37' | Maxence Rivera from Heerenveen has a right-footed shot from outside the box, but it's saved in the center of the goal by Stijn van Gassel from Excelsior. The attempt was assisted by Vasilios Zagaritis. | |
| 35' | Heerenveen is called offside. Maxence Rivera is the player caught in an offside position. | |
| 29' | Lennard Hartjes from Excelsior misses the attempt with a right-footed shot from the center of the box, sending it high and wide to the left. Aymen Sliti provided the assist with a cross. | |
| 26' | Delay is over, and they are ready to continue. | |
| 26' | The match is delayed due to an injury to Oliver Braude from Heerenveen. | |
| 25' | Attempt saved. Irakli Yegoian from Excelsior has a right-footed shot from outside the box, but Bernt Klaverboer from Heerenveen saves it in the center of the goal. The assist came from Lennard Hartjes. | |
| 24' | Simon Janssen from Excelsior is awarded a free kick in the defensive half. | |
| 24' | Foul committed by Jacob Trenskow of Heerenveen. | |
| 23' | David Garden's right-footed shot from outside the box for Excelsior is blocked. | |
| 22' | Foul committed by Maas Willemsen of Heerenveen. | |
| 22' | Lennard Hartjes from Excelsior is awarded a free kick on the left wing. | |
| 18' | Heerenveen is called offside as Jacob Trenskow is caught in an offside position. | |
| 15' | Oliver Braude from Heerenveen is awarded a free kick in the defensive half. | |
| 15' | Foul committed by Ágúst Thorsteinsson of Excelsior. | |
| 11' | Goal! Heerenveen leads 1-0 after Dylan Vente converts a penalty with a right-footed shot into the bottom left corner. | |
| 9' | Stijn van Gassel from Excelsior concedes a penalty after committing a foul in the penalty area. | |
| 9' | Penalty awarded to Heerenveen after Levi Smans is fouled in the penalty area. | |
| 8' | Marcus Linday from Heerenveen commits a handball. | |
| 4' | Attempt missed. Jacob Trenskow from Heerenveen takes a left-footed shot from the center of the box that goes close but misses to the right. He was assisted by Marcus Linday after a fast break. | |
| 1' | Ágúst Thorsteinsson from Excelsior commits a handball. | |
| 1' | First half begins. | |
| First Half starts. | ||