With a possible lockout on the horizon, it's been mostly business as usual on the free agent market — so far.
Detroit signed left-hander Eduardo Rodrguez. Houston retained star righty Justin Verlander. Noah Syndergaard went from the Mets to the Angels on an expensive one-year deal.
The deadline to accept qualifying offers came and went last week, further clarifying who was heading to the open market.
It remains to be seen whether the uncertainty about the next labor agreement will affect offseason moves for the top players available, but it's clear there are plenty of good options for teams looking to upgrade.
Here's a look at baseball's top free agents by position. Players' current ages are in parentheses:
Carlos Rodon, White Sox (28)
It's a toss-up between Rodon and Robbie Ray. Rodon didn't really threaten Ray in the Cy Young vote, but his ERA was about a half a run lower and he's also younger. And Ray received a qualifying offer while Rodon did not, so that may make Rodon a more enticing target.
Other options: Ray rebounded impressively from a poor 2020, but he isn't some one-year wonder. He was very good in 2017 as well. Clayton Kershaw has never pitched for anyone but the Dodgers, but he's available now and at age 33 can still be effective if healthy.
Aaron Loup, Mets (33)
Loup went 6-0 with a 0.95 ERA in 65 appearances. Opponents hit .192 off him.
Other options: Andrew Chafin was impressive last season for both the Cubs and Athletics. Tony Watson cut down on the walks after being traded from the Angels to the Giants.
Max Scherzer, Dodgers (37)
No signs yet of any major decline for Scherzer despite his age. He's had an ERA at 3.15 or lower in eight of the last nine seasons — the only time it was higher was in the shortened 2020 campaign.
Other options: Kevin Gausman was good in 2020 and looked like a Cy Young contender this year until a second-half stumble. Marcus Stroman gave the Mets a 3.02 ERA during 33 starts in 2021.
Raisel Iglesias, Angels (31)
Iglesias saved 34 games for Los Angeles, and things did not go smoothly for the Cincinnati bullpen after he left. He's had at least 30 saves in each of the past three non-shortened seasons.
Other options: Kenley Jansen seemed to be slipping after three straight years with an ERA over 3.00. Then he lowered it to 2.22 this year and held opponents to a .153 average. Tampa Bay signed Collin McHugh before last season, and that alone is a good endorsement of a reliever's potential. He went 6-1 with a 1.55 ERA.
Yan Gomes, Athletics (34)
There aren't any star catchers available this year, but Gomes can provide a bit of pop.
Other options: Roberto Pérez hit 24 homers in 2019 and then batted under .200 in 2020 and 2021. Robinson Chirinos hit double-digit homers three straight seasons from 2017-19 but has played only 71 games since.
Freddie Freeman, Braves (32)
Losing Freeman would be a major downer for the World Series champions, but the five-time All-Star and 2020 MVP will obviously command a big price. Even at first base it's hard to find this kind of consistent production.
Other options: Anthony Rizzo's OPS has been under .800 the past two seasons, but he's the only other big name available at first. Brad Miller is coming off a 20-homer season in Philadelphia but is unlikely to provide a high batting average.
Marcus Semien, Blue Jays (31)
Let's list Semien as a second baseman — where he mostly played this season — and avoid a tough decision at shortstop. Semien hit 45 home runs this year while playing all 162 games, and he finished third in the MVP vote. He has the most WAR of any player in baseball since the start of the 2019 season, according to Baseball-Reference.com.
Other options: César Hernandez hit 18 home runs for Cleveland this season before being traded to the White Sox. Donovan Solano's offensive numbers dipped slightly this year but he was a solid contributor for the 107-win Giants.
Eduardo Escobar, Brewers (32)
Escobar hit 28 home runs this year in the first full season since he slugged 35 in 2019. He played a bit at first, second and shortstop in addition to third.
Other options: Kyle Seager got a big ovation from Seattle fans at the last game of this season — they were apparently well aware that he might be moving on to another team. Jonathan Villar's stolen base numbers aren't what they used to be, but he can still provide double-digit homers.
Carlos Correa, Astros (27)
Correa made his big league debut at age 20 and reaches free agency well shy of his 30th birthday.
That makes him a good bit younger than some of the other top players on this list, and he may be the most sought-after name this offseason.
Other options: There are plenty of good shortstops available this year. Corey Seager is also 27, and Trevor Story just turned 29. Javier Baez turns 29 on Dec. 1.
Starling Marte, Athletics (33)
Kris Bryant, Giants (29)
Nick Castellanos, Reds (29)
Marte did what he could to help the A's down the stretch, and he ended up with an .841 OPS this year for Oakland and Miami.
Bryant doesn't turn 30 until January and can obviously play third base in addition to the outfield.
Castellanos set career highs in homers (34), batting average (.309) and OPS (.939) this year.
Other options: Avisail Garca hit a career-high 29 homers for Milwaukee and is only 30 years old. Chris Taylor remained productive for the Dodgers while playing six positions. Japanese slugger Seiya Suzuki hit 38 homers this season with the Hiroshima Toyo Carp.
Nelson Cruz, Rays (41)
Cruz may finally be slowing down, but only a little. He hit 32 homers this year but posted an .832 OPS, his lowest since 2012.
Other options: Kyle Schwarber finally ended up with an American League team when he was traded from Washington to Boston. He can play the outfield, but he's known for his bat, and his role will likely depend on where he goes and what the rules are. Mitch Moreland spent a lot more time at DH than at first base this year, and his offensive numbers dipped significantly.