Cincinnati - World No 1 Serena Williams came from a break down in the opening set to produce a patchy 6-4, 6-3 win Saturday over Elina Svitolina to reach the WTA final in Cincinnati.
The top seed was far from efficient in the semi-final, appearing to lose her way on some shots, before squeezing through for a chance at a second consecutive Cincinnati title.
In Sunday's final she will face Romanian third seed Simona Halep, who crushed former champion Jelena Jankovic of Serbia 6-1, 6-2.
Halep will also return to number two in the world behind Williams as a result of her win and will take the second seeding at the US Open starting in nine days.
The 33-year-old Williams - who will be trying to secure a rare calendar Grand Slam when the US Open begins on August 31 - blamed her stuttering form on an elbow injury she has had for several months.
"I haven't served much since the French Open because I've had an elbow problem," Williams said. "Even before the French I didn't serve much until the day before the tournament started.
"I've been dealing with that for a long time. I'll get through regardless.
"I don't know how I turned the match around. I got off to a super slow start. But I managed to start going for my shots. I just told myself to dig deep."
Williams won her 47th match against just two defeats this season.
"I just need to serve with aplomb, and I'm not doing that right now."
The 21-time Grand Slam singles champion improved to 20-4 at Cincinnati, the last major event prior to the start of the year's final Grand Slam at Flushing Meadows.
She will be playing her third Cincinnati final in a row and aiming for her fifth title this season. She hammered nine aces but had eight double faults.
Halep has beaten Williams twice in the last two seasons, including an Indian Wells semi-final in March. She goes into the final without pressure but dealing with some pain in her left leg.
"I have the pain but it doesn't matter when I play well. I only have one more match here and then I can recover for the Open," said Halep.
"Serena is the best player and I have no pressure. Reaching number two doesn't matter to me much.
"I just want to win the match. I have confidence to win, maybe that's why I played my best tennis tonight."
Results on the seventh day of the ATP and WTA Cincinnati Masters on Saturday (x denotes seeded player):
Novak Djokovic (SRB x1) bt Alexandr Dolgopolov (UKR) 4-6, 7-6 (7/5), 6-2
Roger Federer (SUI x2) bt Andy Murray (GBR x3) 6-4, 7-6 (8/6)
Serena Williams (USA x1) bt Elina Svitolina (UKR x14) 6-4, 6-3
Simona Halep (ROM x3) bt Jelena Jankovic (SRB) 6-1, 6-2