The Sunwolves recorded their first win of the season when they edged the Bulls 21-20 in a tense match in Tokyo on Saturday.
A 75th-minute penalty from replacement Yu Tamura proved to be the difference in a match where both teams scored two tries.
It was also the Bulls fifth loss in six games this season.
The struggling Sunwolves had looked like slipping to their sixth defeat in as many games after conceding a try to Travis Ismaiel after 64 minutes to leave the home side trailing by nine points and needing two scores.
But roared on by a Tokyo crowd, which kept up a cacophony of wolf howls throughout, Filo Tiatia's side hit back with just over 10 minutes left when Takaaki Nakazuru touched down.
Tamura converted to make it 20-18.
He then coolly kicked a penalty in the 74th minute that proved the game winner before the final buzzer triggered scenes of unbridled joy among the players and the team's long-suffering fans.
Man of the match: Some of the Bulls players showed some nice touches, but overall it was a disappointing display again. The award must go to one of the Sunwolves players for a passionate display and No.8 Rahboni Warren-Vosayaco embodied that.
Tries: Warren-Vosayaco, Nakazuru
Pens: Cripps 2, Tamura
Tries: Odendaal, Ismaiel
Cons: T Schoeman 2
Pens: T Schoeman 2
Yellow card: Jan Serfontein (Bulls, 68 - cynical play, slowing down play)
Sunwolves: 15 Kotaro Matsushima, 14 Takaaki Nakazuru, 13 Timothy Lafaele, 12 Derek Carpenter, 11 Kenki Fukuoka, 10 Hayden Cripps, 9 Fumiaki Tanaka, 8 Rahboni Warren-Vosayaco, 7 Shuhei Matsuhashi, 6 Yoshitaka Tokunaga, 5 Uwe Helu, 4 Liaki Moli, 3 Yasuo Yamaji, 2 Yusuke Niwai, 1 Koki Yamamoto.
Replacements: 16 Takeshi, 17 Keita Inagaki, 18 Heiichiro Ito, 19 Sam Wykes, 20 Shunsuke Nunomaki, 21 Yuki Yatomi, 22 Yu Tamura, 23 Ryohei Yamanaka.
Bulls: 15 Warrick Gelant, 14 Travis Ismaiel, 13 Jan Serfontein, 12 Burger Odendaal, 11 Jamba Ulengo, 10 Tian Schoeman, 9 Rudy Paige, 8 Hanro Liebenberg, 7 Jannes Kirsten, 6 Nic de Jager, 5 Rudolph Snyman, 4 Jason Jenkins, 3 Trevor Nyakane, 2 Adriaan Strauss (captain), 1 Lizo Gqoboka.
Replacements: 16 Jaco Visagie, 17 Pierre Schoeman, 18 Martin Dreyer, 19 Hendré Stassen, 20 Jacques Potgieter, 21 Ivan van Zyl, 22 Francois Brummer, 23 Franco Naude.
Referee: Will Houston
Assistant referees: Rohan Hoffmann, Akihisa Aso
TMO: Minoru Fuji
For more rugby news, visit Rugby365.com