Dan Evans’ bid for his second ATP title was dashed as Spain’s Roberto Carballes Baena came from a set down to reach the Grand Prix Hassan II final in Morocco.
The British number two, 32, looked on course for his fourth ATP final when he won the first set in Marrakech.
However, world number 82 Baena fought back to beat 30th-ranked Evans 2-6 6-4 6-2 and reach Sunday’s final.
Elsewhere, Britain’s Francesca Jones was beaten in her first WTA semi-final by Tatjana Maria at the Copa Colsanita.
Jones, 22, was beaten 6-3 6-4 by Germany’s defending champion Maria either side of a lengthy rain delay.
Before travelling to Morocco, Evans had been on a six-match losing streak since winning in the second round of the Australian Open in January.
The Briton’s only ATP title came at Melbourne’s Murray River Open in February 2021 and his other two finals also came on the 250 Series.
Baena, who won the 2018 Ecuador Open in his only previous ATP final, will now play Alexandre Muller of France, ranked 126th in the world.
Elsewhere, world number five Casper Ruud reached his first final of the season at the Estoril Open.
Norway’s Ruud, runner-up at last year’s French and US Opens, beat France’s Quentin Halys 6-4 3-6 7-6 (7-2) to set up a final against Miomir Kecmanovic.
At the Charleston Open, Tunisia’s world number five Ons Jabeur reached Sunday’s final with a 7-5 7-5 victory over Russia’s Daria Kasatkina.
Rain meant the second semi-final between Jessica Pegula and Belinda Bencic was suspended.
Switzerland’s Bencic was leading 7-5 6-6 – though American Pegula was 4-2 up in the tiebreak.