St. Pauli v Bochum — Prediction, Odds & Stats
Saturday 17 May 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
St. Pauli are finishing sharply below their chances — 4.7 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding fewer than expected — 2.8 goals saved beyond what the chances suggest.
Bochum are finishing below their chances — 2.5 goals fewer than expected across 10 matches, despite creating the openings.
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 | 1.29–0.93 | 0% | 0% | 0% | Home ✗ | |
| dc-xg-oos | 1.71–1.17 | 1-1 11% | 55% | 56% | 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 |
|---|---|---|---|---|---|---|---|
| 4' |
|
Hauke Wahl | 0.12 | From Corner | — | Missed Shot | Oladapo Afolayan |
| 6' |
|
Oladapo Afolayan | 0.09 | Open Play | Left Foot | Blocked Shot | Philipp Treu |
| 7' |
|
Felix Passlack | 0.04 | Open Play | Right Foot | Saved Shot | Myron Boadu |
| 7' |
|
Morgan Guilavogui | 0.07 | From Corner | — | Missed Shot | Danel Sinani |
| 9' |
|
Myron Boadu | 0.36 | Open Play | Left Foot | Goal | — |
| 13' |
|
Maximilian Wittek | 0.03 | Open Play | Right Foot | Saved Shot | Ibrahima Sissoko |
| 16' |
|
Mats Pannewig | 0.03 | Open Play | Left Foot | Saved Shot | Giorgos Masouras |
| 19' |
|
Morgan Guilavogui | 0.39 | Set Piece | — | Saved Shot | Danel Sinani |
| 21' |
|
Oladapo Afolayan | 0.02 | Open Play | Right Foot | Missed Shot | — |
| 24' |
|
Felix Passlack | 0.06 | Open Play | Right Foot | Saved Shot | Matús Bero |
| 28' |
|
Oladapo Afolayan | 0.02 | Open Play | Right Foot | Saved Shot | Carlo Boukhalfa |
| 38' |
|
David Nemeth | 0.05 | From Corner | — | Missed Shot | Danel Sinani |
| 42' |
|
Danel Sinani | 0.03 | Open Play | Left Foot | Blocked Shot | Carlo Boukhalfa |
| 58' |
|
Danel Sinani | 0.03 | Open Play | Left Foot | Blocked Shot | — |
| 65' |
|
Myron Boadu | 0.66 | Open Play | Right Foot | Goal | Felix Passlack |
| 79' |
|
Anthony Losilla | 0.02 | Open Play | Right Foot | Missed Shot | Moritz Broschinski |
| 85' |
|
Adam Dzwigala | 0.01 | Open Play | Right Foot | Missed Shot | Noah Weißhaupt |
| 87' |
|
Matús Bero | 0.13 | Open Play | — | Missed Shot | Maximilian Wittek |
| 88' |
|
Moritz Broschinski | 0.03 | Open Play | Right Foot | Missed Shot | — |
Players
Bochum
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Matús Bero MC | 90 | 0 | 0 | 1 | 1 | 0.13 | 0.06 | 0.22 |
| Felix Passlack DMR | 90 | 0 | 1 | 2 | 1 | 0.10 | 0.66 | 0.75 |
| Maximilian Wittek DML | 90 | 0 | 0 | 1 | 1 | 0.03 | 0.13 | 0.25 |
| Tim Oermann DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.03 |
| Timo Horn GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.06 |
| Bernardo DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Jakov Medic DC | 87 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.06 |
| Myron Boadu FW | 80 | 2 | 0 | 2 | 1 | 1.01 | 0.04 | 1.14 |
| Mats Pannewig MC | 80 | 0 | 0 | 1 | 0 | 0.03 | 0.00 | 0.06 |
| Giorgos Masouras FW | 80 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.72 |
| Ibrahima Sissoko MC | 60 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.06 |
| Anthony Losilla Sub | 30 | 0 | 0 | 1 | 0 | 0.02 | 0.00 | 0.02 |
| Moritz Broschinski Sub | 10 | 0 | 0 | 1 | 1 | 0.03 | 0.02 | 0.04 |
| Koji Miyoshi Sub | 10 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.13 |
| Dani de Wit Sub | 10 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.14 |
| Kacper Koscierski Sub | 3 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
St. Pauli
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Hauke Wahl DC | 90 | 0 | 0 | 1 | 0 | 0.12 | 0.00 | 0.09 |
| David Nemeth DC | 90 | 0 | 0 | 1 | 0 | 0.05 | 0.00 | 0.01 |
| Nikola Vasilj GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.09 |
| Eric Smith MC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.03 |
| Carlo Boukhalfa MC | 90 | 0 | 0 | 0 | 2 | 0.00 | 0.04 | 0.04 |
| Philipp Treu DML | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.09 | 0.09 |
| Morgan Guilavogui FWR | 79 | 0 | 0 | 2 | 0 | 0.45 | 0.00 | 0.11 |
| Danel Sinani FW | 67 | 0 | 0 | 2 | 3 | 0.05 | 0.50 | 0.14 |
| Manolis Saliakas DMR | 67 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.02 |
| Lars Ritzka Sub | 58 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Oladapo Afolayan FWL | 49 | 0 | 0 | 3 | 1 | 0.12 | 0.12 | 0.12 |
| Noah Weißhaupt Sub | 41 | 0 | 0 | 0 | 1 | 0.00 | 0.01 | 0.01 |
| Siebe Van der Heyden DC | 32 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.09 |
| Adam Dzwigala Sub | 23 | 0 | 0 | 1 | 0 | 0.01 | 0.00 | 0.01 |
| Johannes Eggestein Sub | 23 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Scott Banks Sub | 11 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.01 |