Swiatek was in fine form in Melbourne, losing just 14 games in her five matches before the semi-finals.
For context, only three players in history have lost fewer matches in reaching the semi-finals of the Australian Open in a draw of 128 players during the Open Era.
However, the four-time French Open winner was undone by an inspired Keys, determined to win his Australian Open semi-final at the third attempt.
The chaotic start, which saw serve broken five times in the first six games, paved the way for a difficult night under the roof of Rod Laver Arena for Swiatek, who broke serve for the fourth time to win the first set before surrendering in the second.
It took Keys just 27 minutes to overcome Swiatek as he reeled in five straight games to force a deciding set.
Both players saved several service points as tension built during an exciting, high-quality deciding set.
Swiatek finally took advantage of her eighth opportunity to break her opponent's serve to take a 6-5 lead, but after failing to get the first match point, she lost her serve after a double fault.
It was a winner-take-all tiebreak that Keys and the match deserved, but Swiatek seemed to be in control of the match as he led 7-5.
However, in a final impressive display of physical and mental resilience, Keys won five of the next six points to complete a thrilling victory after two hours and 35 minutes.