Scherzer can opt out of the contract after the second season of the deal, the sources said.
The $43.33 million average annual salary of the deal sets a record, surpassing the $36 million New York Yankees pitcher Gerrit Cole is averaging after signing a nine-year, $324 million contract in 2019.
Scherzer, 37, becomes the oldest player in MLB history to sign a $100 million contract, according to ESPN Stats & Information. Kevin Brown was 33 when he signed the first $100 million deal in MLB history in 1998.
The Mets have gone on a spending spree over the weekend, signing center fielder Starling Marte, infielder Eduardo Escobar and outfielder Mark Canha to deals worth a combined $124.5 million.
And after seeing starters Noah Syndergaard and Steven Matz sign with other clubs in the past two weeks, new owner Steve Cohen wasn't going to be denied one of the best pitchers available in Scherzer.
Scherzer joins a Mets rotation fronted by two-time National League Cy Young Award winner Jacob deGrom, who didn't pitch after July 7 last season because of concerns with his elbow -- although a late-season MRI showed that his elbow was healthy.
Scherzer, a three-time Cy Young Award winner, was among the preeminent pitchers of the 2010s -- along with Justin Verlander and Clayton Kershaw -- and has rolled his dominance into the 2020s.
In 2021, during his age-36 season, Scherzer went 15-4 with a 2.46 ERA in 179 innings for the Washington Nationals and the Los Angeles Dodgers, striking out 236 batters and walking only 36. He ultimately finished third in NL Cy Young Award voting, marking the eighth time in the past nine years he has finished within the top five.
During that stretch, which dates back to 2013, Scherzer has posted a 2.82 ERA while averaging 15 wins and 192 innings per season (even though the 2020 season was shortened to 60 games because of the coronavirus pandemic). His 51.2 FanGraphs WAR since then leads all pitchers.
Scherzer was originally the 11th overall pick in the 2006 draft by the Arizona Diamondbacks, who flipped him to the Detroit Tigers three years later in a major three-team trade that saw Curtis Granderson, Edwin Jackson and Ian Kennedy, among others, switch teams.
In Detroit, Scherzer formed a devastating duo with Verlander on perennial playoff teams that often fell just short of a championship. He joined the Nationals on a seven-year, $210 million free-agent deal in January of 2015 and somehow outperformed his contract over the course of six-plus seasons, a highly impressive run that culminated in winning the 2019 World Series.
The Dodgers acquired Scherzer alongside middle infielder Trea Turner in late July 2020 in exchange for their two best remaining prospects, catcher Keibert Ruiz and pitcher Josiah Gray. Scherzer dominated initially, with a 0.78 ERA through his first nine starts, but his arm was slow to recover from being used in the ninth inning of Game 5 of the National League Division Series against the San Francisco Giants.
Scherzer languished through Game 2 of the National League Championship Series against the Atlanta Braves, later saying his arm was still tired from his relief appearance three days earlier. He was initially scheduled to start again in Game 6 but was pushed back to Game 7 because of lingering soreness -- then watched the Dodgers get eliminated in Game 6, abruptly ending another dominant Scherzer season.
Scherzer is 190-97 with a 3.16 ERA in 14 major league seasons. He has 3,020 strikeouts, which ranks 18th on the all-time list.
The addition of Scherzer moved the Mets' odds at Caesars Sportsbook to win the 2022 World Series to 14-1, tied for the sixth-shortest odds to win the championship.
ESPN's Alden Gonzalez contributed to this report.
How did the Mets land Max Scherzer?
Jeff Passan reports on Max Scherzer finalizing a massive 3-year deal with the Mets.