The Bulls held out the the Stormers at Loftus Versfeld on Saturday for a 14-10 victory in the last match for round four of the Super 14.
The Bulls have now not lost to the Stormers in Super Rugby for five years.
Neither team picked up a bonus point for four tries but the Stormers earned themselves a losing bonus point for finishing within seven points.
The first half was a bit of a dour affair as the half time score was 6-3 to the Bulls.
The Bulls retained their first place on the log while the Stormers still have only one win from their four outings to date.
The crowd highlight during the first half was when the main stand fans had some fun after young debutante Gerhard van den Heever pushed the controversial Luke Watson over the advertising signboards for the Capetonian to be loudly booed as he retaliated.
He further incited the crowd by gesticulating while his team mates battled elsewhere to keep the Bulls out.
For 22 minutes it was nothing more than aerial ping-pong, with Percy Montgomery missing one and then taking a real hanger, and Zane Kirchner also missing two before redeeming himself with two good catches.
The second half started a little more promising with the Bulls breaking away from their own half and then, after a few rucks in Stormers territory, taking it wide for Bulls centre Wynand Olivier (pictured) to score in the 47th minute.
Very little rugby was played in the first half, and except for a good break by Olivier and two storming runs by Stormers' Gcobani Bobo, little went on to excite what was said to be a full house crowd.
Morne Steyn's kicks were slightly more effective than those of Willem de Waal, putting more pressure on the Stormers back three than the other way around.
But it remained unimpressive. The Stormers, with their kicking, effectively kept the fearsome Bulls pack from making contact.
They scrummed well, took two lineouts, with the Bulls also knocking one and one skew put in. When the Bulls at last, after 24 minutes, rolled the Stormers back in a sequence of rucks, the visitors transgressed again.
Although nought came from referee Craig Joubert's earlier general warning to the Stormers to stop infringing, a penalty broke the deadlock with Steyn converting from right in front (3-0).
The unimaginative rugby was carried on until a drop kick with plenty of time from De Waal (3-3) after 32 minutes.
Schalk Brits was - at last, after a Stormers team warning 12 minutes earlier - yellow carded for a ruck infringement after 36 minutes and Steyn obliged to make it 6-3 in a first half both teams and especially the packed stadium would prefer to forget.
Bulls captain Victor Matfield came on for Danie Rossouw after the break. Six minutes later the first real run of the game and the first try by Olivier followed (11-3).
The Bulls were now playing some decent rugby in patches, and young Van den Heever had a good run.
Then Olivier, who was having a storming game, took a few tacklers to the ground with him and Steyn slotted a drop from the ruck ball (14-3). The Bulls scrum was also in command after the break.
Matfield tried to emulate fellow Springbok lock Andries Bekker who was very, very seldom doing anything effective to assist his pack when, with Van den Heever on the overlap, he again used a grubber - something which is becoming frustratingly more frequent from the classy lock.
This time it went into the in-goal area to squander a certain Bulls try. Veteran AJ Venter was, quite candidly, a far better bet for the Stormers than his present Bok team mate Bekker whose only involvement in the tight-loose was when he was tackled.
Deon Fourie scored for the Stormers after a short period of attack and with Peter Grant's conversion, the game was on with the Bulls leading 14-10.
The Stormers now looked a better side on attack with Grant in the place of De Waal and played the attacking rugby that their classy backs warrant.
But with a lack of numbers to the breakdown the Stormers were starved of enough good possession and Watson fought a lone battle.
It was frustrating, it was close on the scoreboard, and it was a match which did not do much for either side's confidence with the big haul overseas still ahead.
Tries -Wynand Olivier
Penalties -Morne Steyn 2
Drop Goals -Morne Steyn
Tries -Deon Fourie
Conversions -Peter Grant
Drop Goals -Willem De Waal
Cards - Yellow (36) Schalk Brits
Kick off: Saturday 7 March, 5pm
Referee: Craig Joubert (SA)
Ass. Refs: Mark Lawrence (SA), Sindile Mayende (SA)
TMO: Johann Meuwesen (SA)
Assessor: Arrie Schoonwinkel
Zane Kirchner; Akona Ndungane, JP Nel, Wynand Olivier, Gerhard van den Heever; Morné Steyn, Fourie du Preez (capt.); Pierre Spies, Pedrie Wannenburg, Deon Stegmann, Danie Rossouw, Bakkies Botha, Werner Kruger, Chiliboy Ralepelle, Gurthrö Steenkamp.
Replacements: Derick Kuün, Rayno Gerber, Victor Matfield, Jacques Burger, Heini Adams, Burton Francis, Jaco Pretorius.
Percy Montgomery, Tonderai Chavhanga, Gcobani Bobo, Jean De Villiers , (capt.), Nick Koster, Willem De Waal, Ricky Januarie, Luke Watson, Duane Vermeulen, Schalk Burger, Andries Bekker, AJ Venter, Brian Mujati, Schalk Brits, Wicus Blaauw.