Mainz vs Bayer Leverkusen

18 October 2025 · Bundesliga · 2025/26 · Referee Florian Exner

Full time 3 – 4

Half-time: 1–3

  • Jae-Sung Lee 34’
  • Nadiem Amiri 71’ (pen)
  • Armindo Sieb 90’
  • Álex Grimaldo 11’ (pen), 45+3’
  • Christian Kofane 24’
  • Martin Terrier 87’

Match summary

Bayer Leverkusen won 4-3 away at Mainz. Bayer Leverkusen led 3-1 at half-time.

In the first half, Álex Grimaldo put Bayer Leverkusen ahead from the penalty spot in the 11th minute, Christian Kofane made it 0-2 in the 24th minute, set up by Ernest Poku, Jae-Sung Lee pulled one back to make it 1-2 in the 34th minute, and Grimaldo made it 1-3 in first-half stoppage time, set up by Jonas Hofmann. In the second half, Nadiem Amiri made it 2-3 from the penalty spot in the 71st minute, Martin Terrier made it 2-4 in the 87th minute, and Armindo Sieb made it 3-4 in the 90th minute, set up by Nadiem Amiri.

The chances backed that up: Bayer Leverkusen created 4.51 expected goals (xG) from 20 shots to Mainz's 1.63 from 12.

Match stats

42% Possession 58%
12 Shots 20
4 Shots on target 8
2 Corners 3
142 Attacks 131
34 Dangerous attacks 41
400 Passes 559
72% Pass accuracy 82%
10 Tackles 16
19 Fouls 11
4 Yellow cards 4
0 Red cards 0
2 Offsides 0

Key events

