\n","providerName":"Twitter","providerUrl":"https://twitter.com","thumbnail_url":null,"type":"oembed","width":550,"contentType":"rich"},{"__typename":"Markdown","content":"Tatis is electrifying the league with his dynamic all-around talent. He's the deserving MVP frontrunner. But Soto? Soto is the best all-around hitter on the planet right now.\n\nLet's just take some time to appreciate what Soto is doing.","type":"text"},{"__typename":"Markdown","content":"#### **His baseball card stats are insane**\n\nSoto is one of 199 Major League hitters with 75 or more plate appearances this season. Here's how he ranks among those hitters.\n\nBatting average: .400 -- 3rd in MLB \nOn-base percentage: .487 -- 1st in MLB \nSlugging percentage: .815 -- 1st in MLB \nOPS: 1.302 -- 1st in MLB\n\nwOBA: .530 -- 1st in MLB \nwRC+: 236 -- 1st in MLB\n\nThose last two stats, weighted on-base average and weighted runs created plus, are all-in-one numbers to measure offensive performance. wOBA is like on-base percentage, but it gives you more credit for hitting a home run than, say, a single. A .400 wOBA is superstar level; the .500 range Soto is in is super-superstar level. wRC+ compares you to a league average hitter, with a 100 wRC+ being average. Soto's 236 wRC+ means he's been _nearly 2 1/2 times as good_ as an average Major League hitter. That's insane.\n\nSoto leads the world in almost every key hitting category that's not a counting stat. Besides the Ted Williams-esque .400 batting average, Soto is slugging like peak Aaron Judge and getting on base like peak Mike Trout -- he has seven home runs and 13 extra-base hits in his 18 games, and he's reaching base nearly half the time while walking as often as he strikes out.\n\nElite average and power and on-base skills? One of MLB's most dangerous hitters and one of its toughest outs? What more could you want?","type":"text"},{"__typename":"Video","contentDate":"2020-08-11T00:32:46.311Z","preferredPlaybackScenarioURL({\"preferredPlaybacks\":\"mp4AvcPlayback\"})":"https://cuts.diamond.mlb.com/FORGE/2020/2020-08/10/045f3058-3b91a427-95bda03f-csvm-diamondx64-asset_1280x720_59_4000K.mp4","type":"video","description":"Statcast measures the exit velocity and projected distance of Juan Soto's two-run home run at Citi Field","displayAsVideoGif":false,"duration":"00:00:40","slug":"juan-soto-s-463-ft-home-run","tags":[{"__typename":"GameTag"},{"__typename":"TeamTag","slug":"teamid-120","title":"Washington Nationals","team":{"__ref":"Team:120"},"type":"team"},{"__typename":"PersonTag","slug":"playerid-665742","title":"Juan Soto","person":{"__ref":"Person:665742"},"type":"player"},{"__typename":"TaxonomyTag","slug":"player-tracking","title":"Statcast","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"eclat-feed","title":"Eclat feed","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"1-yahoo-fantasy-feed","title":"1-Yahoo Fantasy Feed","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"international-feed","title":"International Partner feed","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"yahoo-fantasy","title":"Yahoo Fantasy","type":"taxonomy"}],"thumbnail":{"__typename":"Thumbnail","templateUrl":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/lajl8hcjtviquafbpumw"},"title":"Juan Soto's 463-ft. home run","relativeSiteUrl":"/video/juan-soto-s-463-ft-home-run"},{"__typename":"Markdown","content":"#### **His Statcast stats are even more insane**\n\nHow about top-of-the-scale quality of contact? The underlying data on what a hitter is doing doesn't always match up with the numbers in the box score. But with Soto, the Statcast stats are just as good. The stat sheet matches the hit tracking matches the eye test -- everything is in beautiful harmony.\n\nHere's a look at the big Statcast hitting stats for Soto this season.\n\n**Soto's 2020 Statcast numbers and rankings** \nAvg. exit velocity: 95.6 mph -- 2nd in MLB (to Tatis) \nHard-hit rate: 61.8% -- 2nd in MLB (to Tatis) \nBarrel rate: 20.0% -- 5th in MLB \n_Of hitters with 50+ batted balls in 2020_\n\nFirst are his exit velocity, hard-hit and barrel numbers. A hard-hit ball is anything with a 95-plus mph exit velocity; if you hit it that hard, good things will happen. A \"barrel\" requires both optimal exit velocity and optimal launch angle; if you hit the ball hard and drive it in the air, even better things will happen. Hard-hit balls get hits; barrels get extra-base hits and home runs.\n\nSoto doesn't square the ball up so often because he's a big masher built like Judge, but because he's a great pure hitter who knows what pitches to attack. He only chases 16% of pitches out of the strike zone, just outside the top 10 in baseball behind Joey Votto. And if the pitch isn't borderline? Forget it. Soto has only swung at six of the 116 pitches he's seen that were more than one baseball's width off the edge of the strike zone -- that's 5.2%, behind only notoriously disciplined former teammate Anthony Rendon and Brandon Nimmo for third-best in MLB. Soto takes balls with authority.","type":"text"},{"__typename":"OEmbed","html":"
\n\n","providerName":"Twitter","providerUrl":"https://twitter.com","thumbnail_url":null,"type":"oembed","width":550,"contentType":"rich"},{"__typename":"Markdown","content":"Now let's put Soto's hard contact and elite discipline together. We can do that by looking at his hard-hit and barrel rates on a per-swing and per-plate appearance basis.\n\nHard-hit rate per swing: 28.3% -- 1st in MLB \nBarrel rate per swing: 9.2% -- 2nd in MLB (to Mitch Moreland) \nHard-hit rate per PA: 44.7% -- 2nd in MLB (to Corey Seager) \nBarrel rate per PA: 14.5% -- 2nd in MLB (to Seager) \n_Of hitters with 100+ swings / 75+ PA in 2020_","type":"text"},{"__typename":"Video","contentDate":"2020-08-25T02:28:15.682Z","preferredPlaybackScenarioURL({\"preferredPlaybacks\":\"mp4AvcPlayback\"})":"https://cuts.diamond.mlb.com/FORGE/2020/2020-08/24/08dc9cf0-967921a1-6ecc8f9e-csvm-diamondx64-asset_1280x720_59_4000K.mp4","type":"video","description":"Juan Soto goes 4-for-5 at the plate with an RBI and also makes a great play in the field against the Marlins","displayAsVideoGif":false,"duration":"00:01:30","slug":"juan-soto-s-big-performance","tags":[{"__typename":"GameTag"},{"__typename":"TeamTag","slug":"teamid-120","title":"Washington Nationals","team":{"__ref":"Team:120"},"type":"team"},{"__typename":"PersonTag","slug":"playerid-665742","title":"Juan Soto","person":{"__ref":"Person:665742"},"type":"player"},{"__typename":"TaxonomyTag","slug":"highlight-reel-offense","title":"highlight reel offense","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"defense","title":"defense","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"highlight","title":"highlight","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"hitting","title":"hitting","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"young-stars","title":"Young Stars","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"international-feed","title":"International Partner feed","type":"taxonomy"},{"__typename":"TaxonomyTag","slug":"eclat-feed","title":"Eclat feed","type":"taxonomy"}],"thumbnail":{"__typename":"Thumbnail","templateUrl":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/dexhhwer1pb0iancxy3e"},"title":"Juan Soto's big performance","relativeSiteUrl":"/video/juan-soto-s-big-performance"},{"__typename":"Markdown","content":"Well over one in every four times Soto swings, the result is a hard-hit ball (not to mention that nearly one in every 10 of his swings produces a barrel, the best kind of contact). That puts him atop a very good leaderboard to be atop of.\n\n**Highest hard-hit rate per swing, 2020** \n_Minimum 100 swings_ \n**1) Juan Soto (WSH): 28.3%** \n2) Jake Cronenworth (SD): 24.6% \n3-T) Fernando Tatis Jr. (SD): 24.5% \n3-T) Corey Seager (LAD): 24.5% \n5) Robinson Canó (NYM): 23.9%\n\nThe hard-hit and barrel rate per swing leaderboards reflect Soto's biggest edge over Tatis as a hitter (Tatis has the edge over Soto in other ways, like his elite speed) -- Soto is more disciplined and doesn't waste as many swings, while still hitting the ball essentially as hard.\n\nA lot of high-slug, high-swing-and-miss power hitters make dangerous contact when they connect, but they're all-or-nothing. On the other side, contact hitters put the ball in play a lot but don't do damage. Both types of hitter can be good, even great -- the Giancarlo Stantons and Joey Gallos and David Fletchers and Luis Arraezes of the world -- but Soto is the best of both worlds.\n\nSoto makes great contact _and_ he makes a lot of contact. He rakes all the time, and he rakes all over the place -- his spray charts are things of beauty, especially his power to left-center field.","type":"text"},{"__typename":"Image","caption":null,"contextualCaption":null,"contextualAspectRatio":null,"credit":null,"contentType":"Photography","format":"png","templateUrl":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/pdwefwlan1gnbc8nyvf1","type":"image"},{"__typename":"Markdown","content":"There's one more trio of Statcast metrics to check out -- the ones that combine everything: expected batting average, expected slugging percentage and expected wOBA. Those take Soto's quality of contact and combine it with his walks and strikeouts to tell you what his numbers deserve to look like.\n\n**Soto's expected stats for 2020** \nxBA: .383 -- 2nd in MLB \nxSLG: .857 -- 1st in MLB \nxwOBA: .532 -- 1st in MLB \n_Of hitters with 75+ PA in 2020_\n\nSoto's expected stats somehow only confirm the absurd level of his actual stats. This is not a streaky hitter getting hot. This is a truly great hitter at full power.\n\n**Best hitters in MLB by expected wOBA, 2020** \n_Minimum 75 PA_ \n**1) Juan Soto (WSH): .532** \n2) Jake Cronenworth (SD): .507 \n3) Corey Seager (LAD): .488 \n4) Bryce Harper (PHI): .467 \n5) Luke Voit (NYY): .462 \n_MLB avg. xwOBA in 2020: .335_","type":"text"},{"__typename":"Video","contentDate":"2020-08-18T04:39:29.752Z","preferredPlaybackScenarioURL({\"preferredPlaybacks\":\"mp4AvcPlayback\"})":"https://cuts.diamond.mlb.com/FORGE/2020/2020-08/17/9976234e-8c1e2b38-050c489e-csvm-diamondx64-asset_1280x720_59_4000K.mp4","type":"video","description":"Statcast measures the exit velocity and projected distance of Juan Soto's towering home run against the Braves","displayAsVideoGif":false,"duration":"00:00:33","slug":"juan-soto-s-445-foot-homer","tags":[{"__typename":"GameTag"},{"__typename":"TeamTag","slug":"teamid-120","title":"Washington Nationals","team":{"__ref":"Team:120"},"type":"team"},{"__typename":"PersonTag","slug":"playerid-665742","title":"Juan Soto","person":{"__ref":"Person:665742"},"type":"player"},{"__typename":"TaxonomyTag","slug":"player-tracking","title":"Statcast","type":"taxonomy"}],"thumbnail":{"__typename":"Thumbnail","templateUrl":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/wrovxdixnquzcqwcr2ig"},"title":"Juan Soto's 445-foot homer","relativeSiteUrl":"/video/juan-soto-s-445-foot-homer"},{"__typename":"Markdown","content":"#### **He's somehow getting better**\n\nThe thing is, Soto has been doing great things ever since he played his first Major League game, from his accomplishments as a 19-year-old rookie to the way he demolished the best pitching in the world in the postseason at age 20 and led the Nationals to a World Series championship.\n\nNow at the ripe age of 21, he just keeps getting better. From 2018, to '19, to '20, Soto has improved across the board in essentially every stat, from traditional to advanced to Statcast metrics.","type":"text"},{"__typename":"Image","caption":null,"contextualCaption":null,"contextualAspectRatio":null,"credit":null,"contentType":"Photography","format":"png","templateUrl":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/lsiaczxroddfroythooo","type":"image"},{"__typename":"Markdown","content":"This is beyond a normal young player's development. Soto is already at the pinnacle of his craft as a hitter. Whatever you want to call it -- superstar level, MVP level, \"best hitter in the world\" level -- Soto is there right now.","type":"text"}],"relativeSiteUrl":"/news/juan-soto-best-all-around-hitter-2020","contentType":"news","subHeadline":null,"summary":"The beauty of Fernando Tatis Jr. and Juan Soto taking over the game of baseball is that two 21-year-old phenoms can both be so amazing as different types of superstars.\nTatis and Soto aren't just the best young stars in Major League Baseball. They're the best players. Luckily we get","tagline({\"formatString\":\"none\"})":null,"tags":[{"__typename":"InternalTag","slug":"storytype-article","title":"Article","type":"article"},{"__typename":"ContributorTag","slug":"david-adler","title":"David Adler","type":"contributor"},{"__typename":"TeamTag","slug":"teamid-120","title":"Washington Nationals","team":{"__ref":"Team:120"},"type":"team"},{"__typename":"PersonTag","slug":"playerid-665742","title":"Juan Soto","person":{"__ref":"Person:665742"},"type":"player"},{"__typename":"TaxonomyTag","slug":"player-tracking","title":"Statcast","type":"taxonomy"}],"type":"story","thumbnail":"https://img.mlbstatic.com/mlb-images/image/private/{formatInstructions}/mlb/ajfedo4ob0tiwmrofx3w","title":"Juan Soto is the best all-around hitter in baseball"},"getHeaderFromForgePath({\"contentSource\":\"MLB\",\"headerPath\":\"/_navs/header/mlb/global-nav\",\"paletteKey\":\"mlb-base-palette\",\"propertiesKey\":\"mlb-global-properties\"})":{"__typename":"Header","navigation":[{"__typename":"NavItem","customPropertiesString":"align:right;","icon":null,"linkTarget":null,"linkText":"MLB.TV","linkUrl":"https://www.mlb.com/tv?&affiliateId=mlbMENUtv","placement":"right","visible":"true","subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Buy MLB.TV Offseason Package","linkUrl":"/live-stream-games/subscribe?&affiliateId=mlbMENUtv","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Watch & Listen","linkUrl":"/live-stream-games?&affiliateID=mlbMENUtv","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB.TV Partners","linkUrl":"https://www.mlb.com/live-stream-games/partners?&affiliateId=mlbMENUtv","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Link Account","linkUrl":"live-stream-games/partners?&affiliateId=mlbMENUtv","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Help Center","linkUrl":"/live-stream-games/help-center?&affiliateID=mlbMENUtv","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"align:right;","icon":null,"linkTarget":null,"linkText":"Tickets","linkUrl":"/tickets","placement":"right","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"All-Star Tickets","linkUrl":"/all-star/tickets","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":"expires:1721167200;"},{"__typename":"NavItem","placement":null,"linkText":"MLB at Rickwood Field","linkUrl":"/events/rickwood/tickets","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":"expires:1718924400;"},{"__typename":"NavItem","placement":null,"linkText":"Spring Training","linkUrl":"/tickets/spring-training","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":"expires:1711511940;"},{"__typename":"NavItem","placement":null,"linkText":"Postseason Tickets","linkUrl":"/tickets/postseason","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Buy on SeatGeek","linkUrl":"https://seatgeek.com/mlb-tickets?aid=15994&pid=integration&rid=1&utm_medium=partnership&utm_source=mlb_sponsorship&utm_campaign=integration","linkTarget":"_blank","visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Sell on SeatGeek","linkUrl":"https://seatgeek.com/sell/mlb-tickets?aid=15994&pid=integration&rid=15&utm_medium=partnership&utm_source=mlb_sponsorship&utm_campaign=integration","linkTarget":"_blank","visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Season Tickets","linkUrl":"/tickets/season-tickets","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Single Game Tickets","linkUrl":"/schedule","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Group Tickets","linkUrl":"/tickets/group-tickets","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Special Ticket Offers","linkUrl":"/tickets/fan-value","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Speedway Classic","linkUrl":"/events/speedway-classic/tickets","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"VIP Ticket Packages","linkUrl":"/tickets/on-location-experiences","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Students","linkUrl":"/tickets/students","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Tourism","linkUrl":"/tourism","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB World Tour","linkUrl":"/international/events","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Ticket Terms & Conditions","linkUrl":"/tickets/terms-and-conditions","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"align:right;","icon":"shopping-cart","linkTarget":null,"linkText":"Shop","linkUrl":"https://www.mlbshop.com/?_s=bm-mlbcom-hp","placement":"right","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"MLB Online Shop","linkUrl":"https://www.mlbshop.com/?_s=bm-mlbcom-hp","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":""},{"__typename":"NavItem","placement":null,"linkText":"Auction","linkUrl":"https://auctions.mlb.com/iSynApp/showHomePage.action?sid=1101001&isynsharedsession=9mislq-18JnZhOEp-FeGzvUB3G6zxwkeKqwX99MKAttEdaSACl02r4aCDzYhNvUm","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Gift Cards","linkUrl":"https://www.mlbshop.com/gift-cards/x-462351+z-94899005-3509039474?_s=bm-mlbcom-Home","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":""},{"__typename":"NavItem","placement":null,"linkText":"MLB NYC Flagship Store","linkUrl":"/shop/nyc-retail-store","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"European Shop","linkUrl":"http://www.mlbshopeurope.com/stores/mlb/en?portal=MLTS66FS&CMP=PSC-MLTS66FS","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":""},{"__typename":"NavItem","placement":null,"linkText":"Photo Store","linkUrl":"https://photostore.mlb.com/","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"amp:true;mobile:true","icon":null,"linkTarget":null,"linkText":"News","linkUrl":"/news","placement":"mobile","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Rule Changes","linkUrl":"https://www.mlb.com/rule-changes-2023","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Probable Pitchers","linkUrl":"/probable-pitchers/","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Starting Lineups","linkUrl":"/starting-lineups","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Transactions","linkUrl":"https://www.mlb.com/transactions","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Injury Report","linkUrl":"/injury-report","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"World Baseball Classic","linkUrl":"/world-baseball-classic","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Draft","linkUrl":"/draft/2024","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"All-Star Game","linkUrl":"/all-star/","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Life","linkUrl":"/fans/mlb-life","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Pipeline","linkUrl":"https://www.mlb.com/pipeline","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Postseason History","linkUrl":"/postseason/history","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Great Stories","linkUrl":"/news/topic/longform","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Podcasts","linkUrl":"/fans/podcasts","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":null,"icon":null,"linkTarget":null,"linkText":"Watch","linkUrl":"/tv?&affiliateId=mlbMENU","placement":null,"visible":null,"subNav":[{"__typename":"SubnavColumn","title":"Video","navigation":[{"__typename":"NavItem","placement":null,"linkText":"Search","linkUrl":"/video","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Statcast","linkUrl":"/video/topic/statcast","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Network","linkUrl":"/network","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]},{"__typename":"SubnavColumn","title":"MLB.TV","navigation":[{"__typename":"NavItem","placement":null,"linkText":"Buy MLB.TV Postseason Package","linkUrl":"/live-stream-games/subscribe?&affiliateId=mlbMENU","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Watch & Listen","linkUrl":"/live-stream-games?&affiliateID=mlbMENU","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Help Center","linkUrl":"/live-stream-games/help-center?&affiliateID=mlbMENU","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"mobile:true;amp:true;","icon":null,"linkTarget":null,"linkText":"Scores","linkUrl":"/scores/2025-02-20","placement":"mobile","visible":"true","subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[]}]},{"__typename":"NavItem","customPropertiesString":"amp:true;mobile:true;","icon":null,"linkTarget":null,"linkText":"Schedule","linkUrl":"/schedule/2025-02-20","placement":"mobile","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"2025 Spring Training","linkUrl":"/schedule/2025-02-20","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"2025 Regular Season","linkUrl":"/schedule/2025-03-18","linkTarget":null,"visible":"true","icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"2024 Regular Season","linkUrl":"/schedule/2024-03-20","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"2024 Postseason","linkUrl":"/postseason","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Events","linkUrl":"/events","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Team by Team Schedule","linkUrl":"/schedule/team-by-team","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Sync Schedules","linkUrl":"https://mlb.ecal.com/","linkTarget":"_blank","visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"National Broadcasts","linkUrl":"/live-stream-games/national-broadcast-schedule","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"mobile:true;amp:true;","icon":null,"linkTarget":null,"linkText":"Stats","linkUrl":"/stats","placement":"mobile","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Statcast Leaders","linkUrl":"https://baseballsavant.mlb.com/statcast_leaderboard","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Statcast","linkUrl":"/statcast","linkTarget":"","visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Baseball Savant","linkUrl":"https://baseballsavant.mlb.com/","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Top Prospect Stats","linkUrl":"/prospects/stats/top-prospects?type=all&minPA=1","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"amp:true;","icon":null,"linkTarget":null,"linkText":"Standings","linkUrl":"/standings/wild-card","placement":null,"visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[]}]},{"__typename":"NavItem","customPropertiesString":null,"icon":null,"linkTarget":null,"linkText":"Youth","linkUrl":"/youth-baseball-softball","placement":null,"visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Play Ball","linkUrl":"/play-ball","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Youth Baseball & Softball","linkUrl":"/youth-baseball-softball","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"","icon":"group","linkTarget":null,"linkText":"Players","linkUrl":"/players","placement":null,"visible":"true","subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Prospect Rankings","linkUrl":"/prospects","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Depth Charts","linkUrl":"/team/roster/depth-chart","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"MLB Players Association","linkUrl":"https://www.mlbplayers.com","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Negro Leagues","linkUrl":"/history/negro-leagues","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":null,"icon":null,"linkTarget":null,"linkText":"MLB Play","linkUrl":"/play","placement":null,"visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Beat the Streak","linkUrl":"/play?gameId=BeatTheStreak2022","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Immaculate Grid","linkUrl":"/play?gameId=ImmaculateGrid2024","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Trivia","linkUrl":"/play?gameId=SporcleTrivia2024","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Pickle","linkUrl":"/play?gameId=Pickle2023","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"By the Numbers","linkUrl":"/play?gameId=ByTheNumbers2022","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Diamond Decisions","linkUrl":"/play?gameId=DiamondDecisions2024","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null},{"__typename":"NavItem","placement":null,"linkText":"Bingo","linkUrl":"/play?gameId=Bingo2023","linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":null}]}]},{"__typename":"NavItem","customPropertiesString":"expires:1720022400;","icon":null,"linkTarget":null,"linkText":"Vote","linkUrl":"/all-star/ballot?affiliateId=asb-topnav-mlb-2024","placement":null,"visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[]}]},{"__typename":"NavItem","customPropertiesString":"amp:true;module:teammodule;align:right;","icon":null,"linkTarget":null,"linkText":"Teams","linkUrl":"/team","placement":"right","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"Team Module","linkUrl":null,"linkTarget":null,"visible":null,"icon":null,"tooltip":null,"customPropertiesString":"module:teammodule;"}]}]},{"__typename":"NavItem","customPropertiesString":"align:right;lang:es;label:Español","icon":null,"linkTarget":null,"linkText":"ES","linkUrl":"/es","placement":"right","visible":null,"subNav":[{"__typename":"SubnavColumn","title":null,"navigation":[{"__typename":"NavItem","placement":null,"linkText":"日本語","linkUrl":"http://www.mlb.jp/","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":"lang:ja"},{"__typename":"NavItem","placement":null,"linkText":"한국어","linkUrl":"https://www.mlbkor.com/","linkTarget":null,"visible":"false","icon":null,"tooltip":null,"customPropertiesString":"lang:ko"}]}]}],"cfPalette":{"__typename":"CF_Palette","headerMastheadBackgroundColor":"#002D72","headerMastheadTextColor":"#ffffff","headerNavigationBackgroundColor":"#041E42","headerNavigationBorderColor":"#057AFF","headerNavigationTextColorHover":"#ffffff","headerNavigationTextColor":"#ffffff"},"cfWebProperties":{"__typename":"CF_WebProperties","urlLogo":null,"headerMastheadTagline":null,"headerPrimaryLogo":{"__typename":"CF_Asset","url":null,"description":null},"headerMastheadSponsorImage":{"__typename":"CF_Asset","url":null,"description":null},"headerMastheadTaglineContainerWidth":"512px","headerMastheadTaglineContainerHeight":"56px"}},"getTeamsBySportId({\"ids\":[1]})":[{"__ref":"Team:133"},{"__ref":"Team:134"},{"__ref":"Team:135"},{"__ref":"Team:136"},{"__ref":"Team:137"},{"__ref":"Team:138"},{"__ref":"Team:139"},{"__ref":"Team:140"},{"__ref":"Team:141"},{"__ref":"Team:142"},{"__ref":"Team:143"},{"__ref":"Team:144"},{"__ref":"Team:145"},{"__ref":"Team:146"},{"__ref":"Team:147"},{"__ref":"Team:158"},{"__ref":"Team:108"},{"__ref":"Team:109"},{"__ref":"Team:110"},{"__ref":"Team:111"},{"__ref":"Team:112"},{"__ref":"Team:113"},{"__ref":"Team:114"},{"__ref":"Team:115"},{"__ref":"Team:116"},{"__ref":"Team:117"},{"__ref":"Team:118"},{"__ref":"Team:119"},{"__ref":"Team:120"},{"__ref":"Team:121"}]},"Team:120":{"__typename":"Team","id":120,"division":{"__ref":"Division:204"},"name":"Washington Nationals","shortName":"Washington","teamName":"Nationals"},"Person:665742":{"__typename":"Person","id":665742},"Division:200":{"__typename":"Division","id":"200"},"Team:133":{"__typename":"Team","division":{"__ref":"Division:200"},"id":133,"name":"Athletics","shortName":"Athletics","teamName":"Athletics"},"Division:205":{"__typename":"Division","id":"205"},"Team:134":{"__typename":"Team","division":{"__ref":"Division:205"},"id":134,"name":"Pittsburgh Pirates","shortName":"Pittsburgh","teamName":"Pirates"},"Division:203":{"__typename":"Division","id":"203"},"Team:135":{"__typename":"Team","division":{"__ref":"Division:203"},"id":135,"name":"San Diego Padres","shortName":"San Diego","teamName":"Padres"},"Team:136":{"__typename":"Team","division":{"__ref":"Division:200"},"id":136,"name":"Seattle Mariners","shortName":"Seattle","teamName":"Mariners"},"Team:137":{"__typename":"Team","division":{"__ref":"Division:203"},"id":137,"name":"San Francisco Giants","shortName":"San Francisco","teamName":"Giants"},"Team:138":{"__typename":"Team","division":{"__ref":"Division:205"},"id":138,"name":"St. Louis Cardinals","shortName":"St. Louis","teamName":"Cardinals"},"Division:201":{"__typename":"Division","id":"201"},"Team:139":{"__typename":"Team","division":{"__ref":"Division:201"},"id":139,"name":"Tampa Bay Rays","shortName":"Tampa Bay","teamName":"Rays"},"Team:140":{"__typename":"Team","division":{"__ref":"Division:200"},"id":140,"name":"Texas Rangers","shortName":"Texas","teamName":"Rangers"},"Team:141":{"__typename":"Team","division":{"__ref":"Division:201"},"id":141,"name":"Toronto Blue Jays","shortName":"Toronto","teamName":"Blue Jays"},"Division:202":{"__typename":"Division","id":"202"},"Team:142":{"__typename":"Team","division":{"__ref":"Division:202"},"id":142,"name":"Minnesota Twins","shortName":"Minnesota","teamName":"Twins"},"Division:204":{"__typename":"Division","id":"204"},"Team:143":{"__typename":"Team","division":{"__ref":"Division:204"},"id":143,"name":"Philadelphia Phillies","shortName":"Philadelphia","teamName":"Phillies"},"Team:144":{"__typename":"Team","division":{"__ref":"Division:204"},"id":144,"name":"Atlanta Braves","shortName":"Atlanta","teamName":"Braves"},"Team:145":{"__typename":"Team","division":{"__ref":"Division:202"},"id":145,"name":"Chicago White Sox","shortName":"Chi White Sox","teamName":"White Sox"},"Team:146":{"__typename":"Team","division":{"__ref":"Division:204"},"id":146,"name":"Miami Marlins","shortName":"Miami","teamName":"Marlins"},"Team:147":{"__typename":"Team","division":{"__ref":"Division:201"},"id":147,"name":"New York Yankees","shortName":"NY Yankees","teamName":"Yankees"},"Team:158":{"__typename":"Team","division":{"__ref":"Division:205"},"id":158,"name":"Milwaukee Brewers","shortName":"Milwaukee","teamName":"Brewers"},"Team:108":{"__typename":"Team","division":{"__ref":"Division:200"},"id":108,"name":"Los Angeles Angels","shortName":"LA Angels","teamName":"Angels"},"Team:109":{"__typename":"Team","division":{"__ref":"Division:203"},"id":109,"name":"Arizona Diamondbacks","shortName":"Arizona","teamName":"D-backs"},"Team:110":{"__typename":"Team","division":{"__ref":"Division:201"},"id":110,"name":"Baltimore Orioles","shortName":"Baltimore","teamName":"Orioles"},"Team:111":{"__typename":"Team","division":{"__ref":"Division:201"},"id":111,"name":"Boston Red Sox","shortName":"Boston","teamName":"Red Sox"},"Team:112":{"__typename":"Team","division":{"__ref":"Division:205"},"id":112,"name":"Chicago Cubs","shortName":"Chi Cubs","teamName":"Cubs"},"Team:113":{"__typename":"Team","division":{"__ref":"Division:205"},"id":113,"name":"Cincinnati Reds","shortName":"Cincinnati","teamName":"Reds"},"Team:114":{"__typename":"Team","division":{"__ref":"Division:202"},"id":114,"name":"Cleveland Guardians","shortName":"Cleveland","teamName":"Guardians"},"Team:115":{"__typename":"Team","division":{"__ref":"Division:203"},"id":115,"name":"Colorado Rockies","shortName":"Colorado","teamName":"Rockies"},"Team:116":{"__typename":"Team","division":{"__ref":"Division:202"},"id":116,"name":"Detroit Tigers","shortName":"Detroit","teamName":"Tigers"},"Team:117":{"__typename":"Team","division":{"__ref":"Division:200"},"id":117,"name":"Houston Astros","shortName":"Houston","teamName":"Astros"},"Team:118":{"__typename":"Team","division":{"__ref":"Division:202"},"id":118,"name":"Kansas City Royals","shortName":"Kansas City","teamName":"Royals"},"Team:119":{"__typename":"Team","division":{"__ref":"Division:203"},"id":119,"name":"Los Angeles Dodgers","shortName":"LA Dodgers","teamName":"Dodgers"},"Team:121":{"__typename":"Team","division":{"__ref":"Division:204"},"id":121,"name":"New York Mets","shortName":"NY Mets","teamName":"Mets"}}}
window.adobeAnalytics = {"reportingSuiteId":"mlbglobal08,mlbcom08","linkInternalFilters":"mlb"}
window.globalState = {"tracking_title":"Major League Baseball","lang":"en"}
window.appId = ''
/*-->*/
The beauty of Fernando Tatis Jr. and Juan Soto taking over the game of baseball is that two 21-year-old phenoms can both be so amazing as different types of superstars.
Tatis and Soto aren't just the best young stars in Major League Baseball. They're the best players. Luckily we get to watch both and don't have to choose between them.
Tatis is electrifying the league with his dynamic all-around talent. He's the deserving MVP frontrunner. But Soto? Soto is the best all-around hitter on the planet right now.
Let's just take some time to appreciate what Soto is doing.
His baseball card stats are insane
Soto is one of 199 Major League hitters with 75 or more plate appearances this season. Here's how he ranks among those hitters.
Batting average: .400 -- 3rd in MLB On-base percentage: .487 -- 1st in MLB Slugging percentage: .815 -- 1st in MLB OPS: 1.302 -- 1st in MLB
wOBA: .530 -- 1st in MLB wRC+: 236 -- 1st in MLB
Those last two stats, weighted on-base average and weighted runs created plus, are all-in-one numbers to measure offensive performance. wOBA is like on-base percentage, but it gives you more credit for hitting a home run than, say, a single. A .400 wOBA is superstar level; the .500 range Soto is in is super-superstar level. wRC+ compares you to a league average hitter, with a 100 wRC+ being average. Soto's 236 wRC+ means he's been nearly 2 1/2 times as good as an average Major League hitter. That's insane.
Soto leads the world in almost every key hitting category that's not a counting stat. Besides the Ted Williams-esque .400 batting average, Soto is slugging like peak Aaron Judge and getting on base like peak Mike Trout -- he has seven home runs and 13 extra-base hits in his 18 games, and he's reaching base nearly half the time while walking as often as he strikes out.
Elite average and power and on-base skills? One of MLB's most dangerous hitters and one of its toughest outs? What more could you want?
His Statcast stats are even more insane
How about top-of-the-scale quality of contact? The underlying data on what a hitter is doing doesn't always match up with the numbers in the box score. But with Soto, the Statcast stats are just as good. The stat sheet matches the hit tracking matches the eye test -- everything is in beautiful harmony.
Here's a look at the big Statcast hitting stats for Soto this season.
Soto's 2020 Statcast numbers and rankings Avg. exit velocity: 95.6 mph -- 2nd in MLB (to Tatis) Hard-hit rate: 61.8% -- 2nd in MLB (to Tatis) Barrel rate: 20.0% -- 5th in MLB Of hitters with 50+ batted balls in 2020
First are his exit velocity, hard-hit and barrel numbers. A hard-hit ball is anything with a 95-plus mph exit velocity; if you hit it that hard, good things will happen. A "barrel" requires both optimal exit velocity and optimal launch angle; if you hit the ball hard and drive it in the air, even better things will happen. Hard-hit balls get hits; barrels get extra-base hits and home runs.
Soto doesn't square the ball up so often because he's a big masher built like Judge, but because he's a great pure hitter who knows what pitches to attack. He only chases 16% of pitches out of the strike zone, just outside the top 10 in baseball behind Joey Votto. And if the pitch isn't borderline? Forget it. Soto has only swung at six of the 116 pitches he's seen that were more than one baseball's width off the edge of the strike zone -- that's 5.2%, behind only notoriously disciplined former teammate Anthony Rendon and Brandon Nimmo for third-best in MLB. Soto takes balls with authority.
Now let's put Soto's hard contact and elite discipline together. We can do that by looking at his hard-hit and barrel rates on a per-swing and per-plate appearance basis.
Hard-hit rate per swing: 28.3% -- 1st in MLB Barrel rate per swing: 9.2% -- 2nd in MLB (to Mitch Moreland) Hard-hit rate per PA: 44.7% -- 2nd in MLB (to Corey Seager) Barrel rate per PA: 14.5% -- 2nd in MLB (to Seager) Of hitters with 100+ swings / 75+ PA in 2020
Well over one in every four times Soto swings, the result is a hard-hit ball (not to mention that nearly one in every 10 of his swings produces a barrel, the best kind of contact). That puts him atop a very good leaderboard to be atop of.
Highest hard-hit rate per swing, 2020 Minimum 100 swings 1) Juan Soto (WSH): 28.3% 2) Jake Cronenworth (SD): 24.6% 3-T) Fernando Tatis Jr. (SD): 24.5% 3-T) Corey Seager (LAD): 24.5% 5) Robinson Canó (NYM): 23.9%
The hard-hit and barrel rate per swing leaderboards reflect Soto's biggest edge over Tatis as a hitter (Tatis has the edge over Soto in other ways, like his elite speed) -- Soto is more disciplined and doesn't waste as many swings, while still hitting the ball essentially as hard.
A lot of high-slug, high-swing-and-miss power hitters make dangerous contact when they connect, but they're all-or-nothing. On the other side, contact hitters put the ball in play a lot but don't do damage. Both types of hitter can be good, even great -- the Giancarlo Stantons and Joey Gallos and David Fletchers and Luis Arraezes of the world -- but Soto is the best of both worlds.
Soto makes great contact and he makes a lot of contact. He rakes all the time, and he rakes all over the place -- his spray charts are things of beauty, especially his power to left-center field.
There's one more trio of Statcast metrics to check out -- the ones that combine everything: expected batting average, expected slugging percentage and expected wOBA. Those take Soto's quality of contact and combine it with his walks and strikeouts to tell you what his numbers deserve to look like.
Soto's expected stats for 2020 xBA: .383 -- 2nd in MLB xSLG: .857 -- 1st in MLB xwOBA: .532 -- 1st in MLB Of hitters with 75+ PA in 2020
Soto's expected stats somehow only confirm the absurd level of his actual stats. This is not a streaky hitter getting hot. This is a truly great hitter at full power.
Best hitters in MLB by expected wOBA, 2020 Minimum 75 PA 1) Juan Soto (WSH): .532 2) Jake Cronenworth (SD): .507 3) Corey Seager (LAD): .488 4) Bryce Harper (PHI): .467 5) Luke Voit (NYY): .462 MLB avg. xwOBA in 2020: .335
He's somehow getting better
The thing is, Soto has been doing great things ever since he played his first Major League game, from his accomplishments as a 19-year-old rookie to the way he demolished the best pitching in the world in the postseason at age 20 and led the Nationals to a World Series championship.
Now at the ripe age of 21, he just keeps getting better. From 2018, to '19, to '20, Soto has improved across the board in essentially every stat, from traditional to advanced to Statcast metrics.
This is beyond a normal young player's development. Soto is already at the pinnacle of his craft as a hitter. Whatever you want to call it -- superstar level, MVP level, "best hitter in the world" level -- Soto is there right now.