The result also extends the Scarlets' winless run against Connacht but it was the Welsh region who started brightly.
Having more inroads into the Connacht half several times, they were eventually rewarded for their early dominance when the Irish team collapsed a scrum and Dan Newton stroked over the resulting penalty for an eighth-minute lead.
The Scarlets' ascendancy up front was causing significant difficulties for the home team but despite knocking at the door, Connacht's defence held firm.
They went close themselves when Henry Fa'afili was held up just short of the tryline and his despairing pass failed to find the lively Gavin Duffy.
Defences coming out on top was the story of the game and just before the break Newton and Matthew Jarvis exchanged penalties to give the visitors a 6-3 lead.
It was Rob McCusker who made the breakthrough five minutes after the interval and it was little surprise that the try came from a scrum.
With the set piece being awarded 10m out, the Welsh front row put on the squeeze which gave flanker McCusker the space he needed to crash over from close range - the score getting the television match official's seal of approval.
Newton's conversion took Scarlets into an eight-point lead and McCusker was in the heart of the action again as he exchanged blows with lock Michael Swift - referee Marius Mitera opted to send both to the sin bin.
That seemed to spark both the crowd and Connacht into life and they got back into the game on 54 minutes when Fa'afili's superb inside pass was latched onto by winger Mark McCrea who was over the line in a flash.
Jarvis' conversion made it a one point game and suddenly the momentum was with the hosts.
They would capitalise on 67 minutes when Turnbull was pinged for going offside and O'Connor slotted the resulting penalty to lift the roof.
The closing stages were a predictably tight affair but in the end O'Connor was able to find touch with time up to spark wild scenes of celebration.
|Connacht Rugby Score Card|
|Scarlets Score Card|