Lazio lacked bite in the absence of star striker Ciro Immobile, one of three players along with Lucas Leiva and Thomas Strakhosha absent after reportedly returning inconclusive coronavirus tests.
Ronaldo, who returned after his own isolation due to COVID-19 with a double against Spezia last week, scored a sixth Serie A goal of the campaign after 15 minutes and that looked by being enough to settle what had been a largely comfortable outing for the visitors.
But substitute Caicedo scored in the fifth minute of injury time to secure a point for Lazio in a result that leaves Juve three points off Serie A leaders Milan, who have a game in hand.