Atletico Madrid 0 Villarreal 1: Champions waste chance to match Barca
The 21-year-old striker scored in the 85th minute on Sunday to ensure the champions missed the opportunity to draw level on points with second-placed Barcelona - who were held to a 0-0 draw by Getafe 24 hours earlier - in La Liga.
Vietto was given his senior debut for Argentine outfit Racing Club by current Atletico boss Diego Simeone, and came back to haunt his former manager with a well-taken goal five minutes from time that ended the hosts' 27-game unbeaten home run in Spain's top flight.
Atletico earlier saw a 58th-minute header from Mario Mandzukic controversially ruled out for a foul, and in-form Villarreal - who have now won four Liga matches in a row - took full advantage to climb to sixth in the table.
The shock defeat leaves Simeone's men seven points adrift of arch-rivals and Liga leaders Real Madrid.
Atletico had the first real attempt on goal after a confident start from Villarreal, with midfielder Koke firing a 30-yard effort that had Sergio Asenjo scrambling across his line in the 18th minute.
Both sides struggled to creat clear-cut opportunities, although Asenjo was called into action for the first time seven minutes before the break - with the former Atletico keeper more than up to the task after Tiago met Juanfran's low ball from the right with a first-time shot from the edge of the box.
The contest may have been lacking in chances, but there was no shortage of competitive edge.
A flurry of yellow cards preceded the half-time whistle, with several late and off-the-ball challenges, which lent to atmosphere that threatened to boil over.
Vietto appeared the most likely source of a goal for the visitors, and he went close five minutes into the second half.
The forward ran at a retreating Atletico backline, and fired a 20-yard effort just wide of the post.
This injected some much-needed life into the game, and Atletico suddenly warmed to their task.
First, Asenjo produced an outstanding low save to prevent Mandzukic scoring on the turn after Gabi's chipped free-kick fell to the striker's feet six yards from goal.
Then, the Croatian had the ball in the net with a back post header from Arda Turan's cross, only for it to be ruled out for a foul on Mario Gaspar.
The hosts appeared the most likely to grab a winner as Diego Godin and Tiago both wasted promising openings.
But as Simeone's men piled forward they left gaps at the back, and this allowed Vietto to use his pace to steal all three points for the visitors.
Vietto latched on to a Moi Gomez pass before showing nimble feet to wrongfoot Godin and finish smartly from the edge of the box.