Scarlets narrowly avoided a PRO12 banana skin as they saw off Zebre 28-26 at Stadio Lanfranchi thanks to a late penalty on Saturday.
Neither side headed into the game in decent form as Zebre were without a win in two, while Scarlets had only won two in their last five. And there was little between the teams throughout the contest.
Zebre's Luciano Orquera and Scarlets' Steven Shingler exchanged penalties early in the match, before Scott Williams put the visitors ahead with the game's first try. Shingler converted to make it 10-3, but Orquera narrowed the gap with a second penalty goal later in the first half.
Then, after Shingler had restored the seven-point cushion, Zebre's George Biagi gathered a loose ball to score a try which Orquera converted to make it 13-13 at half-time.
Scarlets crossed for the decisive first try of the second-half when Williams went over under the posts for his second of the afternoon. Priestland converted, before Orquera struck another penalty to make it 20-16.
And the lead changed hands four times in a dramatic final ten minutes.
Quinitin Geldenhuys scored for Orquera to convert and put Zebre three points ahead, but James Davies crashed over for Scarlets to quickly regain the lead.
Gonzalo Garcia then struck a dramatic penalty to put Zebre a point to the good, but the hosts' indiscipline cost them from the restart, as Rhys Priestland stepped up to coolly dispatch the winning three points.
Tries: Biagi, Geldenhuys
Con: Orquera, Garcia
Pen: Orquera 3, Garcia
Tries: S Williams 2, J Davies
Con: Shingler, Priestland
Pen: Shingler 2, Priestland
Zebre: 15 Hendrik Daniller, 14 Dion Berryman, 13 Matteo Pratichetti, 12 Gonzalo Garcia, 11 Michele Visentin, 10 Luciano Orquera, 9 Brendon Leonard, 8 Andries Van Schalkwyk, 7 Mauro Bergamasco (c), 6 Filippo Cristiano, 5 George Biagi, 4 Quintin Geldenhuys, 3 Dario Chistolini, 2 Andrea Manici, 1 Andrea De Marchi.
Replacements: 16 Oliviero Fabiani, 17 Andrea Lovotti, 18 Luca Redolfini, 19 Samuela Vunisa, 20 Valerio Bernabò, 21 Guglielmo Palazzani, 22 Alberto Chillon, 23 Mirco Bergamasco.
Scarlets: 15 Liam Williams, 14 Harry Robinson, 13 Regan King, 12 Scott Williams, 11 Hadleigh Parkes, 10 Steven Shingler, 9 Aled Davies, 8 John Barclay, 7 James Davies, 6 Rob McCusker, 5 Lewis Rawlins, 4 Jake Ball, 3 Peter Edwards, 2 Ken Owens (c), 1 Rob Evans.
Replacements: 16 Ryan Elias, 17 Phil John, 18 Jacobie Adriaanse, 19 Jack Payne, 20 Rory Pitman, 21 Rhodri Williams, 22 Rhys Priestland, 23 Steffan Evans.
Referee: Gary Conway (Ireland)
Assistant referees: Elia Rizzo (Italy), Filippo Bertelli (Italy)
TMO: Carlo Damasco (Italy)