As the G20 summit began in Argentina on Friday, Donald Trump said the deal "changes the trade landscape forever".
The deal is intended to replace the 24-year-old North American trade pact, which Mr Trump had described as a "disaster".
As the G20 summit began in Argentina on Friday, the US president told reporters that the deal "changes the trade landscape forever".
Standing between Canadian prime minister Justin Trudeau and Mexican president Enrique Pena Nieto, Mr Trump said: "As part of our agreement, the United States will be able to lock in our market access to Canada and Mexico, and greatly expand our cultural exports - something we've been wanting to do for many years.
"This is an amazing deal for our farmers and also allows them to use cutting edge biotechnology and eliminates non-scientific barriers.
"Our nations have also agreed to innovate new measures to ensure fair competition and promote high wages and higher wages for US and North American workers, the... workers are a tremendous beneficiary."
Mr Trudeau said the deal was a major step for Canada's economy but warned that there is more work to be done.
A particular sore point for the Canadian prime minister are the US tariffs on steel and aluminium imposed earlier this year and he said these should be removed.
There had been speculation that he would skip the signing ceremony due to his feelings on the subject.
Mr Nieto, who will be replaced on Saturday with Mexico's newly-elected president, has sold the deal to his people as a victory, saving free trade from a US president who wanted to see it killed.
This may prove most challenging for Mr Trump, as the Democrats take control of the House of Representatives from January.
Meanwhile, Mr Trump's other major trade-related meeting during the G20 summit will be with China's leader Xi Jinping on Saturday, with analysts looking for any sign that the US president will hold off on plans to toughen US tariffs on Chinese imports in January.