Borussia Mönchengladbach 1–0 Borussia Dortmund
- Tabakovic 88'
3 May 2026
The match in data
Borussia Mönchengladbach got the better of Borussia Dortmund, 1–0, on 3 May 2026, on matchday 32 of the 2025-26 Bundesliga.
Player of the match: Jobe Bellingham (Borussia Dortmund), rated 71, thanks above all to 3 completed dribbles and 5 final-third passes. Bellingham produced 1.1 times as much as a midfielder typically does, at 0.4 times the cost.
It is their 2nd time as player of the match this season.
For Borussia Mönchengladbach, the highest-rated player was Franck Honorat, with 74.
Jobe Bellingham
Borussia Dortmund · 76'
Produced 1.09× and cost 0.38× their position's average
- 3 completed dribbles 4.0×
- 5 final-third passes 1.1×
- 53 passes 1.4×
- 1 time dribbled past 1.5×
- 3 misplaced passes 0.5×
Match ratings
Everyone who played, sorted by rating. No rating: goalkeepers and anyone who played under 20 minutes.
| Player | Position | Min | Rating |
|---|---|---|---|
| Franck Honorat | Forward | 90 | 74 |
| Hugo Bolin | Forward | 25 | 70 |
| Kevin Stöger | Midfielder | 70 | 62 |
| Giovanni Reyna | Midfielder | 20 | 56 |
| Haris Tabakovic | Forward | 90 | 55 |
| Fabio Chiarodia | Defender | 70 | 51 |
| Yannik Engelhardt | Midfielder | 90 | 46 |
| Rocco Reitz | Midfielder | 90 | 45 |
| Philipp Sander | Midfielder | 90 | 43 |
| Kevin Diks | Defender | 20 | 43 |
| Joe Scally | Defender | 90 | 41 |
| Nico Elvedi | Defender | 90 | 35 |
| Wael Mohya | Midfielder | 65 | 23 |
| Moritz Nicolas | Goalkeeper | 90 | no rating |
| Robin Hack | Forward | 1 | no rating |
| Shuto Machino | Forward | 1 | no rating |
| Player | Position | Min | Rating |
|---|---|---|---|
| Jobe Bellingham ★ | Midfielder | 76 | 71 |
| Marcel Sabitzer | Midfielder | 90 | 60 |
| Waldemar Anton | Defender | 90 | 60 |
| Serhou Guirassy | Forward | 76 | 57 |
| Daniel Svensson | Defender | 29 | 56 |
| Maximilian Beier | Forward | 61 | 49 |
| Nico Schlotterbeck | Defender | 90 | 43 |
| Samuele Inácio | Forward | 90 | 40 |
| Luca Reggiani | Defender | 90 | 38 |
| Julian Ryerson | Defender | 84 | 33 |
| Julian Brandt | Midfielder | 84 | 32 |
| Gregor Kobel | Goalkeeper | 90 | no rating |
| Fábio Silva | Forward | 14 | no rating |
| Salih Özcan | Midfielder | 14 | no rating |
| Carney Chukwuemeka | Midfielder | 6 | no rating |
| Yan Couto | Midfielder | 6 | no rating |
How is the rating calculated?
The rating measures a single match: what the player produced against what they cost, compared with the average for their position in that league and season, and adjusted by position (a 70 for a forward is as hard to get as a 70 for a defender). A normal match is around 50, 70 is already very good and only one in a hundred goes above 80. It is not the NVP, which ranks the whole season.