Instead, it was the second from bottom Cheetahs who came to Pretoria with real purpose and showing a much better offering than their lowly log position indicated.
Scores were tied at 24-24 at the break, but the Bloem visitors crucially lost focus in the early part of the second half, conceding a rash of penalties and a yellow card that extended their journey to a bridge too far.
The Bulls had a home semi-final guaranteed and at times played some distracted rugby, with their minds seemingly on next weekend, and almost paid the price.
It did not start well for the home side, with Kurt-Lee Arendse an early casualty after he charged down a kick which hit him straight in the face. This brought Ruan Combrinck into the fray, with the former Springbok wing coming off the bench three minutes after kick-off.
The Bulls were on the scoreboard equally early in the match. Lionel Mapoe ran a great line from a line-out and his inside pass found Marco Jansen van Vuren. The scrumhalf ran all of 30 meters to score under the poles. Johan Goosen converted, and the Bulls were out of the blocks.
The Bloemfonteiners responded with a solid drive to the line, but the TMO ruled them inches short of the line. From the resulting scrum, the Cheetahs moved the ball to the left and when stopped, Ruan Pienaar found no 8 Mihlali Mosi who ran in between two defenders to score.
Pienaar converted from an angle and after 10 minutes, scores were even.
The Cheetahs took the lead three minutes later with some industrious play by fullback Cohen Jasper. From a third phase move, he saw there was no Bulls sweeper in place and kicked ahead for Duncan Saal to chase. The wing made no mistake and scored and when Pienaar slotted his second conversion, the visitors were ahead.
That was not for long though. A powerful Bulls scrum had the Cheetahs back-peddling and Elrigh Louw ceased the opportunity. The no 8 charged from the back of the scrum and bulldozed his way over the line. Goosen converted to level matters again.
The Cheetahs took the lead for the second time in the match after 22 minutes when referee AJ Jacobs handed a penalty try to the Bloem side. He ruled Arno Botha to be coming in from the side to stop an attacking maul drive illegally. The flank was also sent to spend 10 minutes in the naught chair.
Goosen kicked a 26th minute penalty to cut the lead to four.
The Cheetahs lost an attacking line-out throw five meters from the Bulls line with an errand throw but continued to have the upper hand in the remaining part of the half.
Two consecutive high tackles by the Cheetahs proved costly though. The Bulls worked their way upfield and from the second kick to touch Jan-Hendrik Wessels dotted down at the back of a magnificent maul. The lead was back in blue, but the last play of the half belonged to Ruan Pienaar, who kicked a penalty goal to level scores again at halftime.
The second half continued in that vein. Both sides had early scoring opportunities, but ill-discipline was forcing the visitors on the back foot.
They conceded a yellow card seven minutes in when Victor Sekekete collapsed a driving maul and from the resulting play and their pack a man down, the Cheetahs could only watch as Wessels flopped over the line behind a driving pack. That try secured the bonus point for the top of the log side.
It also saw the re-introduction of Jacques du Plessis, who has rejoined his old team from Montpellier and showed good appetite for hard work.
Pienaar had a long-range effort bouncing off the post and another chance gone, but the Cheetahs kept on coming.
The Bulls showed why they are rated the best team in the country with their fifth try. A good maul gave Keegan Johannes the opportunity to release Madosh Tambwe on the wing and he gladly accepted with his first try of the match. Goosen added the extras and after an hour of play, the lead stretched to 36-24.
A second penalty by Goosen extended the lead to 39-24 as the home side started to close shop. They dropped their concentration for a second and that cost them.
The Cheetahs had one chance and they took it when Cohen Jasper was at the end of a well-executed move by his inside backs. The fullback joined the line late and scored under the sticks to earn his team a try-scoring bonus point and a flicker of hope for a late comeback.
That flicker turned into a proper inferno when Malcolm Jaer scored after beating two defenders with a beautiful run to the corner. Combrinck was one of the beaten defenders and his head high effort saw him see yellow and his defence under duress of having a man less to cover the open spaces the Cheetahs found late in the half.
With three points the difference and four minutes left, it was becoming a real thriller and while the Cheetahs could not land the knock-out punch, left with heads held high with a solid end of season display.
Vodacom Bulls 39 (24)- Tries: Marco Jansen van Vuren, Elrigh Louw, Jan-Hendrik Wessels (2), Madosh Tambwe. Conversions: Johan Goosen (4). Penalty goals: Goosen (2)
Toyota Cheetahs 36 (24) - Tries: Mihlali Mosi, Duncan Saal, Penalty Try, Cohen Jasper, Malcolm Jaer. Conversions: Ruan Pienaar (3). Penalty goal: Pienaar