After opting to bat first, CSK were off to a good start with Brendon McCullum hitting a quickfire 23. He was dropped on 11 by Harbhajan Singh at backward square but failed to capitalise on the start and got out to Vinay Kumar.
Suresh Raina playing his 150th game for CSK was removed by Jagadeesha Suchith for 10.
Dwayne Smith departed for 27 as CSK failed to build on a brisk start as Hardik Pandya took his third catch of the night in the deep.
Faf du Plessis and MS Dhoni rebuild the innings for CSK as the duo combined for a 39-run stand before Lendl Simmons took a good catch at short fine leg off Mitchell McClenaghan to remove du Plessis.
Pawan Negi, promoted higher up the order, did not disappoint and scored 36 off just 17 balls.
Along with MS Dhoni (39* off 31 balls), Negi combined for a 54-run stand in just 4.3 overs to help CSK to 158 for 5.
Lendl Simmons and Parthiv Patel provided a blazing start to the chase by combining for an 84-run stand for the opening wicket in just 10.1 overs.
Ravichandran Ashwin brought CSK back in the game by removing both the well-set batsmen in one over. He finished with impressive figures of 4-0-17-2.
MI lost their way in the chase losing Kieron Pollard to a run-out and despite Faf du Plessis missing a straight forward catch, MI were behind the 8-ball going in to the slog overs.
Rohit Sharma was the third Mumbai Indians' batsman to throw his wicket away at a crucial juncture in the match as CSK came back strongly in defence of 158.
With 34 runs needed off 17 balls after Rohit Sharma's departure, Ambati Rayudu upped the ante and remained unbeaten on 34 off 19 balls.
21-year-old Hardik Pandya (21* off 8 balls) hit three sixes in the 19th over bowled by Pawan Negi and took his team home with four balls remaining.