Champions Bayern Munich stumbled to a goalless draw at RB Leipzig on Saturday, missing their chance to seal the Bundesliga title as Borussia Dortmund kept their hopes alive and closed to within two points with one game left.
Bayern, who needed a win to make sure of a record-extending seventh consecutive league title, are on 75 points and will now face a final day examination against Eintracht Frankfurt next week.
Dortmund, who beat Fortuna Duesseldorf 3-2, are on 73 and face Borussia Moenchengladbach next week.
Leipzig are third on 66 and have secured their Champions League spot for next season. "We want to win this thing next week," Bayern's Thomas Muller said. "We have battled back from nine points behind [late last year]. We are very greedy."
The Bavarians missed several good chances with Serge Gnabry and Robert Lewandowski failing to hit the target and also had a Leon Goretzka effort in the second half ruled out after video review.
They face Leipzig again in the German Cup final on May 25.
It was an even more nervous affair at Dortmund, where goals from Christian Pulisic, Thomas Delaney and Mario Gotze eventually sealed a win for the title contenders.
The hosts suffered with a blunder from keeper Marwin Hitz that allowed Duesseldorf back into the game at 1-1 before the hosts then had to sweat it out after a Duesseldorf goal in stoppage time reduced the deficit to 3-2.
Hitz, replacing injured Roman Buerki, also brought down Dodi Lukebakio for a second-half penalty which the forward fired wide.
Hanover and Nuremberg were relegated while Stuttgart beat Wolfsburg 3-0 to hold on to 16th place and will go into a relegation/promotion playoff with the second division's third-placed team.