Mainz Bayer Leverkusen
Kick-off
8’
Jonas HofmannShot on target
11’
Alejandro GrimaldoPenalty0-1 (Bayer Leverkusen)
16’
Christian KofaneShot on target
23’
Christian KofaneShot on target
24’
Christian KofaneRight foot shot0-2 (Bayer Leverkusen)
Nadiem AmiriShot on target
25’
Bo Henriksen
30’
Jae-sung LeeRight foot shot1-2 (Mainz)
34’
37’
45+3’
Alejandro GrimaldoLeft foot shot1-3 (Bayer Leverkusen)
Half-time1-3
Second half underway
Arnaud NordinNikolas Veratschnig
65’
Andreas Hanche-OlsenStefan Bell
65’
67’
68’
Nadiem AmiriPenalty2-3 (Mainz)
71’
Andreas Hanche-OlsenFoul
77’
79’
Eliesse Ben SeghirErnest Poku
William BøvingJae-sung Lee
81’
81’
Loïc BadéTime wasting
83’
Eliesse Ben SeghirTime wasting
Armindo SiebBenedict Hollerbach
86’
87’
Martin TerrierRight foot shot2-4 (Bayer Leverkusen)
Armindo SiebRight foot shot3-4 (Mainz)
90’
Nadiem AmiriSimulation
90+3’
William BøvingFoul
90+10’
Full-time3-4

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 1 2 3 4 5 6 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.63 4.51 11’ Álex Grimaldo (Bayer Leverkusen), 0-1 11’ 24’ Christian Kofane (Bayer Leverkusen), 0-2 24’ 34’ Jae-Sung Lee (Mainz), 1-2 34’ 45+3’ Álex Grimaldo (Bayer Leverkusen), 1-3 45+3’ 71’ Nadiem Amiri (Mainz), 2-3 71’ 87’ Martin Terrier (Bayer Leverkusen), 2-4 87’ 90’ Armindo Sieb (Mainz), 3-4 90’ 0 1 2 3 4 5 6 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.63 4.51 11’ Álex Grimaldo (Bayer Leverkusen), 0-1 Grimaldo 11’ 24’ Christian Kofane (Bayer Leverkusen), 0-2 Kofane 24’ 34’ Jae-Sung Lee (Mainz), 1-2 Lee 34’ 45+3’ Álex Grimaldo (Bayer Leverkusen), 1-3 Grimaldo 45+3’ 71’ Nadiem Amiri (Mainz), 2-3 Amiri 71’ 87’ Martin Terrier (Bayer Leverkusen), 2-4 Terrier 87’ 90’ Armindo Sieb (Mainz), 3-4 Sieb 90’
Mainz 1.63 xGBayer Leverkusen 4.51 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Bayer Leverkusen attacking Mainz attacking 
11’ Álex Grimaldo (Bayer Leverkusen), penalty, 0.76 xG, goal 71’ Nadiem Amiri (Mainz), penalty, 0.76 xG, goal 90+3’ Aleix García (Bayer Leverkusen), open play, 0.60 xG, blocked 87’ Martin Terrier (Bayer Leverkusen), open play, 0.55 xG, goal 60’ Christian Kofane (Bayer Leverkusen), open play, 0.47 xG, off target 90’ Martin Terrier (Bayer Leverkusen), open play, 0.40 xG, off target 48’ Álex Grimaldo (Bayer Leverkusen), open play, 0.37 xG, goal 23’ Christian Kofane (Bayer Leverkusen), open play, 0.36 xG, saved 34’ Jae-Sung Lee (Mainz), open play, 0.30 xG, goal 87’ Ibrahim Maza (Bayer Leverkusen), open play, 0.14 xG, blocked 16’ Christian Kofane (Bayer Leverkusen), open play, 0.11 xG, saved 63’ Jae-Sung Lee (Mainz), open play, 0.11 xG, blocked 59’ Christian Kofane (Bayer Leverkusen), open play, 0.11 xG, off target 8’ Jonas Hofmann (Bayer Leverkusen), open play, 0.10 xG, saved 24’ Christian Kofane (Bayer Leverkusen), open play, 0.09 xG, goal 34’ Ernest Poku (Bayer Leverkusen), open play, 0.09 xG, blocked 75’ Ernest Poku (Bayer Leverkusen), open play, 0.09 xG, blocked 90’ Armindo Sieb (Mainz), open play, 0.09 xG, goal 39’ Álex Grimaldo (Bayer Leverkusen), direct free kick, 0.08 xG, off target 51’ Dominik Kohr (Mainz), open play, 0.08 xG, blocked 42’ Nadiem Amiri (Mainz), direct free kick, 0.07 xG, off target 46’ Álex Grimaldo (Bayer Leverkusen), open play, 0.07 xG, off target 29’ Nadiem Amiri (Mainz), direct free kick, 0.06 xG, blocked 26’ Benedict Hollerbach (Mainz), from a corner, 0.06 xG, off target 55’ Arthur (Bayer Leverkusen), open play, 0.06 xG, blocked 68’ Arnaud Nordin (Mainz), set piece, 0.05 xG, hit the woodwork 3’ Ezequiél Fernández (Bayer Leverkusen), set piece, 0.03 xG, blocked 84’ Nadiem Amiri (Mainz), open play, 0.02 xG, blocked 18’ Edmond Tapsoba (Bayer Leverkusen), open play, 0.02 xG, off target 32’ Robert Andrich (Bayer Leverkusen), from a corner, 0.02 xG, blocked 1’ Nadiem Amiri (Mainz), open play, 0.01 xG, off target 25’ Nadiem Amiri (Mainz), open play, 0.01 xG, saved 11’ Álex Grimaldo (Bayer Leverkusen), penalty, 0.76 xG, goal 71’ Nadiem Amiri (Mainz), penalty, 0.76 xG, goal 90+3’ Aleix García (Bayer Leverkusen), open play, 0.60 xG, blocked 87’ Martin Terrier (Bayer Leverkusen), open play, 0.55 xG, goal 60’ Christian Kofane (Bayer Leverkusen), open play, 0.47 xG, off target 90’ Martin Terrier (Bayer Leverkusen), open play, 0.40 xG, off target 48’ Álex Grimaldo (Bayer Leverkusen), open play, 0.37 xG, goal 23’ Christian Kofane (Bayer Leverkusen), open play, 0.36 xG, saved 34’ Jae-Sung Lee (Mainz), open play, 0.30 xG, goal 87’ Ibrahim Maza (Bayer Leverkusen), open play, 0.14 xG, blocked 16’ Christian Kofane (Bayer Leverkusen), open play, 0.11 xG, saved 63’ Jae-Sung Lee (Mainz), open play, 0.11 xG, blocked 59’ Christian Kofane (Bayer Leverkusen), open play, 0.11 xG, off target 8’ Jonas Hofmann (Bayer Leverkusen), open play, 0.10 xG, saved 75’ Ernest Poku (Bayer Leverkusen), open play, 0.09 xG, blocked 24’ Christian Kofane (Bayer Leverkusen), open play, 0.09 xG, goal 34’ Ernest Poku (Bayer Leverkusen), open play, 0.09 xG, blocked 90’ Armindo Sieb (Mainz), open play, 0.09 xG, goal 39’ Álex Grimaldo (Bayer Leverkusen), direct free kick, 0.08 xG, off target 51’ Dominik Kohr (Mainz), open play, 0.08 xG, blocked 46’ Álex Grimaldo (Bayer Leverkusen), open play, 0.07 xG, off target 42’ Nadiem Amiri (Mainz), direct free kick, 0.07 xG, off target 29’ Nadiem Amiri (Mainz), direct free kick, 0.06 xG, blocked 26’ Benedict Hollerbach (Mainz), from a corner, 0.06 xG, off target 55’ Arthur (Bayer Leverkusen), open play, 0.06 xG, blocked 68’ Arnaud Nordin (Mainz), set piece, 0.05 xG, hit the woodwork 3’ Ezequiél Fernández (Bayer Leverkusen), set piece, 0.03 xG, blocked 84’ Nadiem Amiri (Mainz), open play, 0.02 xG, blocked 18’ Edmond Tapsoba (Bayer Leverkusen), open play, 0.02 xG, off target 32’ Robert Andrich (Bayer Leverkusen), from a corner, 0.02 xG, blocked 1’ Nadiem Amiri (Mainz), open play, 0.01 xG, off target 25’ Nadiem Amiri (Mainz), open play, 0.01 xG, saved
Size shows xG Goal On target Off target or blocked

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

