Dries Van Schalkwyk had given Zebre the lead and while Italian star Giovanbattista Venditti also crossed, his side are still waiting for their first win of the season.
Owen Williams' boot added salt to the wound as the Scarlets pulled clear after half time.
Simon Easterby's side had been run close in the reverse fixture earlier this season and were soon reminded of the Italian's threat when No.8 Van Schalkwyk went over to open the scoring.
Paolo Buso missed the conversion but the Scarlets were behind.
Owen Williams responded with a couple of quick penalties to settle the Welsh region's nerves though they were far from out of sight.
Buso missed the chance to respond when he was off target with a 38th minute penalty and the Scarlets took advantage with Liam Williams the star man.
The Wales back, playing on the wing instead of his usual position of full back, went over in the corner though TMO Peter Fitzgibbon was required to award the try.
Owen Williams hit the conversion wide but the Scarlets led by six at the break.
The score right on half time seemed to give the Scarlets a lift though and Owen Williams extended the lead with his third penalty soon into the second half.
And when Snyman added a superb second try just minutes later, with Owen Williams kicking the conversion and a further penalty, the game looked up.
But to be fair to Zebre, they rallied well and centre Venditti got his side back into things.
Alberto Chiesa missed the conversion and although Aaron Shingler was sin binned late on, the Scarlets were worthy winners.