Mainz vs Borussia Monchengladbach

5 December 2025 · Bundesliga · 2025/26 · Referee Benjamin Brand

Full time 0 – 1

Half-time: 0–0

  • Danny da Costa 58’ (og)

Match summary

Borussia Monchengladbach won 1-0 away at Mainz. It was goalless at half-time.

Da Costa's own goal put Borussia Monchengladbach ahead from a corner in the 58th minute.

The chances backed that up: Borussia Monchengladbach created 1.90 expected goals (xG) from 14 shots to Mainz's 1.09 from 8.

Match stats

55% Possession 45%
8 Shots 14
2 Shots on target 5
8 Corners 6
127 Attacks 111
60 Dangerous attacks 32
525 Passes 425
80% Pass accuracy 76%
17 Tackles 23
12 Fouls 4
2 Yellow cards 1
0 Red cards 0
1 Offsides 2

Key events

Mainz Borussia Monchengladbach
Kick-off
19’
VAR review
25’
Joe ScallyTime wasting
Half-time0-0
Second half underway
Nelson WeiperShot on target
48’
57’
Jens CastropShot on target
58’
Danny da CostaOwn goal0-1 (Borussia Monchengladbach)
61’
Rocco ReitzShot on target
Arnaud NordinShot on target
68’
Benedict HollerbachFabio Moreno Fell
77’
Nikolas VeratschnigSilvan Widmer
77’
78’
Shuto MachinoShot on target
79’
Grant-Leon RanosShuto Machino
Nikolas VeratschnigArgument
90’
90’
Rocco ReitzShot on target
Andreas Hanche-OlsenFoul
90+3’
Full-time0-1

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.09 1.90 58’ Danny da Costa (Borussia Monchengladbach) own goal, 0-1 58’ 0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.09 1.90 58’ Danny da Costa (Borussia Monchengladbach) own goal, 0-1 da Costa 58’
Mainz 1.09 xGBorussia Monchengladbach 1.90 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Borussia Monchengladbach attacking Mainz attacking 
48’ Nelson Weiper (Mainz), open play, 0.52 xG, saved 57’ Jens Castrop (Borussia Monchengladbach), open play, 0.51 xG, saved 16’ Jens Castrop (Borussia Monchengladbach), open play, 0.44 xG, blocked 73’ Nelson Weiper (Mainz), open play, 0.36 xG, off target 16’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.14 xG, blocked 21’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.14 xG, off target 58’ Haris Tabakovic (Borussia Monchengladbach), from a corner, 0.14 xG, off target 90’ Jens Castrop (Borussia Monchengladbach), open play, 0.10 xG, blocked 78’ Shuto Machino (Borussia Monchengladbach), open play, 0.09 xG, saved 17’ Kevin Diks (Borussia Monchengladbach), from a corner, 0.08 xG, off target 61’ Rocco Reitz (Borussia Monchengladbach), open play, 0.06 xG, saved 8’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.05 xG, off target 86’ Jae-Sung Lee (Mainz), open play, 0.06 xG, blocked 46’ Giovanni Reyna (Borussia Monchengladbach), open play, 0.05 xG, blocked 71’ Fabio Moreno Fell (Mainz), from a corner, 0.05 xG, off target 90’ Rocco Reitz (Borussia Monchengladbach), open play, 0.04 xG, saved 71’ Nelson Weiper (Mainz), from a corner, 0.04 xG, off target 50’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.03 xG, blocked 68’ Arnaud Nordin (Mainz), open play, 0.03 xG, saved 66’ Maxim Leitsch (Mainz), from a corner, 0.02 xG, off target 23’ Jens Castrop (Borussia Monchengladbach), open play, 0.02 xG, off target 52’ Jae-Sung Lee (Mainz), open play, 0.01 xG, off target 58’ Danny da Costa (Mainz), own goal 48’ Nelson Weiper (Mainz), open play, 0.52 xG, saved 57’ Jens Castrop (Borussia Monchengladbach), open play, 0.51 xG, saved 16’ Jens Castrop (Borussia Monchengladbach), open play, 0.44 xG, blocked 73’ Nelson Weiper (Mainz), open play, 0.36 xG, off target 16’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.14 xG, blocked 21’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.14 xG, off target 58’ Haris Tabakovic (Borussia Monchengladbach), from a corner, 0.14 xG, off target 90’ Jens Castrop (Borussia Monchengladbach), open play, 0.10 xG, blocked 78’ Shuto Machino (Borussia Monchengladbach), open play, 0.09 xG, saved 17’ Kevin Diks (Borussia Monchengladbach), from a corner, 0.08 xG, off target 61’ Rocco Reitz (Borussia Monchengladbach), open play, 0.06 xG, saved 86’ Jae-Sung Lee (Mainz), open play, 0.06 xG, blocked 8’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.05 xG, off target 71’ Fabio Moreno Fell (Mainz), from a corner, 0.05 xG, off target 46’ Giovanni Reyna (Borussia Monchengladbach), open play, 0.05 xG, blocked 90’ Rocco Reitz (Borussia Monchengladbach), open play, 0.04 xG, saved 71’ Nelson Weiper (Mainz), from a corner, 0.04 xG, off target 50’ Haris Tabakovic (Borussia Monchengladbach), open play, 0.03 xG, blocked 68’ Arnaud Nordin (Mainz), open play, 0.03 xG, saved 66’ Maxim Leitsch (Mainz), from a corner, 0.02 xG, off target 23’ Jens Castrop (Borussia Monchengladbach), open play, 0.02 xG, off target 52’ Jae-Sung Lee (Mainz), open play, 0.01 xG, off target 58’ Danny da Costa (Mainz), own goal
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

Mainz 3-5-2 Starting XI
Batz
Costa
Hanche-Olsen
Leitsch
Widmer 77’
Sano
Amiri
Lee 88’
Mwene 66’
Fell 77’
Weiper
Borussia Monchengladbach 3-4-2-1 Starting XI
Nicolas
Diks
Elvedi
Scally
Netz
Engelhardt
Reitz
Castrop 90’
Reyna 69’
Machino 79’
Tabakovic

Player stats

PlayerPosMinGAShxGxAKPCards
Daniel Batz GK900 0.000.000
Maxim Leitsch DEF901 0.020.000
Danny da Costa DEF900 0.000.000
Andreas Hanche-Olsen DEF900 0.000.000
Silvan Widmer MID790 0.000.000
Philipp Mwene MID680 0.000.000
Nadiem Amiri MID900 0.000.072
Kaishu Sano MID900 0.000.613
Jae-Sung Lee MID902 0.070.412
Nelson Weiper FWD903 0.920.000
Fabio Moreno Fell FWD791 0.050.000
Arnaud Nordin Sub221 0.030.000
Nikolas Veratschnig Sub110 0.000.000
Benedict Hollerbach Sub110 0.000.000
Sota Kawasaki Sub10 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Mainz win 35% Avg odds 2.67
Draw 28% Avg odds 3.38
Borussia Monchengladbach win 37% Avg odds 2.54

Chances implied by the average closing odds, with the bookmaker margin removed.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals and player data from Understat. Timeline, lineups and team statistics from Sportmonks. Results and odds from football-data.co.uk.