The midfielder moves to Turin on an initial loan deal, which the Old Lady have paid €4.5m for.
If certain sporting objectives are met, Juventus will be obligated to buy McKennie, 22, for €18.5m next summer.
If those objectives are not met, then the obligation will turn into an option to buy for Juve.
Furthermore, Schalke could receive an extra €7m in performance-based bonuses over the span of his contract.
— JuventusFC (@juventusfc) August 29, 2020
McKennie joined Schalke from FC Dallas in 2016 and made 91 competitive appearances for the Gelsenkirchen club, scoring five goals and delivering seven assists.
He has been capped 19 times by the United States national team with a return of six goals.