The 30-year-old defender has not featured for the Citizens since a dispute with Pep Guardiola over playing time 18 months ago.
Since then, Cancelo has been sent on loan to Bayern Munich and Barcelona, and while he is currently back training with the Premier League champions, he has been left out of their matchday squads for the first two games of this season.
City signed Cancelo from Juventus in 2019 as part of a £60m deal, and at one point, the full-back was regarded as one of the best in the world in his position under Guardiola's guidance.
The Portuguese international has made 154 appearances for the Citizens, scoring nine goals and providing 21 assists in that time.
Al-Hilal waiting on Cancelo transfer decision
Reports last week indicated that Al-Hilal had tabled a formal bid for Cancelo as they look to replace Saud Abdulhamid, who is on the verge of a move to Serie A giants Roma.
According to the Daily Mail, Man City and Al-Hilal have held positive talks over the past week and have now agreed to a fee of around £30m for the 30-year-old full-back.
The report adds that the Portugal international would prefer a move back to Barcelona and had been stalling negotiations with the Saudi giants to try and secure a move to Catalonia.
However, given Barca's financial difficulties, and with the club having now splashed out close to £50m to sign Dani Olmo, it is understood that Cancelo is expected to make a final decision on a move to the Middle East in the coming days.
Cancelo is believed to have been offered an £18m-a-year contract to move to Riyadh, where he will join the likes of countryman Ruben Neves, Brazilian superstar Neymar and former Fulham talisman Aleksandar Mitrovic.
The 30-year-old currently earns £250,000 gross per week and his existing deal at the Etihad Stadium runs until the summer of 2027, having signed a two-year extension at the start of 2022.
What next for Joao Cancelo and Man City?
While Cancelo may prefer to remain in Europe, there is a growing sense that a move to the Middle East this summer is the best solution, both for himself as well as Man City.
Guardiola was asked about his plans around the defender's involvement in the team ahead of the Citizens' opening match of the season against Chelsea. The City boss said: "He's training with us, yes, we will see.
"Maybe stay, maybe go on loan. He loves to play football and train, we will see. It can happen, yes. In training, we say hi and we talk.
"What is going to happen depends on his agent. In the end, we have to say we will treat him like all the other players - with respect and do the best with the amount of qualities he has.
"I have never doubted his quality, but we will have to see what happens," Guardiola added.