Morne Steyn kicked the Bulls to a 32-30 Super Rugby victory over the Crusaders at Loftus Versfeld in Pretoria on Saturday.
The Crusaders outscored the Bulls by three tries to two but Morne Steyn kicked six penalties compared to the Crusaders two which proved the difference.
The Crusaders led 9-13 at half time but their discipline let them down in the second half and they allowed the Bulls to overtake them on the scoreboard.
The Crusaders mounted a late comeback and came within two points of the Bulls but eventually time ran out for the visitors.
The visitors dominated the opening minutes of the game as they tested the Bulls' defence from the outset.
They were soon awarded for their positive play, with captain Kieran Read crossing the tryline after he received the ball at pace from Andy Ellis, with Dan Carter converting.
The home side's defence was at sixes and sevens as the Crusaders got over the gain line with ease.
Carter added another three points in the 12th minute to give them an early 10-0 advantage, and they enjoyed the majority of the possession and territory to put themselves in the driving seat.
The Bulls got onto the scoreboard for the first time in the 17th minute when flyhalf Morne Steyn succeeded with a penalty conversion.
The hosts once again relied heavily on their kick-and-chase game in the first half but it was used with little effect as the kicking from Steyn and Francois Hougaard was inaccurate.
While Hougaard's tactical kicking did not quite hit the mark, he was in rampant form in other areas of play.
He got the Bulls out of a few sticky situations with great cross-cover defence, snatching rogue balls close to his line from in front of the charging Crusaders.
The visitors added three more points to their telly thanks to Carter, who succeeded with a drop goal 25 minutes into the match.
In the final play of the first hallf, Steyn converted his third penalty of the evening as the Crusaders took a 13-9 lead into the break.
The Bulls had not fired on all cylinders in the first period, but in the second, they shifted up a gear.
Steyn opened the second half with a penalty conversion, narrowing the gap to 13-12.
The Bulls finally took the lead for the first time in the match when prop Dean Greyling sold a dummy to Crusaders fullback Israel Dagg, then made a beeline to the tryline to score, with Steyn converting to give them a 19-13 advantage.
The Crusaders' Tom Taylor then recovered three points with a penalty conversion in the 47th minute, but the Bulls struck back with two consecutive penalties from Steyn to extend their lead to nine points again with 20 minutes left in the match.
With little over 10 minutes remaining, the Bulls struck another blow with Wyand Olivier scoring a five-pointer, and Steyn converted to take them to an almost unassailable 32-16 lead.
The Crusaders, however, came back with two converted tries in the final moments of the match to bring them within two points of the Bulls .
They set the match up for a dramatic finish, with the visitors desperately attacking the gain line, but the Bulls held on to keep themselves among the leaders in the title race.
Final Score Bulls 32 (9) Crusaders 30 (13).
Tries - D. Greyling, W. Olivier
Pen - M. Steyn 6
Tries - K. Read, Z. Guildford, T. Marshall
Pen - D. Carter, T. Taylor
Con - D. Carter 3
Drop - D. Carter
Referee: Jaco Peyper
Assistant Ref 1: Pro Legoete
Assistant Ref 2: Tiaan Jonker
TMO: Gerrie Coetzee
15. Zane Kirchner, 14. Akona Ndungane, 13. Johann Sadie, 12. Wynand Olivier, 11. Bjorn Basson, 10. Morne Steyn, 9. Francois Hougaard, 8. Pierre Spies (c), 7. Jacques Potgieter, 6.CJ Stander, 5. Juandre Kruger, 4. Flip van der Merwe, 3. Werner Kruger, 2. Chiliboy Ralepelle, 1. Dean Greyling.
Replacements: 16. Bongi Mbonambi, 17. Frik Kirsten, 18. Wilhelm Steenkamp, 19. Arno Botha, 20. Jano Vermaak, 21. Louis Fouche, 22. JJ Engelbrecht.
15. Israel Dagg, 14. Sean Maitland, 13. Robbie Fruean, 12. Ryan Crotty, 11. Zac Guildford, 10. Dan Carter, 9. Andy Ellis, 8. Kieran Read (c), 7. Matt Todd, 6. George Whitelock, 5. Sam Whitelock, 4. Luke Romano, 3. Owen Franks, 2. Corey Flynn, 1. Wyatt Crockett.
Replacements: 16. Quentin MacDonald, 17. Ben Franks, 18. Tom Donnelly, 19. Luke Whitelock, 20. Willi Heinz, 21. Tom Taylor, 22.Tom Marshall.