Seattle, San Francisco, Los Angeles, Kansas City, Dallas, Atlanta, Houston, Boston, Philadelphia, Miami and New York/New Jersey were the U.S. cities named during an event in New York City.
Mexico will hold games in Mexico City, Guadalajara and Monterrey while Canada's Vancouver and Toronto were also chosen from a preliminary list of 22.
The cities to miss out were Cincinnati, Denver, Nashville, Orlando, Washington DC/Baltimore and Edmonton.
"It was the most competitive process for a FIFA World Cup, we'll have the world coming here, we'll have an exciting tournament," FIFA president Gianni Infantino said of the selection process.
He added that the venues for the final and the tournament opener would be determined at a later date.
"There are still some discussions to go on and we will certainly choose the best cities there as well for the opening and the final, but every match will be a final in this World Cup," Infantino said.
The U.S. will be staging the event for a second time, having also done so in 1994. Mexico was the tournament host in 1970 and 1986.
The 2026 tournament will mark the first time 48 teams will feature at a World Cup, up from the 32 that have contested the competition since 1998.
More about: