South Africa's Cameron van der Burgh won the men's 100-meter breaststroke Sunday night with a world record.
Australia's Christian Sprenger touched second and American Brendan Hansen, trying again for an elusive Olympic gold medal, took the bronze.
Van der Burgh finished in 58.46 seconds, besting the old mark of 58.58 set by Aussie Brenton Rickard in 2009. Sprenger was .47 seconds back and Hansen 1.03.
Hansen medaled after getting the eighth and final qualifying spot and called his race "a gutsy swim."
"It's the shiniest bronze medal I'll ever have," he said.
The 30-year-old, who came out of retirement to race again, has two Olympic gold medals, but both were in the 400 medley relay at Athens and Beijing. He settled for silver in the 100 and bronze in the 200 at Athens and finished without a medal at Beijing in his only individual race.
Japan's Kosuke Kitajima, who captured the 100 and 200 breast at each of the last two Olympics, was trying to become the first male swimmer to win an individual event at three straight games but placed fifth.
Michael Phelps also failed to do that Saturday night when he finished fourth in the 400-meter individual medley.