First-half goals from Emil Forsberg and an own goal from Dominic Maroh gave the hosts the advantage in a half that they totally dominated.
Yuya Osako halved the advantage just after half-time but Timo Werner scored the Bulls third goal to end the game as a contest and give them a vital three points in the race for a Uefa Champions League place.
Forsberg capitalised on a Kessler mistake to give the Bulls an early lead
The game started as expected with the home side having all of the ball, pressing forward looking to get the opening goal and that is exactly what they got early on.
The goal itself though came from a mistake from Thomas Kessler. The goalkeeper's kick went straight to Werner, who headed the ball into the path of Forsberg, who made no mistake by placing the ball into the net just five minutes into the game.
From there, their really was only one side who were really up for the game as Werner tested Kessler with a long range shot which the keeper did well to keep it out of the net but conceded a corner.
The corner itself almost lead to a goal as Marcel Halstenberg's header came back off the bar and then Werner saw his header well saved by Kessler on the line, who was doing his best in goal after the early mistake.
Maroh put the ball into his own net to put the hosts further in front
Kessler though was finally beaten for the second time just after the half hour mark when Naby Keita's cross into the box was turned into his own net by Maroh, who had a shocker of a first half in truth.
After getting the second goal, the home side took their foot off the pedal for the remainder of the half, but the visitors didn't threaten whatsoever and made it very easy for the hosts to play against them and that is one thing that had to change in the second half or the scoreline was only going to get even more embarrassing.
To be fair to the visitors though they improved massively at the start of the second half and they managed to get a goal back eight minutes into the second half.
Osako pulled a goal back for the visitors
A well-worked move from the visitors ended with a good cross from Paweł Olkowski being turned into the net by Osako to get them right back in the game.
From there, their confidence great as they continued to push forward but some good defending from the home side prevented them from getting back on level terms.
Werner netted the hosts third goal to end the game a contest
All of a sudden then, a long ball forward from Keita, found Werner, who ran into the box and smashed the ball into the back of the net to give the home side their two goal advantage back.
They almost got a fourth soon after when Marcel Sabitzer found himself in space in the box from a free-kick but his goalbound header was brilliantly saved by Kessler.
After this chance the hosts kept the ball well to see the game out comfortably as the visitors just couldn't create enough chances to get back in the game as the Bulls got the vital three points.