"That one didn't feel too good," he said.
Phelps wasn't the only surprise of the morning at the Aquatics Centre, where Queen Elizabeth appeared briefly.
Olympic champion Park Tae-hwan of South Korea won his 400 freestyle heat, but was disqualified for a false start. Paul Biedermann of Germany, the world record holder in the event, failed to make the final.
Canada's Ryan Cochrane, a Victoria native, had the eighth fastest time to earn the last spot in the final.
Phelps, the two-time defending Olympic champion, won his 400 IM preliminary heat in four minutes, 13.33 seconds with a time that was well off his world record of 4:03.84 set four years ago in Beijing, when Phelps won a record eight gold medals.
But it was only good enough to secure the last spot in the evening final, when Phelps will swim in Lane 1 instead of the middle of the pool.
"The only thing that matters is just getting a spot in," he said. "You can't win the gold medal from the morning."
In the 400 IM, Kosuke Hagino of Japan led the way in 4:10.01, a national record. Chad le Clos of South Africa was second at 4:12.24, and Ryan Lochte of the United States advanced in third at 4:12.35.
Victoria's Alec Page failed to advance after finishing eighth in Phelps' heat in 4:19.17.
Phelps' time was just fast enough to keep Laszlo Cseh of Hungary, the silver medallist in Beijing, out of the final. Cseh was ninth overall after leading Phelps during their heat before the American closed on the last lap of freestyle to beat him to the wall.
"I didn't expect those guys to go that fast in their heat," Phelps said. "I was slower this morning than I was four years ago."
Phelps' time in the grueling event that he had vowed not to swim again after Beijing took some of the lustre off what was expected to be a showdown between him and Lochte for gold.
"You can't count him out," Lochte said of Phelps. "Even though he just squeaked in eighth, he's a racer. We're going to do everything we can to go 1-2 tonight."
Lochte, the bronze medallist in Beijing, has won the 400 IM at the last two world championships.
"My first race is always the worst one," he said. "I'm glad I got the cobwebs out."
Dana Vollmer had the fastest qualifying time in the 100 butterfly at 56.25 seconds, setting American and Olympic records, to lead 16 women into the evening semifinals.
"I'm really happy with how fast it was and I think it's only going to get faster," she said. "That's kind of a confidence-booster. I'm ready to go."
Lu Ying of China was second in 57.17 and Australian Alicia Coutts was third at 57.36. Sarah Sjostrom of Sweden, the world record holder, was fourth at 57.45.
American Claire Donahue moved on in seventh, while British teammates Francesca Hall and Ellen Gandy were eighth and ninth, respectively.
Jess Schipper of Australia, the bronze medallist four years ago, was 24th and missed the semifinals by eight spots.
In the 400 free, Sun Yang of China qualified fastest in 3:45.07. American Peter Vanderkaay was second at 3:45.80, followed by his teammates Conor Dwyer in 3:46.24.
Park was surprised by his DQ, saying, "I don't know why" after he walked off the deck. In Beijing, he became South Korea's first swimming gold medallist and then won the world title in Shanghai last year.
Biedermann washed out for the second straight Olympics. He didn't make it out of the heats in Beijing. He set the world record at the 2009 world meet in Rome at the height of the high-tech body suit craze. Those suits have since been banned.