xgEdge

Bundesliga per 90 stats 2026/2027

Every Bundesliga player's season divided by the minutes he played, which is the only basis a regular and a substitute can be compared on.

Ranked from 270 minutes played.

Michael Olise leads on expected goal involvement per 90 minutes with 1.33, over 303 minutes played. That is 0.42 clear of Harry Kane.

Showing 1–50 of 136 players

Bundesliga per 90 stats 2026/2027
# Player Club Min G/90 A/90 xG/90 xA/90 xGI/90
1 Michael Olise FC Bayern München 303 1.19 0.30 0.70 0.63 1.33
2 Harry Kane FC Bayern München 296 0.91 0.30 0.65 0.26 0.91
3 Younes Ebnoutalib Eintracht Frankfurt 281 1.28 0.32 0.62 0.28 0.90
4 Can Uzun Eintracht Frankfurt 324 0.56 0.00 0.57 0.29 0.86
5 Sheraldo Becker 1. FSV Mainz 05 286 0.63 0.94 0.39 0.46 0.85
6 Phillip Tietz 1. FSV Mainz 05 360 1.00 0.00 0.63 0.16 0.78
6 Ibrahim Maza Bayer 04 Leverkusen 360 0.25 0.25 0.29 0.49 0.78
8 Adam Hložek TSG Hoffenheim 270 0.67 0.00 0.64 0.13 0.77
9 Michael Gregoritsch FC Augsburg 293 0.92 0.00 0.62 0.11 0.72
9 Adil Aouchiche FC Schalke 04 329 0.27 0.00 0.32 0.40 0.72
11 Serhou Guirassy Borussia Dortmund 341 0.53 0.53 0.55 0.14 0.69
12 Nadiem Amiri 1. FSV Mainz 05 354 0.00 0.00 0.31 0.37 0.68
13 Yuito Suzuki SC Freiburg 323 1.11 0.00 0.61 0.05 0.65
14 Jonathan Burkardt Eintracht Frankfurt 319 0.85 0.28 0.41 0.21 0.62
15 Aleksandar Pavlović FC Bayern München 311 0.29 0.29 0.38 0.24 0.61
15 Igor Matanović SC Freiburg 324 0.83 0.28 0.44 0.18 0.61
17 Miguel Gutiérrez Bayer 04 Leverkusen 353 0.25 0.76 0.06 0.55 0.60
18 Joshua Kimmich FC Bayern München 295 0.00 0.61 0.01 0.52 0.53
19 Alphonso Davies FC Bayern München 272 0.00 0.66 0.04 0.46 0.49
19 Maximilian Mittelstädt VfB Stuttgart 348 0.26 0.26 0.08 0.41 0.49
21 Marius Wolf FC Augsburg 312 0.00 0.00 0.05 0.44 0.48
21 Willi Orbán RB Leipzig 360 0.25 0.00 0.46 0.03 0.48
21 Josha Vagnoman VfB Stuttgart 351 0.51 0.26 0.23 0.25 0.48
21 Anthony Caci 1. FSV Mainz 05 281 0.00 0.32 0.12 0.35 0.48
21 Robin Fellhauer FC Augsburg 304 0.59 0.00 0.41 0.07 0.48
26 Laurin Curda SC Paderborn 07 337 0.00 0.27 0.12 0.34 0.46
27 Hugo Bolin Borussia M'gladbach 309 0.58 0.00 0.31 0.13 0.45
28 David Raum RB Leipzig 360 0.00 0.00 0.03 0.40 0.43
29 Ezequiel Fernández Bayer 04 Leverkusen 274 0.33 0.00 0.22 0.20 0.42
29 Niclas Füllkrug SV Werder Bremen 306 0.88 0.00 0.29 0.13 0.42
31 Chuki SV Werder Bremen 353 0.00 0.51 0.13 0.28 0.41
32 Ezechiel Banzuzi RB Leipzig 330 0.00 0.27 0.34 0.06 0.40
32 Jan-Niklas Beste SC Freiburg 272 0.00 0.33 0.06 0.34 0.40
34 Lukas Petkov SV 07 Elversberg 353 0.25 0.25 0.13 0.26 0.39
35 Yannick Engelhardt SC Freiburg 352 0.51 0.00 0.35 0.03 0.38
36 Antonio Nusa RB Leipzig 342 0.53 0.53 0.11 0.26 0.37
36 Marco Grüll SV Werder Bremen 355 0.51 0.76 0.14 0.22 0.37
38 Derry Scherhant SC Freiburg 302 0.30 0.60 0.17 0.19 0.36
39 Vladimír Coufal TSG Hoffenheim 339 0.00 0.53 0.01 0.33 0.35
39 Jarell Quansah Bayer 04 Leverkusen 278 0.00 0.32 0.06 0.29 0.35
39 Phillipp Mwene 1. FSV Mainz 05 344 0.26 0.26 0.28 0.07 0.35
42 Adam Daghim TSG Hoffenheim 347 0.52 0.52 0.09 0.22 0.31
42 Aleix García Bayer 04 Leverkusen 360 0.00 0.00 0.08 0.23 0.31
42 Dayot Upamecano FC Bayern München 315 0.29 0.00 0.14 0.17 0.31
45 Maximilian Eggestein SC Freiburg 360 0.50 0.00 0.24 0.06 0.30
45 David Mokwa SV 07 Elversberg 312 0.58 0.00 0.26 0.04 0.30
45 Kaishu Sano 1. FSV Mainz 05 358 0.00 0.50 0.04 0.26 0.30
48 Grischa Prömel VfB Stuttgart 354 0.25 0.00 0.22 0.06 0.28
48 Tom Alexander Rothe 1. FC Union Berlin 360 0.00 0.25 0.16 0.13 0.28
48 Afonso Moreira Bayer 04 Leverkusen 340 0.00 0.00 0.18 0.10 0.28
  • under 90 minutes
About these figures What each column counts, and which feed it was counted from. Show
Min
Minutes played.
G/90
Goals per 90 minutes played.
A/90
Assists per 90 minutes played.
xG/90
Expected goals per 90 minutes played.
xA/90
Expected assists per 90 minutes played.
xGI/90
Expected goal involvement per 90 minutes played.

Appearances, minutes, goals, assists and shots on this page are summed over the Bundesliga matches we hold per-player figures for — the same matches the expected figures are summed over, so the two can be read against each other.

Learn how xgEdge calculates these figures →