The DHL Stormers suffered their first defeat of the season, going down 30-24 against Cardiff on Saturday.
The visitors scored four tries and claimed two bonus points for their efforts, but could not avoid their first defeat in 16 games.
The home side opened up an early lead through two penalties from flyhalf Rhys Priestland and they made it 11-0 when wing Theo Cabango scored in the corner.
The DHL Stormers responded with two tries of their own as first Nama Xaba scored from a powerful maul before Leolin Zas got on the end of a clever chip kick from Manie Libbok.
Libbok converted both tries, bit the DHL Stormers were reduced to 14 men just before the break when Hacjivah Dayimani was shown a yellow card after his head collided with the ball-carrier who had stepped inside.
The resulting penalty from Priestland saw the teams go into the half-time break deadlocked at 14-14.
The home side took the lead early in the second half when wing Jason Harries scored from a cross-kick.
The DHL Stormers responded with a second maul try from Xaba to bring them right back in it, but Cardiff had another Prietland penalty from the restart to make it 24-19.
They were level again when replacement Junior Pokomela went over for the third maul try, which also secured the bonus point.
Another Priestland penalty gave Cardiff a three-point lead with 10 minutes left to play and they sealed the win with another penalty at the death while the DHL Stormers took two bonus points.
For DHL Stormers:
Tries: Xaba 2, Zas, Pokomela
Cons: Libbok 2
Tries: Cabango, Harries
Pens: Priestland 6
DHL Stormers: 15 Clayton Blommetjies, 14 Suleiman Hartzenberg, 13 Alapati Leuia, 12 Dan du Plessis, 11 Leolin Zas, 10 Manie Libbok, 9 Godlen Masimla, 8 Hacjivah Dayimani, 7 Ernst van Rhyn (captain), 6 Nama Xaba, 5 Marvin Orie, 4 Adre Smith, 3 Frans Malherbe, 2 Joseph Dweba, 1 Steven Kitshoff.
Replacements: 16 JJ Kotze, 17 Kwenzo Blose, 18 Brok Harris, 19 Ben-Jason Dixon, 20 Willie Engelbrecht, 21 Junior Pokomela, 22 Paul de Wet, 23 Sacha Mngomezulu.
Cardiff: Ben Thomas; Jason Harries, Max Llewellyn, Uilisi Halaholo, Theo Cabango; Rhys Priestland, Tomos Williams; Rhys Carré, Kristian Dacey, Dillon Lewis, Josh Turnbull (capt.), Rory Thornton, Jim Botham, Thomas Young, James Ratti.
Replacements: Kirby Myhill, Corey Domachowski, Dmitri Arhip, Teddy Williams, Lopeti Timani, Gwilym Bradley, Lloyd Williams, Mason Grady.