The world No. 1 lost 6-1 3-6 1-6 to the German in the semi-finals of the Summer Games.
He aimed to become the first male player to win a “Golden Slam” – consisting of four Grand Slam tournaments and one Olympic gold medal in the same calendar year.
Steffi Graf is the only tennis player to achieve the feat when she did so in 1998.
The Serbian has already won the Australian Open, the French Open and Wimbledon this year. He would have needed the gold medal at the Olympics and the US Open title to complete the package.
READ: San Marino is the smallest country in history to win a medal at the Olympics
Djokovic hadn’t lost a single set at the Games before Friday’s game and looked threatening as he sidelined his opponents.
And the same story seemed to be playing out against Zverev, as the US Open 2020 finalist failed to keep up with Djokovic’s intensity from the start.
However, after the interlude between the first two sets, he appeared to pull himself together and hit back, showing courage and determination.
His big, powerful serve and devastating forehand put him on the front foot, while Djokovic showed signs of nervousness as unusual unforced errors crept into his performance.
Visit CNN.com/sport for more news, features and videos
A bathroom break between the second and third set seemed to stop Zverev’s momentum, but it wasn’t for long.
In the shortened three-set format for the men’s competition at the Olympics, Djokovic was unable to return as Zverev stayed on track for his first Olympic gold, winning the final two sets within an hour and 26 minutes.
Zverev, 24, will now meet Karen Khachanov of the Russian Olympic Committee in the gold medal match this weekend.
Meanwhile, Djokovic and Spaniard Pablo Carreño Busta will face off for the bronze medal.