- Marcotti: Man Utd shocked the world with Ronaldo transfer
Other than some fierce Federico Chiesa strikes from range, the hosts did not threaten to score in the first half as Empoli edged into a surprise lead when captain Leonardo Mancuso swept the ball home at the far post in the 21st minute.
After the break, Juventus coach Massimiliano Allegri introduced Alvaro Morata, Dejan Kulusevski and new signing Manuel Locatelli from the bench but, even with all that firepower on the pitch, they created few openings of note.
Empoli saw out their first win back in the Italian top flight in relative comfort, leaving Juve on one point from their opening two matches of the season.
"It's a difficult moment," Allegri told DAZN. "We need to grow, we have to face our problems together.
"There have been too many players who have done things poorly who don't usually drop to that standard."
Having started the season with a 2-2 draw at Udinese, Juve, even without Ronaldo, were widely expected to have too much for their newly-promoted opponents.
Chiesa, who came in for Ronaldo, almost broke the deadlock early on from distance, but his arrowing effort was brilliantly saved by Empoli goalkeeper Guglielmo Vicario.
That was as good as it got in the first half for Juve, with the visitors breaking well and creating the opening for Mancuso, who reacted quickest to the loose ball in the area to fire home.
Juve supporters let their feelings be known as attack after attack broke down, with Paulo Dybala especially guilty of some wayward passing.
The home side threw everything at their opponents late on but apart from Locatelli's dragged effort wide, an equaliser never looked likely, with that Ronaldo-shaped hole a tough one to fill.
Juve failed to win their first two league matches at the start of a season for just the third time in their last 52 top-flight campaigns.