Yelena Isinbayeva relinquished her eight-year hold on the Olympic title, settling for bronze in the pole vault, while another Olympic champion and favorite Valerie Adams saw her shot put defense come to an end.
American Jennifer Suhr ended Isinbayeva's bid for a hat-trick of Olympic titles, by taking the gold on count-back from Cuba's Yarisley Silva, who took silver, after both women registered their best clearance of 4.75 meters.
Isinbayeva, who has been hampered by injuries and poor form for the last couple of years, cleared 4.70 meters for the bronze medal, and said she now had absolutely no plans to retire.
"I think this bronze tells me 'Yelena, don't quit', as I had planned to do after London," the world record holder said.
"If I thought I was going home with the bronze, I might not have come. I'm always fighting for the gold. "But the bronze medal is very tasteful.
"This bronze medal is like a gold, because in the past three years from Beijing through to London, I have had a lot of difficulties to face."
Suhr, who won silver in Beijing four years ago, said her last Olympic experience helped her come out and perform better in London. "Beijing taught me so much," Suhr said. "It gave me the experience to come out.
"And when Yelena's in the field you know she raises the bar, literally.
"You have to be on your game and you have to execute. It's an honour to be on top, there's a lot of respect there."
Suhr paid tribute to the crowd, who she said gave her the impetus to perform better. "It's really breathtaking," said Suhr. "It's something that's so emotional I can't even describe it.
"The atmosphere is electric because they bring you alive. When I warmed up I felt a little dead, but I fed off them."
There was another surprise in the field, when firm favorite Valerie Adams of New Zealand was forced to settle for silver after arch-rival Nadezhda Ostapchuk of Belarus took gold with the day's best effort of 21.36 meters in the women's shot put. Beijing gold medallist Adams could only muster up a throw of 20.70 meters, while Russia's Yevgeniya Kolodko took bronze with a personal best of 20.48 meters.
"I'm disappointed, to be honest, but that's sport," a tearful Adams said. "I really wanted to reach my target but that was impossible.
"I'm happy with the medal but not the colour, but I gave my heart out there.
"My aggressiveness wasn't there like it used to be. I left my heart out there trying to find my aggressiveness in me and it just didn't come together.
"I might just go to Rio (2016) just to piss people off," the 27-year-old added.