Lineups

Mainz 3-4-2-1 Starting XI
Rieß
Costa
Bell 65’
Kohr
Veratschnig 65’
Amiri
Sano
Mwene
Nebel
Lee 81’
Hollerbach 86’
Bayer Leverkusen 3-4-2-1 Starting XI
Flekken
Tapsoba
Badé
Andrich
Grimaldo 2
García
Fernández
Arthur
Poku 79’
Hofmann 66’
Kofane 79’

Player stats

PlayerPosMinGAShxGxAKPCards
Lasse Rieß GK900 0.000.000
Danny da Costa DEF900 0.000.000
Dominik Kohr DEF901 0.080.000
Stefan Bell DEF700 0.000.000
Nikolas Veratschnig MID700 0.000.081
Philipp Mwene MID900 0.000.000
Nadiem Amiri MID90116 0.940.253
Kaishu Sano MID900 0.000.000
Paul Nebel MID900 0.000.082
Jae-Sung Lee MID8712 0.410.000
Benedict Hollerbach FWD901 0.060.000
Arnaud Nordin Sub201 0.050.000
Andreas Hanche-Olsen Sub200 0.000.000
William Bøving Sub30 0.000.000
Armindo Sieb Sub111 0.090.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Mainz win 38% Avg odds 2.49
Draw 27% Avg odds 3.45
Bayer Leverkusen win 35% Avg odds 2.66

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.