Gareth Anscombe scored 20 points as unconvincing Cardiff Blues recorded a 30-24 PRO12 victory over Zebre with the Italians rallying strongly to have the home side hanging on for the final whistle.
Cardiff's success maintained their momentum ahead of their local derby against Newport Gwent Dragons next Saturday and then potentially two play-off games as they bid to secure qualification for European Champions Cup for next season.
Aled Summerhill, Tomos Williams and Anscombe scored tries for Blues with Anscombe converting three and adding three penalties. Maxime Mbanda and Andries van Schalkwyk crossed over for Zebre. There was also a penalty try award with Carlo Canna kicking a penalty and two conversions.
Guglielmo Palazzani added a late conversion to secure a vital bonus point so Zebre's final league fixture against Treviso next Saturday will decide which of the two clubs will represent Italy in the Champions Cup next season.
Blues dominated the opening period but frequent errors prevented them from capitalising on an abundance of possession. They missed a couple of try-scoring opportunities and had to rely on two Anscombe penalties for a 6-0 lead at the end of a disjointed first quarter.
But a minute later, Cardiff had their first try when Nick Williams and Anscombe combined neatly to send the outside half racing over in the corner and worse was to follow for the Italians when Summerhill finished off a flowing movement by running 40 metres to score.
Anscombe converted both to give Blues a healthy 20-0 lead but they suffered a setback when number eight Nick Williams was yellow carded for a tip tackle, which allowed Zebre to get on the scoreboard with the resulting penalty from Canna.
Anscombe extended the home lead with his third penalty before their opponents blew a golden opportunity to score their opening try when full back, Edoardo Padovani, burst away but then failed to feed his wing, Mattia Bellini, who had a clear run to the line.
Two minutes after the restart, Federico Ruzza produced a thrilling 75-metre run, after he had intercepted in the home 22, but the lock was hauled down five metres from the line by Rhun Williams.
This was the catalyst for Zebre to have their best period of the match as Blues conceded frequent penalties at the scrum, which culminated in Taufa'ao Filise being yellow carded before a penalty try was awarded.
Almost immediately, the away side undid their hard work when from the restart they gifted a try to Tomos Williams but the Italians remained in contention as Mbanda forced his way over from close range.
After 65 minutes, Sion Bennett became the third Cardiff forward to be yellow carded before the visitors' prop, Dario Chistolini was sent off for punching - but the dismissal did not stop the Italians dominating the final 15 minutes and they were rewarded with a third try when Van Schalkwyk crossed.