Ajax said the Morocco winger will join Chelsea on July 1 after finishing the season. Chelsea said personal terms with Ziyech have yet to be concluded.
Ziyech was a key player for Ajax in its run to the Champions League semifinals last season, often cutting inside from the right flank. He also won the Dutch league last year and was Dutch player of the season in 2018.
He has scored 49 goals in 160 competitive games for Ajax since arriving from Twente in 2016.
Ajax could receive another 4 million euros ($4.3 million)