The 28-year-old will arrive at Vicarage Road from Malaga, for whom he has made over 60 appearances over the last three seasons.
Speaking earlier in the week about the Morocco international, Watford head coach Quique Flores said: "He has the qualities of the players we like.
"He can play at number 10, he holds the ball, he can turn quickly with the strength of a striker and escape the defensive line.
"He can also play as a winger because he has that pace and velocity - the power that adds to the options of a team."
Amrabat has played for a host of clubs during his career, including PSV Eindhoven and Galatasaray.