US President Donald Trump highlighted Puerto Rico's relatively low death toll compared with "a real catastrophe like Katrina" as he saw for himself the devastation caused by Hurricane Maria.
Mr Trump pledged an all-out effort to help the island but added: "Now I hate to tell you, Puerto Rico, but you've thrown our budget a little out of whack because we've spent a lot of money on Puerto Rico. And that's fine. We've saved a lot of lives."
He said his visit was "not about me" but then praised local officials for offering kind words about the recovery effort and invited one to repeat the "nice things" she had said earlier.
He also singled out Governor Ricardo Rossello for "giving us the highest praise",
"Every death is a horror," he said, "but if you look at a real catastrophe like Katrina and you look at the tremendous, hundreds of and hundreds and hundreds of people that died, and you look at what happened here ... nobody's ever seen anything like this."
The most prominent critic in Puerto Rico, San Juan Mayor Carmen Yulin Cruz, attended Mr Trump's first event, in an airport hangar, shaking his hand as he went around a table greeting officials,
Days earlier, she accused the Trump administration of "killing us with the inefficiency," pleading for more effective federal leadership in the crisis.
Air Force One brought the president, first lady Melania Trump and aides to Puerto Rico.
They were expected to spend more than five hours on the ground, meeting first responders, local officials and some of the 3.4 million people whose lives have been devastated by a hurricane that, in the president's words, "flattened" the island.
At least parts of the itinerary were drawn to ensure a friendly reception: Mr Trump was visiting the houses of pre-selected families waiting on their lawns.
He president also handed out flashlights at a church, where 200 people cheered his arrival and crowded around him.
"There's a lot of love in this room, a lot of love," Mr Trump said. "Great people."
Asked by reporters what he had to say to people still without power, food and water, he spoke of the generators brought to the island and said the electrical grid was being fixed.
"Again the job that's been done here is really nothing short of a miracle," he said.
In his first moments on the island, Mr Trump remained focused primarily on drawing praise. "He didn't play politics at all," he said of the governor, making clear that he considers those who have criticised him to be politically driven.
The president had misstated Maria as a Category 5 hurricane; it was Category 4 when it hit Puerto Rico.
"I appreciate your support and I know you appreciate ours," he said. "Our country has really gone all out. It's not only dangerous, it's expensive. But I consider it a great honour."
Before leaving Washington, he said Puerto Ricans who have called the federal response insufficient "have to give us more help."
Large-scale protests against Mr Trump, talked about in advance, failed to materialise by early afternoon, with only a few knots of people gathering around San Juan to decry his criticism of local politicians.
As he headed out from the White House to visit the island, Mr Trump told reporters that "it's now acknowledged what a great job we've done".
The trip is Mr Trump's fourth to areas battered by storms during an unusually violent hurricane season that has also seen parts of Texas, Florida, Louisiana and the US Virgin Islands inundated by floodwaters and hit by high winds.
Nearly two weeks after the Puerto Rico storm, much of the countryside is still struggling to access such basic necessities as food, fresh water and cash.
Mr Trump's visit follows a weekend in which he aggressively pushed back against critics, including Cruz.
Mr Trump responded angrily on Twitter, deriding the "poor leadership ability by the Mayor of San Juan, and others in Puerto Rico, who are not able to get their workers to help."
"They want everything to be done for them when it should be a community effort," he added, scoffing at "politically motivated ingrates" who had criticised the federal work, and insisting that "tremendous progress" was being made.
For many, however, Washington's response is not enough. On Monday, the nonprofit relief group Oxfam announced that it would be taking the rare step of intervening in an American disaster, citing its outrage over what it called a "slow and inadequate response".