Maria Sakkari beat defending champion Paula Badosa to reach the biggest final of her career at Indian Wells.
Greece's Sakkari, who had previously won just 12 of her past 14 semi-finals, broke down in tears after overcoming the Spaniard 6-2 4-6 6-1.
She will face Iga Swiatek on Sunday, with the winner rising to number two in the world rankings.
Poland's Swiatek beat Romanian Simona Halep 7-6 (7-6) 6-4 to register her 10th consecutive victory.
Sakkari hit 28 winners during the match against Badosa.
She has won one title on the WTA Tour - at the Morocco Open in 2019 - but found more consistency last year, reaching the French Open and US Open semi-finals.