betaider.com
Sign in

Mainz 05 v Eintracht Frankfurt — Prediction, Odds & Stats

Sunday 22 March 2026 · GER-Bundesliga · 2526

Bundesliga xG Prediction generated

2–1
1.38 – 1.72 xG
Shots
8 – 12
On target
5 – 4
Shots in box
7 – 9
xG per shot
0.19 – 0.14
Set-piece xG
0.04 – 0.41
Goals − xG
+0.49 – -0.72

AI prediction

ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.
Mainz 05 win
42.8%
Draw
25.3%
Eintracht Frankfurt win
31.9%

Probabilities, not certainties. How they are made: the methodology.

Was this pick made in advance?
A model whose name ends -oos is out of sample: it was fitted only on matches played before this one, so its pick is a genuine forecast rather than hindsight. Anything without that suffix was fitted on all available data.

What the chances say

Mainz 05 are finishing below their chances — 3.9 goals fewer than expected across 10 matches, despite creating the openings.

WLWDWLWLWL last 10 scored 21 from 24.9 xG conceded 17 from 18.9 xG

Eintracht Frankfurt are finishing below their chances — 2.9 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding more than the chances against them merit — 2.2 goals above expected, which tends to correct.

LLDDLWDLWL last 10 scored 15 from 17.9 xG conceded 24 from 21.8 xG

Finishing swings far more than chance creation, so a gap this size usually narrows. Over ten matches it is suggestive, not settled — a genuinely elite finisher beats expected goals for years.

What the model said

ModelHome / Draw / Away Expected goalsLikeliest score O2.5BTTSOutcome
ai-blend-oos 1.71–1.46 0% 0% 0% Home ✓
dc-xg-oos 1.84–1.39 1-1 10% 63% 63% Home ✓

A model whose name ends -oos was produced by the walk-forward backtest: it was fitted only on matches played before this one, so the pick is genuinely out of sample.

Reading the xG timeline
Each step up is a shot; the height of the step is how good the chance was. Dots mark goals. A side whose line climbs steadily created chances all match. A side that scored while its line stayed flat took a rare chance — that is finishing luck, and it rarely repeats.

Expected goals by minute

0.00.51.01.41.90'15'30'45'60'75'90'Paul Nebel 5' — goalNathaniel Brown 19' — goalPaul Nebel 88' — goal
Mainz 05 1.51 xGEintracht Frankfurt 1.72 xG
Reading the shot map
Each circle is a shot, placed where it was taken. Bigger means a better chance; filled circles are goals. Clusters near the goal mean a side worked good openings; lots of small circles far out means shooting from poor positions and hoping. Hover any circle for the player, minute and chance quality.

Shot map

Paul Nebel 5' — Goal (0.06 xG, Open Play)Farès Chaïbi 10' — Blocked Shot (0.07 xG, Open Play)Jonathan Burkardt 18' — Blocked Shot (0.08 xG, Open Play)Nathaniel Brown 19' — Goal (0.46 xG, Open Play)Kaishu Sano 22' — Missed Shot (0.04 xG, From Corner)Farès Chaïbi 23' — Blocked Shot (0.02 xG, Open Play)Paul Nebel 34' — Blocked Shot (0.11 xG, Open Play)Sheraldo Becker 36' — Saved Shot (0.41 xG, Open Play)Arthur Theate 42' — Saved Shot (0.05 xG, From Corner)Nnamdi Collins 45' — Missed Shot (0.36 xG, Set Piece)Sheraldo Becker 45' — Saved Shot (0.07 xG, Open Play)Arnaud Kalimuendo Muinga 50' — Saved Shot (0.09 xG, Open Play)Farès Chaïbi 60' — Shot On Post (0.43 xG, Open Play)Jonathan Burkardt 65' — Missed Shot (0.03 xG, Open Play)Ayoube Amaimouni-Echghouyab 67' — Missed Shot (0.04 xG, Open Play)Ritsu Doan 69' — Saved Shot (0.07 xG, Open Play)Sheraldo Becker 83' — Shot On Post (0.09 xG, Open Play)Nelson Weiper 88' — Saved Shot (0.28 xG, Open Play)Paul Nebel 88' — Goal (0.44 xG, Open Play)Ansgar Knauff 95' — Blocked Shot (0.02 xG, Open Play)
Mainz 05 attacking right Eintracht Frankfurt attacking left Marker size is xG; filled markers are goals.

Every shot

MinTeamPlayerxG SituationBody partResultAssisted by
5' Mainz 05 Paul Nebel 0.06 Open Play Right Foot Goal Sheraldo Becker
10' Eintracht Frankfurt Farès Chaïbi 0.07 Open Play Right Foot Blocked Shot Jean Négoce
18' Eintracht Frankfurt Jonathan Burkardt 0.08 Open Play Right Foot Blocked Shot Ritsu Doan
19' Eintracht Frankfurt Nathaniel Brown 0.46 Open Play Right Foot Goal Jean Négoce
22' Mainz 05 Kaishu Sano 0.04 From Corner Right Foot Missed Shot Jae-Sung Lee
23' Eintracht Frankfurt Farès Chaïbi 0.02 Open Play Right Foot Blocked Shot Jean Négoce
34' Mainz 05 Paul Nebel 0.11 Open Play Right Foot Blocked Shot Sheraldo Becker
36' Mainz 05 Sheraldo Becker 0.41 Open Play Right Foot Saved Shot Kaishu Sano
42' Eintracht Frankfurt Arthur Theate 0.05 From Corner — Saved Shot Farès Chaïbi
45' Eintracht Frankfurt Nnamdi Collins 0.36 Set Piece — Missed Shot Farès Chaïbi
45' Mainz 05 Sheraldo Becker 0.07 Open Play Right Foot Saved Shot Jae-Sung Lee
50' Eintracht Frankfurt Arnaud Kalimuendo Muinga 0.09 Open Play Right Foot Saved Shot Jean Négoce
60' Eintracht Frankfurt Farès Chaïbi 0.43 Open Play — Shot On Post Ritsu Doan
65' Eintracht Frankfurt Jonathan Burkardt 0.03 Open Play Right Foot Missed Shot Hugo Larsson
67' Eintracht Frankfurt Ayoube Amaimouni-Echghouyab 0.04 Open Play Left Foot Missed Shot Hugo Larsson
69' Eintracht Frankfurt Ritsu Doan 0.07 Open Play Left Foot Saved Shot Jonathan Burkardt
83' Mainz 05 Sheraldo Becker 0.09 Open Play Left Foot Shot On Post Kaishu Sano
88' Mainz 05 Nelson Weiper 0.28 Open Play — Saved Shot Silvan Widmer
88' Mainz 05 Paul Nebel 0.44 Open Play Right Foot Goal —
95' Eintracht Frankfurt Ansgar Knauff 0.02 Open Play Right Foot Blocked Shot Elias Baum

Players

Eintracht Frankfurt

PlayerMinGA ShKPxGxA xGChain
Jonathan Burkardt FW 90 0 0 2 1 0.11 0.07 0.18
Arnaud Kalimuendo Muinga FWR 90 0 0 1 0 0.09 0.00 0.10
Arthur Theate DC 90 0 0 1 0 0.05 0.00 0.29
Aurèle Amenda DC 90 0 0 0 0 0.00 0.00 0.22
Michael Zetterer GK 90 0 0 0 0 0.00 0.00 0.09
Hugo Larsson MC 90 0 0 0 2 0.00 0.07 0.25
Farès Chaïbi MC 82 0 0 3 2 0.52 0.41 1.18
Ritsu Doan MC 82 0 0 1 2 0.07 0.51 0.67
Nnamdi Collins DR 67 0 0 1 0 0.36 0.00 0.18
Jean Négoce FWL 61 0 1 0 4 0.00 0.63 0.63
Nathaniel Brown DL 49 1 0 1 0 0.46 0.00 0.55
Ellyes Skhiri Sub 41 0 0 0 0 0.00 0.00 0.18
Ayoube Amaimouni-Echghouyab Sub 29 0 0 1 0 0.04 0.00 0.07
Elias Baum Sub 23 0 0 0 1 0.00 0.02 0.14
Ansgar Knauff Sub 8 0 0 1 0 0.02 0.00 0.02
Can Uzun Sub 8 0 0 0 0 0.00 0.00 0.00

Mainz 05

PlayerMinGA ShKPxGxA xGChain
Paul Nebel MC 90 2 0 3 0 0.62 0.00 0.62
Sheraldo Becker FW 90 0 1 3 2 0.57 0.18 0.75
Kaishu Sano MC 90 0 0 1 2 0.04 0.50 0.95
Silvan Widmer DMR 90 0 0 0 1 0.00 0.28 0.37
Stefan Posch DC 90 0 0 0 0 0.00 0.00 0.00
Dominik Kohr DC 90 0 0 0 0 0.00 0.00 0.00
Daniel Batz GK 90 0 0 0 0 0.00 0.00 0.00
Danny da Costa DC 90 0 0 0 0 0.00 0.00 0.00
Jae-Sung Lee MC 84 0 0 0 2 0.00 0.11 0.14
Phillip Tietz FW 72 0 0 0 0 0.00 0.00 0.00
Philipp Mwene DML 72 0 0 0 0 0.00 0.00 0.06
Nelson Weiper Sub 18 0 0 1 0 0.28 0.00 0.28
Nikolas Veratschnig Sub 18 0 0 0 0 0.00 0.00 0.00
Sota Kawasaki Sub 6 0 0 0 0 0.00 0.00 0.00
Lennard Maloney Sub 1 0 0 0 0 0.00 0.00 0.00
betaider.com

Sport

Football sections

Preferences

Appearance
Aider Reading the Football model · online
Open the Radar
Bet slip
Open full page
↑↓ to move ↵ to open esc to close See all results

On this page

Match

What this page is for

One fixture in full. The model's probability for every market it prices, the prices stored against them, the teams expected to feature, and for a match already played, the shot map and the xG timeline.

How to read the shot map

Every shot is placed where it was taken and sized by its chance of being scored. A cluster of small marks from distance and a clean sheet is a side that was busy without ever threatening; two big marks and a defeat is a side that had the better of it and lost anyway. Both happen constantly, and both are invisible in the score.

How to read the xG timeline

The steps are chances as they arrived, so the shape shows who was on top and when. A flat line that jumps once near the end is a smash and grab.

Things to watch

The stored prediction is the one made before the match, kept deliberately so it can be judged afterwards. It is not re-fitted with hindsight.

Press esc to close Read the full guide