The American was one of the few standout performers for the German Bundesliga side in the second half of the season, who excelled even as his David Wagner's side struggled for form.
The 22-year-old will join for an initial fee of €18.5m with an additional €7m available in performance-related add-ons. The fee will be paid over the second, third and fourth years of his contract, providing that sporting conditions are met which will trigger Juve's obligation to make the deal permanent.
McKennie established himself as Schalke's first-choice defensive midfield player across the season and will provide Juventus with a physical midfield presence as new coach Andrea Pirlo looks to make his mark on the side, having lost Blaise Matuidi to Inter Miami.
McKennie played 2,077 Bundesliga minutes and averages 61.6 touches P90, 2.1 interceptions P90 and 7.5 recoveries P90. He also wins 2.9 aerials P90 as well as 6.3 duels.