The visitors delivered a dominant all-round performance, outscoring the Bulls six tries to three and showing clinical execution in key moments. Griquas' backline, led by the electric Gurswin Wehr, carved open the Bulls defence repeatedly, while their forwards laid a solid platform in both set-piece and open play.
The Bulls started the match with intensity and control, camping in Griquas' half and testing their defence early. That pressure paid off when Stravino Jacobs powered over in the 5th minute, with Boeta Chamberlain adding the conversion for a 7-0 lead.
But the momentum quickly swung. Griquas responded in style. Dylan Maart created space down the blindside, setting up Wehr for his first try. Minutes later, Wehr intercepted a loose pass to race in for his second. Then, a dominant Griquas maul paved the way for captain Cebo Dlamini to crash over, and with three successful conversions from George Whitehead, Griquas went into halftime leading 21-7.
The Bulls' discipline unravelled early in the second half when captain Nama Xaba was yellow-carded for a dangerous tackle. Griquas immediately capitalised on the numerical advantage as Wehr completed his hat-trick with a well-worked try, followed shortly by scores from hooker Janco Uys and centre Zane Bester. Whitehead maintained a flawless kicking record, and Griquas raced to a 42-7 lead with a quarter still to play.
Although the Bulls mounted a late rally with tries from Junior Pokomela and Katlego Letebele, the outcome was never in doubt. Griquas finished the match with 14 men after IG Prinsloo was red-carded for a dangerous clean-out, but their defensive resolve held firm to deny the hosts a fourth try and a bonus point.
Scorers:
For the Bulls:
Tries: Jacobs, Pokomela, Letebele
Cons: Chamberlain 3
For Griquas:
Tries: Wehr 3, Dlamini, Uys, Bester
Cons: Whitehead 6
Yellow card: Nama Xaba
Red card: IG Prinsloo
Teams:
Bulls: 15 Stravino Jacobs, 14 Cheswill Jooste, 13 Katlego Letebele, 12 Cornel Smit, 11 Aphiwe Dyantyi, 10 Boeta Chamberlain, 9 Zak Burger, 8 JJ Theron, 7 Junior Pokomela, 6 Nama Xaba (captain), 5 Dylan de Leeuw, 4 Sintu Manjezi, 3 Jean Erasmus, 2 Esethu Mnebelele, 1 Ruan Swart
Replacements: 16 Shaun Schurmann, 17 Simphiwe Matanzima, 18 Bryan le Roux, 19 Josh Strauss, 20 Marco Ferreira, 21 Brooklyn Newman, 22 Liam Koen, 23 PA van Niekerk
Griquas: 15 Cameron Hufke, 14 Dylan Maart, 13 Zane Bester, 12 Mnombi Zwelenedaba, 11 Gurswin Wehr, 10 George Whitehead, 9 Caleb Abrahams, 8 Carl Els, 7 Marco de Witt, 6 Lourens Oosthuizen, 5 Albert Liebenberg, 4 Derik Pretorius, 2 Cebo Dlamini (captain), 2 Janco Uys, 1 Eddie Davids
Replacements: 16 Tiaan Lange, 17 Leon Lyons, 18 Ig Prinsloo, 19 Athenkosi Khethani, 20 Phumzile Maqondwana, 21 Thomas Bursey, 22 Tom Nel, Connor Mahoney
Referee: AJ Jacobs
Assistant referees: Christopher Allison, Hernus Coetzee
TMO: Cwengile Jadezweni