The Sunrisers Hyderabad survived a Shane Watson hat-trick to see off the Rajasthan Royals by 32 runs in a low-scoring contest in Ahmedabad.
Royals captain Watson picked up a wicket at the end of his first over and then two immediately at the start of his second to help restrict the Sunrisers to 134-9 from their 20 overs.
However, that score proved more than enough against a Rajasthan line-up that never recovered from losing their top four with only 41 runs on the board.
They were eventually bowled out for 102 with a ball to spare to miss out on joining Kings XI Punjab and Chennai Super Kings in a three-way share for top spot in the Indian Premier League table.
Bhuvneshwar Kumar was the pick of an excellent Hyderabad attack with 4-14, the India seamer striking with just his third ball when he had Ajinkya Rahane caught at backward point before a run had been scored.
He then claimed three victims in the 18th over, starting with the dangerous James Faulkner being taken at long-on by his fellow Australian, Aaron Finch. Rajat Bhatia slogged the next delivery out to David Warner in the deep, while Kumar held a return catch to send back Kane Richardson.
By that stage the Royals were already well up against it, however, as their last real remaining hope of pulling off a successful run chase disappeared when Dale Steyn dismissed Steven Smith for 22.
A back-pedalling Irfan Pathan held on to end Smith's knock, with the favour returned by Steyn when he caught out Pravin Tambe off Pathan's bowling to finish the match.
It all meant Watson's treble was in a losing cause. The Australia all-rounder had sent back skipper Shikhar Dhawan for a top score of 33 to finish the fourth over, then returned to the attack in the 17th to dismiss compatriot Moises Henriques and Karn Sharma with successive balls.
Bhatia also picked up a three-wicket haul for Rajasthan while wicketkeeper Sanju Samson ran out Steyn and Amit Mishra in a frantic final over that saw Pathan end it unbeaten on 21.