Born in Bandar Lengeh, Esmaeili started his career with Badr Hormozgan from youth levels. In the summer 2011, he joined Fajr Sepasi U-20 and after a good season[2] he was promoted to the first team.[3] Esmaeili made his debut for Fajr Sepasi in a 6–1 win against Damash on 15 September 2012.[4] He spent three years with Fajr Sepasi in Shiraz.
Esteghlal
Esmaeili with Esteghlal, 2020
On 5 July 2015, Esmaeili joined Iranian Pro League club Esteghlal on a three-year contract.[5][6] He scored his first goal for Taj against Sepahan with a long-distance shot in a 3–0 away win. Esmaeili scored a goal and assisted one during Esteghlal's 3–2 win in Tehran derby against Persepolis on 12 February 2017[7] and was named as best player of the match. He played regularly for Esteghlal under the management of Alireza Mansourian. Under German coach Winfried Schäfer, he was one of the most successful players in Iran, he also was selected as one of the best players and the top assists at the 2018 AFC Champions League.[8][9][10] He finished his third season with the team with six goals and assisted 13 times in 34 games. Esmaeili made significant strides in his ability as a playmaker, also forming a formidable partnership with his teammates, the Uzbek Server Djeparov and the Senegalese Mame Thiam. He scored 6 goals and had 5 assists in 35 matches in his last season with the club. In August 2021, Esmaeili was linked to his move to rival Persepolis and an Emirati team.[11][12] In October 2021, he joined Qatari side Al-Arabi as a free agent, replacing of his injured compatriot Mehrdad Mohammadi.[13]
Esmaeili is good on the ball with both feet and his direct running at players.[8] In his early beginnings, he played as a forward, but was converted into a midfielder after moving to Fajr Sepasi. Esmaeili showed his best performance when playing as an attacking midfielder or as a winger. He played as an defensive midfielder on occasion for his ability to retrieve the ball, so Esmaeili is considered a utility player.[17]