The US president blamed Barack Obama for his decision, for selling the old embassy site for "peanuts, only to build a new one in an off location for 1.2 billion dollars". Wanted me to cut ribbon-NO!'
But here's the thing - the news about the U.S. Embassy moving in London was first announced in October 2008, when George W. Bush was president.
The London Mayor, Sadiq Khan, said on Friday that Trump had clearly "got the message" that many Londoners would not welcome his visit.
"Let's hope that Donald Trump also resists the pursuit of his divisive agenda". Lammy tweeted. "You finally got the message that you'd be met by millions of us out on the streets protesting".
But Trump's late-night tweet singled out problems with the handling of the embassy.
He took to Twitter to explain why he called off the visit, which had sparked fears of mass protests and would have been his first to the United Kingdom as President.
Mr. Khan, meanwhile, travelled to the US and used taxpayers' money campaigning against Mr. Trump's election and has repeatedly attacked him and claimed he is "not welcome" in London.
US Secretary of State Rex Tillerson is expected to take the president's place next month.
However, after a phone call with Trump in December, Thresa May had said an invitation to come to Britain was "extended and accepted by the President". A petition calling for Trump's visit to be canceled quickly gained almost 2 million signatures and petitioners promised to hold "the biggest protest ever" if the proposed visit went through.
But asked if the Prime Minister viewed the countries Mr Trump was referring to as "s***holes", the spokesman replied: "No".
"Congratulations", one person said.
Trump's statement further irritated London as many people and government officials asked May to withdraw her invitation to Trump to pay a state visit. Unrest during the president's visit would be an embarrassment for the United States, which has been one of the U.K.'s closest allies for a century.