US President Joe Biden delivered a shaky, halting performance while his Republican rival Donald Trump battered him with a series of often false attacks at their debate as the two oldest presidential candidates ever exchanged personal insults ahead of the election.
The two men traded barbs on abortion, immigration, the wars in Ukraine and Gaza, their handling of the economy and even their golf games as they each sought to shake up what opinion polls show has been a virtually tied race for months.
Biden's allies tried to put a brave face on the evening, and two White House officials said Biden had a cold.
But the president's poor performance rattled his fellow Democrats and will likely deepen voter concerns that the 81-year-old is too old to serve another four-year term.
One top Biden donor, who did not want to be identified while criticising the president, called his performance "disqualifying" and said he expected a fresh round of calls for him to step aside ahead of the party's national convention in August.
Vice President Kamala Harris, appearing on CNN after the debate, acknowledged what she called Biden's "slow start" but argued that voters should judge him and Trump based on their years in office.
"I'm not going to spend all night with you talking about the last 90 minutes when I've been watching the last three-and-a-half years of performance," she told CNN host Anderson Cooper.
A hoarse-sounding Biden stumbled over his words on several occasions during the debate's first half-hour. But he found his footing at the halfway mark when he attacked Trump over his conviction for covering up hush money payments to porn star Stormy Daniels, calling him a "felon."
In response, Trump brought up the recent conviction of Biden's son, Hunter, for lying about his drug use to buy a gun.
Moments later, Biden noted that almost all of Trump's former cabinet members, including former Vice President Mike Pence, have not endorsed his campaign.
"They know him well, they served with him," he said. "Why are they not endorsing him?"
Trump, meanwhile, unleashed a barrage of criticisms, many of which were well-worn falsehoods he has long repeated, including claims that migrants have carried out a crime wave, that Democrats support infanticide and that he actually won the 2020 election.
Biden and Trump, 78, were both under pressure to display their fitness for office. Biden has been dogged by questions about his age and sharpness, while Trump's incendiary rhetoric and sprawling legal woes remain a vulnerability.
"Obviously, the biggest factor is that Biden still seemed old and raspy and less coherent than when he ran last time," said Matt Grossmann, a political science professor at Michigan State University. "I don't think Trump really did anything to help himself beyond his existing supporters, but I think it's eclipsed by people's impressions of Biden on his biggest vulnerability."
Asked about the January 6, 2021, attack on the US Capitol by a mob of Trump supporters, the former president refused to accept any responsibility and claimed that many of those arrested were innocent.
"This guy has no sense of American democracy," Biden scoffed in response.
Biden also blamed Trump for enabling the elimination of a nationwide right to abortion by appointing conservatives to the US Supreme Court, an issue that has bedeviled Republicans since 2022.
Trump countered that Biden would not support any limits on abortions and said that returning the issue to the states was the right course of action.
Trump said Biden had failed to secure the southern US border, ushering in scores of criminals.
"I call it Biden migrant crime," he said.
Biden replied, "Once again, he's exaggerating, he's lying."
Studies show immigrants do not commit crimes at a higher rate than native-born Americans.

One killed, five injured in Bahrain from Iran strikes
Qatar is not directly mediating between US and Iran, ministry spokesperson says
Germany, France in rare rebuke of Trump over Iran war
Philippine president declares energy emergency over Middle East conflict risks
New York's LaGuardia airport faces second day of delays, cancellations after collision
Iran sends missiles into Israel, dismisses Trump's talk of negotiations as 'fake news'
Lebanon declares Iranian envoy persona non grata, asks him to leave by Sunday
Iran denies talks with US after Trump postpones strikes on power grid
