Benetton Treviso bit back to gain a losing bonus point, but the Scarlets did enough in the opening 46 minutes to secure a morale-boosting Magners League win on Sunday evening.
Tries from Johnathan Edwards, Tavis Knoyle and Jonathan Davies saw the Scarlets jump into a 22-6 lead, but a fourth try proved beyond Nigel Davies' men.
Indeed, it was Benetton Treviso who had the last laugh at Parc y Scarlets as Kris Burton converted Tobie Botes' late try to collect just their second losing bonus point of the campaign.
The three-try win was enough to keep the Scarlets in contention for the play-offs. They remain sixth in the standings, level on 50 points with the Cardiff Blues and five adrift of the fourth-placed Ospreys.
In sunny conditions, Italy out-half Burton sent over a drop goal from outside the 22 to give Treviso an eighth minute lead. The visitors made two late changes with Luke McLean and Gonzalo Padro taking over from Corniel van Zyl and Joe Maddock in the second row and at full-back respectively.
The Scarlets, who rested Wales captain Matthew Rees, wore pink and white hooped socks to mark Ladies Day which raised funds for the Ray Gravell and Friends Charitable Trust.
Prop Iestyn Thomas went closest to breaching the Treviso try-line early on, and a well-struck penalty from distance from Stephen Jones brought the home side level in the 12th minute.
Lively runs from Morgan Stoddart, Rhys Priestland and Jonathan Davies lifted the home crowd amid a series of turnovers and aimless kicking.
Just as the first quarter came to a close, flanker Edwards picked up a loose ball at a ruck, slipped out of a tackle and cantered over for a converted try.
Treviso turned down a kickable penalty and conceded a free-kick at an attacking scrum as they tried to respond. Their forwards maintained a high work-rate throughout against a Scarlets pack that had a star performer in Ben Morgan.
After Burton kicked a penalty to make it 10-6, talented number 8 Morgan broke from a scrum late in the half and helped set up a try for replacement scrum half Knoyle, who had just been introduced.
Stoddart, Gareth Maule and Priestland all got their hands on the ball before Knoyle was released for a 15-metre sprint to the line. Jones' conversion closed out the first half's scoring at 17-6.
Teenage winger George North provided the assist for Davies' eighth try of the campaign, which came just six minutes into the second period.
North cut away along the touchline and passed out of the tackle for the supporting Davies to bulldoze over in the corner for an unconverted try.
Treviso boss Franco Smith threw on some fresh legs and the pack made the hard yards to get the visitors back into scoring range. They needed a try but had to settle for another three points from the boot of Burton.
Knock ons and wrong options thwarted some decent attacks for both sides, with the Scarlets giving away a costly penalty as they drove towards the Treviso whitewash.
It took a last-ditch tackle to halt Treviso as they raided forward again in search of an elusive try. Edwards saw yellow for slowing up the Italians' ball and the Scarlets stood firm, with man-of-the-match Morgan charging away from the base off the scrum.
Replacement Ezio Galon found himself in the sin-bin after the Scarlets stole possession and launched a purposeful counter attack. Despite the best efforts of Morgan and replacement Regan King, the bonus point try was out of the Scarlets' reach.
It was Treviso who finished with a late burst of energy, pressing for a try which eventually came to Botes.
Burton added the extras for a six-point margin, which stayed in place as a rushed pass found touch and foiled a cohesive move from the Scarlets in injury-time.