Ulster 19 Scarlets 8
Ulster made it three wins from three in the Guinness PRO12 to sit top of the table overnight but made heavy weather of seeing off the Scarlets who have yet to win a game.
Les Kiss's side led 11-0 at the break - through a try from Louis Ludik and two penalties from the returning Paddy Jackson - but failed to score any points at all between the 18th and 70th minutes when Jackson's third penalty took the score to 14-3.
Ulster - hit by injuries to Stuart McCloskey and Luke Marshall - had earlier failed to register on the scoreboard during Jake Ball's 35th-minute sin-binning and only Iain Henderson's late try denied the Welsh region a losing bonus point after Will Boyde's 75th-minute touchdown had narrowed the score to 14-8.
It started badly for the visitors as Rhys Patchell was well wide with a miss-hit fourth-minute penalty attempt but Jackson made no mistake for Ulster with his first attempt six minutes later after some promising attacking down the left flank was illegally halted.
Ulster stretched their lead just after the first quarter when Jackson nailed his second penalty after the Scarlets front row were penalised for collapsing a scrum.
Then, just before the 20th minute, Ulster struck from deep after a clearance kick from Patchell was fielded by Craig Gilroy. The Ulster right winger threw the ball left to Charles Piutau and the home side worked the ball down the left with McCloskey putting Ludik clear to score in the corner.
Jackson missed the difficult conversion and then the home side's scramble defence saved a score from Gareth Davies with another scrum penalty ensuing from the set-piece on Ulster's line.
Gilroy then got clear on the right with only a great covering tackle from Liam Williams preventing a certain try.
The Scarlets went down to 14 men with five minutes remaining in the first half when Ball was shown yellow for some illegal work at a ruck but, frustratingly for Ulster there were no further scores and Kiss's men went off leading 11-0 at the break.
Worryingly for Ulster, Ball then returned to the action without a point being scored against the visitors.
Punishment duly came with Patchell getting the Welsh side off the mark in the 47th minute after Robbie Diack was penalised for blocking a quick tap penalty being taken by Gareth Davies.
Ulster then turned the screw after a Gilroy take of a high ball but coughed up a penalty under the Scarlets' sticks. This gave the Welsh new impetus and only a last-gasp interception from Piutau prevented a try for James Davies.
This in turn led to Gilroy racing free down the wing and being taken down by Williams who was deemed not to have taken the Ulsterman late.
The game then became disjointed with McCloskey and his replacement Luke Marshall going off injured but Ulster secured a kick-able penalty and with just 10 minutes on the clock Jackson slotted the crucial kick.
The Scarlets finally put something together with replacement back-rower Boyde scuttling over in the 75th minute with Patchell hitting the upright with the conversion.
But their losing bonus evaporated in the last minute when Henderson crashed over, Jackson missing the conversion.