Goncalves opens scoring
Portuguese forward Esmael Goncalves opened the scoring in the 15th minute, before putting Chennaiyin two-up by converting a penalty in the 21st minute.
However, a Diego Mauricio screamer in the 64h minute gave Odisha hope but Chennaiyin held on for a 2-1 win, which lifted them all the way to fifth place.
Goncalves had the chance to put his team ahead in the fifth minute when he got in behind the Odisha defence, but with only keeper Arshdeep Singh to beat, he blasted his chance over.
However, he made amends for that ten minutes later with a well-taken goal. Gaurav Bora failed to deal with a long ball from Rahim Ali and it fell towards Goncalves, who did not make a mistake this time.
CFC double lead
Before Odisha had the chance to react to going behind, Chennaiyin doubled their lead. Bora was again at fault, hacking down Anirudh Thapa in the box. Goncalves stepped up to take the spot-kick and sent Arshdeep the wrong way.
Chennaiyin defended well after securing a comfortable lead as Odisha struggled to fashion clear-cut chances. The closest they got in the first half was in the 37th minute when Manuel Onwu found himself with the ball at his feet and a sight on goal, but his shot was wide.
Odisha pull one back
With a couple of early inroads into the Odisha box, Chennaiyin looked the team likelier to score. However, Mauricio, who replaced Marcelo Pereira at halftime, had other plans as he pulled one back for his team in spectacular fashion with a long-range curler.
Chennaiyin had a great opportunity to restore their lead late on when Lallianzuala Chhangte, after an excellent run, squared the ball to substitute Thoi Singh. However, the veteran, despite only having the keeper to beat, failed to get his shot on target.
Kaith pulls off superb save
Odisha almost took advantage of this in the 85th minute when Daniel Lalhlimpuia managed to get a shot in from just outside the box. However, keeper Vishal Kaith pulled off an excellent diving save.
Odisha piled on the pressure in the closing minutes but were unable to find the equaliser.