Michela Sillari's late penalty inflicted late heartbreak on Wales as Italy finished the Women’s Six Nations on a high.
Keira Bevan thought she had won the match for the hosts with a try four minutes from time but Sillari held her nerve in the 80th minute to stun the 3,373 fans in attendance and cap a 10-8 win.
Sara Barattin scored Italy’s only try of the match and they led 7-0 for a large portion of the game, with Robyn Wilkins’ 71st-minute penalty marking Wales’ first points of the day - although the Welsh will finish the championship third in the table, one spot above the Azzurre.
Wales started anything but slowly as flanker Alisha Butchers made a beeline for the Italian 22 within the first two minutes, just coming up short.
But Wales didn't let up as winger Lisa Neumann brought the backs into play with two barnstorming runs up the side. Her 11th-minute run on the right brought her within two metres of the try line before being taken down by an Italian defence quick on their toes.
It might have been a sunny day in Cardiff but it started to rain yellow after 20 minutes as both Robyn Wilkins and Sioned Harries were sent to the sin-bin for high tackles.
With Wales down to 13, Andrea di Giandomenico's side were quick to take advantage with two scrums inside the 22.
The Azzurre continued their strong attack, with two runs down the left ending as penalties for Wales, but Italy finally struck gold in the 32nd minute as flanker Beatrice Veronese offloaded to Barattin, who thwarted Wales' defence and touched the ball over the line.
Sillari kept up her perfect goal-kicking record in this year’s championship to make it 7-0 to Italy as Wilkins and Harries returned to play before half-time.
After the break, Italy came back with speed and force, playing straight into the Wales 22. Some changes just after half-time saw Dragons captain Siwan Lillicrap replaced by Natalia John in the second row as Wales hoped to bring in some dynamism with their impact subs.
Turnover penalties seemed to be Italy's weakness as both Alex Callender and Harries showed good form and broke attacks close to the Italian try line in the 51st and 54th minute.
Jasmine Joyce showed a burst of energy soon after but was stopped by a tackle combination before coming back for a Wales penalty.
With 13 minutes to go, Lucia Gai broke up a dangerous-looking drive down the right by Wales to keep the visitors ahead.
But a penalty soon after put Wales in scoring range as Wilkins cleared the posts and put three points on the board to make it 7-3.
The 74th minute saw what looked to be a defining moment as a dominant Wales scrum broke through an stingy Italy defence and Wilkins finally found the line to get ahead for the first time of the game.
But it all came down to the last minute as a late penalty kick by Sillari pushed Italy back into the lead and saw them claim victory.
The TikTok Women’s Six Nations is more accessible than ever before. To find out how you can watch the Women’s Championship visit: womens.sixnationsrugby.com/tv/