With Hapoel, he won the 2009–10 Israel State Cup and the 2009–10 Israeli Premier League title after a dramatic match against the fierce rivals Beitar Jerusalem in the last round of the season, in which he scored the winning goal in the 92nd minute.
On 21 January 2013, after over a month of speculation in the media, Maccabi Tel Aviv announced his arrival, signing him on a three-and-a-half-year contract[16] for €250,000.
On 5 August 2015, Zahavi scored two goals against Czech team Viktoria Plzeň in a 2–0 away victory in the second leg of the third qualifying round after Maccabi lost at home 2–1.
On 19 August 2015, Zahavi scored a brace, including a 96th-minute equaliser, in a 2–2 draw against Swiss side Basel at St. Jakob-Park in the first leg of the Champions League playoffs.
[20] On 25 August, during the second leg at Bloomfield, he scored a 24th-minute equaliser as the match ended 1–1, a result that sent Maccabi to the Champions League group stage due to the away goals rule.
[23] On 29 June 2016, Zahavi joined Guangzhou R&F of the Chinese Super League, making him the second Israeli footballer in China after Liron Zarko.
[25] On 2 July, Zahavi made his debut coming on from the bench at the 60th minute playing against Shijiazhuang Ever Bright with the score a 1–1 draw.
[26] On 13 July, Zahavi scored a hat-trick in 19 minutes in the Chinese FA Cup match against Hebei China Fortune, coming on from the bench in the second half and helping R&F to a 3–0 win.
[36][37] On 2 March, during round 1 of the 2018 CSL season, Zahavi scored a hat-trick and assisted one goal in the 5–4 away win against reigning champions Guangzhou Evergrande Taobao.
[41][42] On 21 July 2021, Zahavi scored a hat-trick and made an assist in a 5–1 win against Galatasaray, in the first leg of the UEFA Champions League second qualifying round match.
[48] In June 2022, Zahavi returned to Maccabi Tel Aviv on a two-year contract, having previously played for the Israeli Premier League side between 2013 and 2016.
[56] On 14 October 2020, during a 2020–21 UEFA Nations League B match against Slovakia, Zahavi scored three goals in the span of 20 minutes to bring Israel from 0–2 behind to a 3–2 win.
[58] On 1 September 2021, Zahavi scored his fourth international hat-trick in an away match of the 2022 FIFA World Cup qualifiers, earning Israel a 4–0 win against Faroe Islands.
[61] On 15 September 2022, it was announced that Zahavi went on hiatus from the Israel national team due to hotel room dispute prior to an international duty break.
[68] On 9 May 2021, ahead of the Eredivisie match between his club PSV Eindhoven and Willem II, two armed robbers broke into Zahavi's house in Amsterdam, tying up his wife Shay (née Levy) and three children.