The world no.1 proved in a different league on Thursday, beating the 20th-ranked Keys 6-1 6-3 in the semi-finals.
"It was a pretty clean performance and really solid game from myself," Swiatek said. "I'm happy with everything."
The Madrid Open is the only high-profile European clay-court competition that the Polish star has yet to win.
It will be the third final of the year for Swiatek after winning titles in Indian Wells and Doha, and she'll face either world No.2 Aryna Sabalenka or No.4 Elena Rybakina.
It could be a repeat of last year's final, when Sabalenka defeated Swiatek.
Keys said she was disappointed but there were "a lot of really great things to take from the tournament" in the Spanish capital.
"It's been a while since I have won four matches in a row. Lots to build on. It's obviously great momentum going into (the Italian Open in) Rome next week," she said.
"It's only my fourth tournament back after the shoulder injury.
"So, to do so well here, be able to play some tough matches and be physically 100 per cent is a huge positive."