The 22-year-old have penned a contract with the Manchester giants which would keep him at the club at least until 2022.
Manchester City confirmed the news of Twitter as well as on their official website. The tweet read:
The official club statement read: "Manchester City are delighted to announce the permanent transfer of John Stones from Everton."
Speaking about his move to the club, John Stones told mancity.com: "I'm absolutely delighted to sign for City and now the deal's done I'm looking forward to the next stage in my career.
"I've obviously seen what's going on here at the Etihad, it's an ambitious Club with a great manager so I can't wait to get stuck in and help achieve the goals.
"I know it will be tough getting a place in this team but I'm determined to become the best player I can be and help us to success.
"I had a wonderful time with Everton and wish them and their fans all the best but now I'll give my all for City."
Club manager Pep Guardiola sounded excited as they roped in the talented defender. He said: "We want to help John show his quality with us and improve on what he has already achieved.
"I like the way he plays the game and I'm looking forward to welcoming him into the squad."
Manchester City, Director of Football, Txiki Begiristain said: "John is an excellent young English defender and we are all really pleased he is joining us. We have worked hard to bring him to City and we feel we are signing one of the best central defenders in Europe."