Match ends, FC Bayern München 1, Eintracht Frankfurt 2.
Eintracht Frankfurt subjected Bayern Munich to a first league defeat at the Allianz Arena in 30 matches.
Filip Kostic struck seven minutes from time as Frankfurt secured a first win of the season and first at Bayern since 2000.
Leon Goretzka scored in the first half, but Frankfurt captain Martin Hinteregger quickly hit back.
Bayern, last beaten at home in November 2019, remain top of the Bundesliga, one point ahead of Borussia Dortmund.
They took the lead just before the half hour mark. Goretzka latched on to Robert Lewandowski's throw ball and steered in his first goal of the season.
Just two minutes later, Hinteregger was left unmarked in the box and powered a header past Manuel Neuer to restore parity.
Frankfurt goalkeeper Kevin Trapp made a superb save from a Lewandowski header 10 minutes after half-time. He then reacted well to save from Serge Gnabry and Leroy Sane, as the home side looked to increase their intensity.
After holding strong, Frankfurt broke through Kostic, who fired a shot past Neuer seven minutes from time - but Trapp was needed again to deny Goretzka in stoppage time.
- 4SüleSubstituted forSabitzerat 75'minutes
- 2UpamecanoBooked at 77mins
- 19DaviesBooked at 50mins
- 7GnabrySubstituted forMusialaat 70'minutes
- 10SanéSubstituted forChoupo-Motingat 81'minutes
- 35Silva MeloSubstituted forHrusticat 84'minutes
- 18TouréSubstituted forda Costaat 61'minutes
- 29LindstromSubstituted forHaugeat 61'minutesBooked at 78mins
- 19BorréSubstituted forLammersat 78'minutes
- 24da Costa
- 39Mendes Paciência
- Florian Badstübner
- Shots on Target
Second Half ends, FC Bayern München 1, Eintracht Frankfurt 2.
Corner, FC Bayern München. Conceded by Kristijan Jakic.
Corner, FC Bayern München. Conceded by Kevin Trapp.
Attempt saved. Leon Goretzka (FC Bayern München) left footed shot from outside the box is saved in the top right corner. Assisted by Thomas Müller.
Attempt missed. Leon Goretzka (FC Bayern München) right footed shot from the centre of the box is high and wide to the right. Assisted by Thomas Müller.
Alphonso Davies (FC Bayern München) wins a free kick on the left wing.
Foul by Sam Lammers (Eintracht Frankfurt).
Dangerous play by Eric Maxim Choupo-Moting (FC Bayern München).
Timothy Chandler (Eintracht Frankfurt) wins a free kick in the defensive half.
Substitution, Eintracht Frankfurt. Ajdin Hrustic replaces Tuta.
Goal! FC Bayern München 1, Eintracht Frankfurt 2. Filip Kostic (Eintracht Frankfurt) left footed shot from the left side of the box to the bottom right corner. Assisted by Djibril Sow.
Substitution, FC Bayern München. Eric Maxim Choupo-Moting replaces Leroy Sané.
Jens Petter Hauge (Eintracht Frankfurt) is shown the yellow card for a bad foul.
Leroy Sané (FC Bayern München) wins a free kick in the attacking half.
Foul by Jens Petter Hauge (Eintracht Frankfurt).
Substitution, Eintracht Frankfurt. Sam Lammers replaces Rafael Borré.
Dayot Upamecano (FC Bayern München) is shown the yellow card for a bad foul.
Foul by Dayot Upamecano (FC Bayern München).
Filip Kostic (Eintracht Frankfurt) wins a free kick on the left wing.
- What's the worst that could happen? Possibly everything! The Goes Wrong Show is streaming now
- The Office at 20: Ricky Gervais reveals behind-the-scenes facts and secrets of the comedy classic