Diego Luna scored twice inside the opening 15 minutes as the United States held off a late Guatemala surge to win 2-1 in St Louis and reach the CONCACAF Gold Cup final.
The Real Salt Lake winger opened the scoring in the 4th minute, reacting quickest to a rebound after Luca de la Torre’s shot was parried.
He doubled the lead in the 15th with a brilliant solo effort, gliding past a challenge before smashing home from over 20 yards.
Guatemala responded after the break, with Olger Escobar firing home in the 80th minute to set up a nervy finish.
Matt Freese produced key saves late on, including a low stop to deny Jose Morales in stoppage time, preserving the narrow lead.
Mauricio Pochettino’s side, who entered the tournament on a four-game losing streak, will now face rivals Mexico in Sunday’s final in Houston as they target an eighth Gold Cup title.