Eintracht Frankfurt v Union Berlin — Prediction, Odds & Stats
Sunday 9 March 2025 · GER-Bundesliga · 2425
Bundesliga
xG Prediction generated
AI prediction
ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.Probabilities, not certainties. How they are made: the methodology.
Was this pick made in advance?
-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
Eintracht Frankfurt have scored 16 from 15.3 expected and conceded 19 from 18.7 — both ends in line with the chances, so the recent record is a fair reflection.
Union Berlin have scored 16 from 14.7 expected and conceded 23 from 23.0 — both ends in line with the chances, so the recent record is a fair reflection.
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
| Model | Home / Draw / Away | Expected goals | Likeliest score | O2.5 | BTTS | Outcome |
|---|---|---|---|---|---|---|
| ai-blend-oos | 2.15–0.98 | 0% | 0% | 0% | 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
Expected goals by minute
Reading the shot map
Shot map
Every shot
| Min | Team | Player | xG | Situation | Body part | Result | Assisted by |
|---|---|---|---|---|---|---|---|
| 12' |
|
Michy Batshuayi | 0.36 | Open Play | Right Foot | Goal | — |
| 12' |
|
Rasmus Kristensen | 0.03 | Open Play | Left Foot | Blocked Shot | Can Uzun |
| 18' |
|
Andrej Ilic | 0.04 | Open Play | Left Foot | Missed Shot | Josip Juranovic |
| 20' |
|
Tim Skarke | 0.03 | Open Play | Right Foot | Saved Shot | Rani Khedira |
| 24' |
|
Farès Chaïbi | 0.04 | Open Play | — | Saved Shot | Jean Négoce |
| 25' |
|
Can Uzun | 0.02 | From Corner | Right Foot | Blocked Shot | — |
| 25' |
|
Jean Négoce | 0.03 | From Corner | Left Foot | Blocked Shot | — |
| 38' |
|
Michy Batshuayi | 0.08 | Open Play | — | Blocked Shot | Nathaniel Brown |
| 41' |
|
Farès Chaïbi | 0.08 | Open Play | Right Foot | Missed Shot | Can Uzun |
| 44' |
|
Janik Haberer | 0.04 | Open Play | — | Missed Shot | — |
| 47' |
|
Rasmus Kristensen | 0.11 | Open Play | Right Foot | Blocked Shot | — |
| 55' |
|
Andrej Ilic | 0.09 | Set Piece | — | Missed Shot | Christopher Trimmel |
| 61' |
|
Andrej Ilic | 0.08 | Open Play | Right Foot | Blocked Shot | Janik Haberer |
| 61' |
|
Leopold Querfeld | 0.08 | From Corner | — | Goal | Christopher Trimmel |
| 62' |
|
Hugo Larsson | 0.30 | Open Play | Right Foot | Missed Shot | Mario Götze |
| 64' |
|
Leopold Querfeld | 0.09 | From Corner | — | Missed Shot | Christopher Trimmel |
| 66' |
|
Hugo Ekitike | 0.06 | Open Play | Right Foot | Blocked Shot | Mario Götze |
| 66' |
|
Rasmus Kristensen | 0.03 | Open Play | Right Foot | Blocked Shot | Mario Götze |
| 67' |
|
Benedict Hollerbach | 0.10 | Open Play | Left Foot | Blocked Shot | Andras Schafer |
| 69' |
|
Josip Juranovic | 0.05 | Open Play | Right Foot | Missed Shot | Benedict Hollerbach |
| 72' |
|
Diogo Leite | 0.07 | From Corner | — | Missed Shot | Josip Juranovic |
| 77' |
|
Woo-Yeong Jeong | 0.07 | Open Play | Left Foot | Goal | — |
| 90' |
|
Sepe Elye Wahi | 0.02 | Open Play | Right Foot | Blocked Shot | Mario Götze |
| 92' |
|
Sepe Elye Wahi | 0.08 | Open Play | — | Blocked Shot | Ansgar Knauff |
| 94' |
|
Hugo Ekitike | 0.76 | Right Foot | Saved Shot | — |
Players
Eintracht Frankfurt
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Rasmus Kristensen DR | 90 | 0 | 0 | 3 | 0 | 0.18 | 0.00 | 0.60 |
| Oscar Højlund DMC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.42 |
| Nnamdi Collins DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.33 |
| Nathaniel Brown DL | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.08 | 0.31 |
| Kevin Trapp GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.10 |
| Tuta DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.44 |
| Hugo Larsson DMC | 80 | 0 | 0 | 1 | 0 | 0.30 | 0.00 | 0.61 |
| Can Uzun AMC | 80 | 0 | 0 | 1 | 2 | 0.02 | 0.12 | 0.23 |
| Farès Chaïbi AML | 72 | 0 | 0 | 2 | 0 | 0.13 | 0.00 | 0.35 |
| Michy Batshuayi FW | 61 | 1 | 0 | 2 | 0 | 0.44 | 0.00 | 0.56 |
| Jean Négoce AMR | 61 | 0 | 0 | 1 | 1 | 0.03 | 0.04 | 0.15 |
| Hugo Ekitike Sub | 29 | 0 | 0 | 2 | 0 | 0.82 | 0.00 | 0.36 |
| Mario Götze Sub | 29 | 0 | 0 | 0 | 4 | 0.00 | 0.41 | 0.49 |
| Sepe Elye Wahi Sub | 18 | 0 | 0 | 2 | 0 | 0.10 | 0.00 | 0.10 |
| Ansgar Knauff Sub | 10 | 0 | 0 | 0 | 1 | 0.00 | 0.08 | 0.10 |
| Eric Junior Dina Ebimbe Sub | 10 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
Union Berlin
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Leopold Querfeld DC | 90 | 1 | 0 | 2 | 0 | 0.17 | 0.00 | 0.11 |
| Diogo Leite DC | 90 | 0 | 0 | 1 | 0 | 0.07 | 0.00 | 0.20 |
| Josip Juranovic DML | 90 | 0 | 0 | 1 | 2 | 0.05 | 0.11 | 0.21 |
| Rani Khedira MC | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.03 |
| Danilho Doekhi DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.03 |
| Frederik Rönnow GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.03 |
| Andrej Ilic FW | 85 | 0 | 0 | 3 | 0 | 0.21 | 0.00 | 0.15 |
| Janik Haberer MC | 72 | 0 | 0 | 1 | 1 | 0.04 | 0.08 | 0.24 |
| Christopher Trimmel DMR | 72 | 0 | 1 | 0 | 3 | 0.00 | 0.26 | 0.03 |
| Tim Skarke FW | 56 | 0 | 0 | 1 | 0 | 0.03 | 0.00 | 0.07 |
| Lucas Tousart MC | 56 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Benedict Hollerbach Sub | 34 | 0 | 0 | 1 | 1 | 0.10 | 0.05 | 0.15 |
| Andras Schafer Sub | 34 | 0 | 0 | 0 | 1 | 0.00 | 0.10 | 0.10 |
| Woo-Yeong Jeong Sub | 18 | 1 | 0 | 1 | 0 | 0.07 | 0.00 | 0.07 |
| Tom Rothe Sub | 18 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Marin Ljubicic Sub | 5 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |