Dominic Thiem ended Roger Federer’s bid for a record sixth Indian Wells title with a battling three-set victory.
The Austrian seventh seed fought back to beat Federer 3-6 6-3 7-5.
Swiss Federer, a 24-time Grand Slam champion, converted just two of 11 break points and made 32 unforced errors to Thiem’s 25.
Thiem collapsed onto his back in delight as he secured his first title since September 2018 and his first at a Masters 1000 event.
Thiem will rise to fourth in the world rankings on Monday.
Federer, who lost last year’s final in California to Juan Martin del Potro, made a confident start.
He created early break opportunities in Thiem’s first service game and converted his fourth break point of the opening set for a 2-0 lead.
Thiem, competing in his third Masters 1000 final, forced the error out of Federer’s backhand to get back on serve, but the Swiss kept him under pressure.
A fine backhand return of serve allowed Federer to break for a 5-3 lead, and he closed out the set in 36 minutes.
Federer looked comfortable and quickly created another two break opportunities in the second set, but the 37-year-old squandered them both.
A poor service game, with Federer rushing his approaches to the net, allowed Thiem to break and the Austrian held his nerve to force an unlikely third set.
Thiem saved a break point in a game lasting eight minutes to hold for 4-4, and overcame a nasty fall to break Federer and serve for the title.
The Austrian won 70% of first-serve point and ensured victory as Federer sent a return into the net.
Federer, who won his 100th ATP title in Dubai in the week before Indian Wells, will move to fifth in the rankings.