The 31-year-old rejoined Werder, where he began his career, for a second spell in August 2016 and scored 32 goals in 84 Bundesliga appearances across the past three seasons.
Fenerbahce finished sixth in the Turkish Super Lig in 2018-2019 and head coach Ersun Yanal will be expected to improve the club's fortunes next term. Kruse will join a strike force that already includes Andre Ayew and Michael Frey.
A statement on Fenerbahce's official website said: "As a result of meetings with the German national football player Max Kruse, whose contract with the Werder Bremen club is ending, our club reached an agreement with the football player and signed a preliminary contract.
"Max Kruse will come to Istanbul within the next week and after the detailed health check, will sign the official contract that will connect him to our colours for three seasons."
Kruse, who was named Werder captain in 2018-2019, was linked with Bayern Munich, Tottenham Hotspur and Inter before Fenerbahce confirmed his switch to the Super Lig.