Navas, 27, underwent a successful medical in New York where he is currently with the Spain squad.
Navas was a one-club man - he has spent the last 10 years with Sevilla, making 393 appearances and scoring 34 goals.
Ahead of Spain's friendly with Ireland, Navas has won 23 Spain caps and was part of the squad which won the World Cup and European Championships.
Navas told the club website: "Manchester City is an exciting project and this is the right moment for me to take this step. I'm very happy with the opportunity and the decision.
"The Premier League is a competition where the football is very fast and will suit the way I play. I'm really looking forward to it.
"I'm going to a great club in England and I want to continue developing my game there. The club has put a lot of faith in me and I want to repay them out on the pitch."
Navas won the Europa League or UEFA Cup twice with Sevilla, plus the Super Cup and two Copa del Rey titles.
He becomes City's second signing of the summer, following the arrival of Fernandinho from Shakhtar Donetsk last week.