Bradley spent all eight of his previous seasons with the Boston Red Sox, joining the organization in 2011, when he was drafted 40th overall.
Bradley batted .283 with seven home runs, 22 RBIs, five stolen bases, an .814 OPS and a career-low K rate (22.1%) in 55 games in 2020.
The 30-year-old is an elite center fielder. He won a Gold Glove in 2018, and his acrobatic catches in Fenway are a staple of highlight films.
He has some power in his bat -- in the 2018 American League Championship Series against Houston, Bradley had a two-run homer and a grand slam, helping him earn MVP honors for that series. And he is a streaky hitter -- in 2016, he hit safely in 29 straight games. But his tendency to pull too much has led to mediocre batting averages. He's a career .239 hitter, with 98 home runs, 376 RBIs and a .732 OPS. He was an All-Star in 2016.
Bradley, who is represented by agent Scott Boras, was on an $11 million, one-year deal with the Red Sox in 2020, but that number was prorated because of the shortened season.
This move continues the Brewers' offseason emphasis on defense.
The Brewers already added former St. Louis Cardinals second baseman Kolten Wong, a Gold Glove winner each of the past two seasons. Wong signed a two-year, $18 million contract with a 2022 team option after the Cardinals declined to pick up their $12.5 million option on him.
Bradley's addition seemingly gives the Brewers four potential starters for three outfield spots.
The Brewers already have 2019 Gold Glove center fielder Lorenzo Cain, who opted out after playing five games last season but is back in spring training camp now. Christian Yelich, the 2018 NL MVP, is set in left field.
Milwaukee also brings back Avisail Garcia, who usually has played right field but took over in center last year after Cain's exit. Garcia batted .238 with a .659 OPS in 53 games last season but had a .796 OPS with 20 homers two years ago with Tampa Bay.
Since the NL is expected to go without a designated hitter this season, the Brewers would seem to have a surplus of outfielders accustomed to starting, unless they make another move in the next few weeks.
Bradley has played center for 781 of his 873 career games, though he has made infrequent appearances at the other corner-outfield spots. Cain has played center in about 90% of his career games, though he also has made 157 appearances in right field.
Bradley and Yelich are left-handed hitters, while Cain and Garcia bat from the right side.
This move leaves the Red Sox without any of the starting outfielders from their 2018 team that won the World Series. They traded right fielder Mookie Betts to the Dodgers last year and sent left fielder Andrew Benintendi to the Kansas City Royals last month.
Bradley had been with the Red Sox since their 2013 World Series championship season, though he didn't appear in a postseason game that year.
Red Sox manager Alex Cora called Bradley a "solid player, better person" on Thursday.
"He has a fan from afar," Cora said. "I will be paying attention and, obviously, off the field, we are going to keep having a relationship."
The Brewers are chasing their fourth consecutive playoff berth this season. They made the playoffs last year with a 29-31 record despite never being above .500 all year, though they lost to the eventual World Series champion Los Angeles Dodgers in the opening round.
Bradley's deal with the Brewers was first reported by the Boston Globe.
Information from The Associated Press was used in this report.