Winger Bjorn Basson scored a late try and flyhalf Morne Steyn kicked 15 points to lead the Bulls to a 30-23 win over the Lions in an all-South African Super rugby match on Saturday.
The champions, who stuttered in home games against the Highlanders and Stormers in recent weeks, had Basson and Steyn to thank for getting them back to winning ways.
Steyn kicked three conversions and three penalties as the Bulls completed home-and-away victories over their arch-rivals, who scored two late tries to grab a bonus point.
"The guys showed great character out there," said Bulls vice-captain Fourie du Preez.
The home side looked to be cruising at 23-9 in the 74th minute but three tries -- two by the Lions -- provided a nailbiting climax.
In the first half both teams passed up kicks at goal in favour of setting up try-scoring opportunities only to be thwarted by a series of errors.
The Lions, who broke a 17-match losing streak with victory over the Cheetahs two weeks ago, had to rely on 20-year-old flyhalf Elton Jantjies for their first-half points as he booted two long-range penalties.
The Bulls, who opened their title defence with a 24-20 win at the Lions last month, were kept scoreless until the 25th minute when flanker Dewald Potgieter crashed over following a turnover deep in their own territory.
Steyn and Jantjies then traded penalties either side of halftime to give the Bulls a seven-point lead.
They then appeared to seal victory on the hour when replacement hooker Gary Botha crashed over and Steyn converted to open a 14-point advantage.
But any supporters who left early missed a rousing final seven minutes as winger Deon van Rensburg and skipper Franco van der Merwe twice brought the Lions within seven points.
Basson, whose error helped to give the Stormers their winning try last week, made amends by diving over with four minutes left to give his team breathing space.
"It's not good enough," said Van der Merwe. "We have to learn from this."