The Stormers secured their fourth victory of the Super Rugby season when they beat the Western Force 24-8 at Newlands in Cape Town.
The result provisionally moved the Stormers off the bottom of the Super Rugby standings and into 12th place overall while in the South African conference they moved up to third above the Lions and Cheetahs.
The Stormers outscored the Western Force by three tries to one including a penalty try for the Cape Town franchise just before half time.
The Stormers ran out of steam towards the end but did enough earlier on to run out convincing victors.
A rousing first-half performance earned the hosts a 17-3 half-time lead and after a spirited start to the second period, the Stormers were unable to maintain the upper hand and missed out on securing a bonus-point try.
The Cape side were forced into a pre-match change when captain Schalk Burger was ruled out after failing to recover from a back injury.
Flank Siya Kolisi replaced Burger and Rohan Kitshoff moved on the bench. Eighthman Duane Vermeulen took over the captaincy.
In the opening 20 minutes, the Stormers dominated possession and had plenty of chances deep inside the Force's final third but failed to capitalise.
Two penalties for the Stormers inside the Force's 22m area in the first seven minutes of play should have given the hosts an early advance but failed to do so as the visitors' defence withstood wave after wave of Stormers attacks which produced some 10 attempts to cross the tryline in a busy 12-minute spell.
The Stormers enjoyed an overwhelming share of the possession and finally managed a score when flyhalf Peter Grant, playing his 100th Super Rugby game, slotted a penalty from in front of the posts in the 16th minute.
The Capetonians continued to exert pressure and soon converted into points when centre Juan de Jongh dived in at the corner for the try, as Grant added the conversion with 18 minutes on the clock.
In the 21st minute, Force flyhalf Sias Ebersohn reduced the deficit with a 40m penalty, before Force lock Adam Coleman was yellow-carded three minutes from the end of the first half and the Stormers duly exploited the advantage by shoving their opponents back at a set-scrum under their posts.
New Zealand referee Chris Pollock spotted foul play and awarded a penalty try, which Grant converted to give the Stormers a handsome 17-3 half-time lead.
With the Force still a man short after the break, the Stormers ran in a third try through lock Ruan Botha in the 46th minute.
Grant's conversion from out wide opened a 24-3 lead.
The crowd of almost 17 000, one of the smallest at a Super Rugby match this season, were warming to the fare as the Stormers held a vice-like grip on the match with forceful plays from the set-pieces.
On the hour, the Force managed a fightback and managed to transfer play to the Stormers' 22m area, where they came dramatically close to crossing the whitewash during a pressure spell lasting some six minutes.
Grant and flank Nizaam Carr gave way for Kurt Coleman and Rohan Kitshoff when the Stormers were still battling to keep the Force out after the 67th minute.
Two minutes later Stormers, fullback Jaco Taute was yellow-carded and the Force struck almost immediately with an unconverted try from their captain Matt Hodgson.
With six minutes left to play, the Stormers launched one final surge in an attempt to claim a bonus-point try but failed to hold onto the ball and frequently lost possession.
Final Score Stormers 24 (19) W.Force 8 (3)
Tries - J. de Jongh, Penalty Try, R.Botha
Pen - P.Grant
Con - P.Grant 3
Cards - C. Kolbe (68th min yellow), J.Taute (69th min yellow)
Tries - M.Hodgson
Pen - S.Ebersohn
Cards - A. Coleman (36th min yellow)
Referee: Chris Pollock
Assistant Ref 1: Marius Jonker
Assistant Ref 2: Quinton Immelman
TMO: Shaun Veldsman
15. Jaco Taute , 14. Kobus van Wyk , 13. Juan de Jongh , 12. Damian de Allende , 11. Cheslin Kolbe , 10. Peter Grant , 9. Nic Groom , 8. Duane Vermeulen (captain) , 7. Siya Kolisi, 6. Nizaam Carr , 5. Ruan Botha , 4. Michael Rhodes , 3. Pat Cilliers , 2. Deon Fourie , 1. Brok Harris
Replacements: 16. Stephan Coetzee , 17. Alistair Vermaak , 18. Martin Dreyer , 19. Jean Kleyn , 20. Rohan Kitshoff, 21. Dylon Frylinck , 22. Kurt Coleman , 23. Michael van der Spuy
1. Pek Cowan,2. Nathan Charles,3. Kieran Longbottom,4. Sam Wykes,5. Adam Coleman ,6. Angus Cottrell,7. Matt Hodgson (c),8. Ben McCalman,9. Ian Prior,10. Sias Ebersohn,11. Nick Cummins ,12. Luke Burton,13. Chris Tuatara-Morrison,14. Marcel Brache,15. Jayden Hayward
Replacements : 16. Heath Tessmann,17. Tetera Faulkner ,18. Ollie Hoskins,19. Wilhelm Steenkamp,20. Brynard Stander,21. Justin Turner,22. Zack Holmes ,23. Patrick Dellit