Trailing 14-0 after 10 minutes of magic by the Cape Town backs, Ulster fought they way back into the match and placed themselves into contention for a possible win, only to be denied by the home side's scrum, with three crucial scrum penalties conceded within five meters of the hosts’ line.
Each time the DHL Stormers could relieve pressure created by the relentless Ulster pack, who enjoyed dominance at the breakdown, it allowed their team good go forward ball.
A crucial call two minutes from fulltime denied Ulster what they thought was a match winning try, with prop Callum Reid being ruled to lose the ball over the line. From the resulting scrum, the home side won the penalty and could relieve field position and pressure to secure the win.
Earlier a similar effort by the home side stopped the Ulster momentum which saw them crawling their way back into the match after trailing 14-0 in the blink of an eye.
The visitors were rocked early on by some sublime rugby from the home side.
At first, some relentless Stormers defence forced the Irish team to kick for attacking relief, with a number of runs by their ball carriers costing them ground.
From the very first aerial probe, Ulster paid the price to some backline brilliance, with Warrick Gelant (fullback) exploding into the match after good defence forced Ulster to kick, which kick-started a counter-attack from within 25 metres.
The fullback found wing Leolin Zas who set scrumhalf Paul de Wet off to a sprint to the line that delivered a peach of a try.
That was followed by another pearler less than five minutes later, again with Gelant and Zas involved, with the latter finishing in the corner. The home side won a lineout and played wide and when play switched to the openside again, Zas was put into space. DHL Stromers flyhalf Manie Libbok kicked the conversion for a 14-0 lead eight minutes in.
This rocked the Irish, but credit to them as they soon found some stability in their play, with their forwards slowly but surely getting them back into the game. Three consecutive attacking lineout drives did not deliver the much needed try, but from that third sortie, prop Marty Moore crashed over to hand the visitors their first points, with John Cooney converting.
Libbok extended the home team’s lead with a penalty goal from straight in front before Cooney kicked two more penalty goals to justify his side's progressive gains in the territorial and possession stakes of the game.
Libbok had the last say of the half though, with a 40 meter effort that sailed through the uprights to give the DHL Stormers some breathing space.
The second half started differently and the match it became a grind as both teams were intent on finding field position with a number of high kicks the preferred option.The Ulster forwards did not retreat from one of those out of the 10 meters area and were penalised, giving Libbok an easy kick to extend their lead to 10 points once again.
Ulster centre, Stuart McCloskey, jogged in for his first try after Libbok gave away momentum minutes later as he slipped badly on a straight forward tackle. Cooney converted and suddenly the home team’s lead was only three, which placed the match in danger of slipping away.
A powerful scrum on their own line swung the momentum back in the Capetonians favour as Ulster were made to attack from deep. They came within five meters, but Reid's drive to the line was ruled a non-event.
Another powerful scrum later for the hosts sealed the win for the relieved DHL Stormers.
Scorers:
DHL Stormers 23 (20) - Tries: Paul de Wet, Leolin Zas. Conversions: Manie Libbok (2). Penalty Goals: Libbok (3)
Ulster 20 (13) - Tries: Marty Moore, Stuart McCloskey. Conversions: John Cooney (2). Penalty Goals: Cooney (2).