The Briton took the first set comfortably, but lost the initiative in the second and then let a lead slip in the deciding set.
Konta, 25, looked increasingly weary in the final event of the WTA Tour season.
Svitolina will now face the Czech Republic's Petra Kvitova, who beat Chinese wildcard Zhang Shuai 6-2 6-2.
The tournament features the leading 12 players who did not qualify for last week's WTA Finals in Singapore.
Konta appeared to be cruising to the final, with the Ukrainian having no answer to the power and accuracy of her serve and ground strokes in the opening set.
The world number 10 broke her 22-year-old opponent in the third and seventh games to take it in just 26 minutes.
Svitolina took a bathroom break at the end of the set and the interruption appeared to affect Konta's rhythm.
After a string of unforced errors, the Briton - under pressure for the first time in the tournament - soon trailed 5-0 in the second.
The momentum of the match had swung round, and though Konta briefly rallied in the third set to open up a 3-1 lead, she couldn't sustain the recovery and her serve was picked apart again with decisive back-to-back breaks.
Top seed Johanna Konta lost 2-6 6-1 6-4 to Ukraine's Elina Svitolina in the semi-finals of the WTA Elite Trophy in Zhuhai, China.