Mainz vs Heidenheim

16 December 2023 · Bundesliga · 2023/24 · Referee Bastian Dankert

Full time 0 – 1

Half-time: 0–1

  • Marvin Pieringer 12’

Match summary

Heidenheim won 1-0 away at Mainz. Heidenheim led 1-0 at half-time.

Marvin Pieringer put Heidenheim ahead in the 12th minute, set up by Benedikt Gimber.

Mainz can feel hard done by, creating 1.21 expected goals (xG) from 19 shots to Heidenheim's 0.76 from 6.

Match stats

Mainz Heidenheim
16 Shots 5
4 Shots on Target 2
8 Corners 1
3 Yellow Cards 3
0 Red Cards 0
1.21 xG 0.76
1.21 Non-penalty xG 0.76
10 Deep Completions 3

Key events

Mainz Heidenheim
Kick-off
12’
Marvin Pieringer
Assist: Benedikt Gimber
0-1 (Heidenheim)
Half-time0-1
Full-time0-1

Bookings

Card times are not on file for this game, so they are listed without a minute.

Mainz
  • Tom Krauß
  • Brajan Gruda
  • Ludovic Ajorque
Heidenheim
  • Marnon Busch
  • Benedikt Gimber
  • Jan-Niklas Beste

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 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.21 0.76 12’ Marvin Pieringer (Heidenheim), 0-1 12’ 0.0 0.5 1.0 1.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.21 0.76 12’ Marvin Pieringer (Heidenheim), 0-1 Pieringer 12’
Mainz 1.21 xGHeidenheim 0.76 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Heidenheim attacking Mainz attacking 
12’ Marvin Pieringer (Heidenheim), set piece, 0.44 xG, goal 68’ Marco Richter (Mainz), open play, 0.22 xG, off target 75’ Ludovic Ajorque (Mainz), from a corner, 0.13 xG, blocked 90’ Florian Pick (Heidenheim), open play, 0.10 xG, hit the woodwork 48’ Ludovic Ajorque (Mainz), open play, 0.09 xG, hit the woodwork 18’ Sepp van den Berg (Mainz), set piece, 0.08 xG, blocked 61’ Marco Richter (Mainz), open play, 0.09 xG, blocked 59’ Tim Kleindienst (Heidenheim), open play, 0.07 xG, blocked 71’ Karim Onisiwo (Mainz), open play, 0.07 xG, blocked 58’ Jan Schöppner (Heidenheim), open play, 0.07 xG, blocked 26’ Brajan Gruda (Mainz), open play, 0.06 xG, saved 35’ Marco Richter (Mainz), direct free kick, 0.06 xG, off target 74’ Dominik Kohr (Mainz), from a corner, 0.06 xG, blocked 90+2’ Tim Kleindienst (Heidenheim), open play, 0.06 xG, saved 21’ Jonathan Burkardt (Mainz), set piece, 0.05 xG, blocked 51’ Jonathan Burkardt (Mainz), from a corner, 0.05 xG, hit the woodwork 55’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, off target 22’ Ludovic Ajorque (Mainz), from a corner, 0.05 xG, off target 32’ Marco Richter (Mainz), open play, 0.04 xG, saved 25’ Merveille Papela (Mainz), open play, 0.03 xG, saved 16’ Brajan Gruda (Mainz), open play, 0.03 xG, off target 61’ Marco Richter (Mainz), open play, 0.03 xG, off target 69’ Marco Richter (Mainz), open play, 0.02 xG, off target 45’ Jonas Föhrenbach (Heidenheim), set piece, 0.02 xG, off target 78’ Marcus Müller (Mainz), open play, 0.01 xG, blocked 12’ Marvin Pieringer (Heidenheim), set piece, 0.44 xG, goal 68’ Marco Richter (Mainz), open play, 0.22 xG, off target 75’ Ludovic Ajorque (Mainz), from a corner, 0.13 xG, blocked 90’ Florian Pick (Heidenheim), open play, 0.10 xG, hit the woodwork 48’ Ludovic Ajorque (Mainz), open play, 0.09 xG, hit the woodwork 18’ Sepp van den Berg (Mainz), set piece, 0.08 xG, blocked 61’ Marco Richter (Mainz), open play, 0.09 xG, blocked 59’ Tim Kleindienst (Heidenheim), open play, 0.07 xG, blocked 71’ Karim Onisiwo (Mainz), open play, 0.07 xG, blocked 58’ Jan Schöppner (Heidenheim), open play, 0.07 xG, blocked 35’ Marco Richter (Mainz), direct free kick, 0.06 xG, off target 74’ Dominik Kohr (Mainz), from a corner, 0.06 xG, blocked 90+2’ Tim Kleindienst (Heidenheim), open play, 0.06 xG, saved 26’ Brajan Gruda (Mainz), open play, 0.06 xG, saved 51’ Jonathan Burkardt (Mainz), from a corner, 0.05 xG, hit the woodwork 55’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, off target 21’ Jonathan Burkardt (Mainz), set piece, 0.05 xG, blocked 22’ Ludovic Ajorque (Mainz), from a corner, 0.05 xG, off target 32’ Marco Richter (Mainz), open play, 0.04 xG, saved 25’ Merveille Papela (Mainz), open play, 0.03 xG, saved 16’ Brajan Gruda (Mainz), open play, 0.03 xG, off target 61’ Marco Richter (Mainz), open play, 0.03 xG, off target 69’ Marco Richter (Mainz), open play, 0.02 xG, off target 45’ Jonas Föhrenbach (Heidenheim), set piece, 0.02 xG, off target 78’ Marcus Müller (Mainz), open play, 0.01 xG, blocked
Size shows xG Goal On target Off target or blocked

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

Player stats

PlayerPosMinGAShxGxAKPCards
Daniel Batz GK900 0.000.000
Danny da Costa DEF880 0.000.031
Dominik Kohr DEF901 0.060.182
Sepp van den Berg DEF901 0.080.000
Philipp Mwene DEF900 0.000.071
Merveille Papela MID751 0.030.041
Tom Krauß MID480 0.000.000
Brajan Gruda MID902 0.090.265
Jonathan Burkardt MID652 0.100.000
Marco Richter MID886 0.450.102
Ludovic Ajorque FWD903 0.270.142
Jae-Sung Lee Sub421 0.050.221
Karim Onisiwo Sub251 0.070.000
Marcus Müller Sub151 0.010.000
David Mamutovic Sub20 0.000.000
Aymen Barkok Sub20 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Mainz win 56% Avg odds 1.72
Draw 23% Avg odds 4.07
Heidenheim win 21% Avg odds 4.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. Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.