If you’ve followed baseball closely this year, you can’t miss the tidal wave of impact rookies. Fernando Tatis Jr. and Vladimir Guerrero Jr., the two top prospects in baseball, have succeeded in the majors, and they haven’t been alone. Pete Alonso is hitting the stuffing out of baseballs. Mike Soroka and Chris Paddack are pitching like top-tier starters. Tatis is hitting .323 with power and playing a passable shortstop, and he’s not even the clear Rookie of the Year. The competition is just that good.

That’s just the top tier. Go half a level down, and the league is filled with rookies making their presences felt. Keston Hiura has absolutely mashed in his limited plate appearances with the Brewers. Yordan Alvarez has a .353 ISO and a 191 wRC+ over nearly a third of a season. Brandon Lowe is a key cog on the Rays. Oscar Mercado brought the Indians back to life. It’s a good year to be young and in baseball.

Even in this age of constant baseball coverage, though, one rookie has gone overlooked. The best three rookies this season by WAR have been Tatis, Alonso, and Soroka. No one would argue their hegemony. The fourth, though, hasn’t even been named yet in this article. Bryan Reynolds has been the fourth-most-productive rookie, in this year of impact youngsters, and he’s done it in near-complete anonymity.

Reynolds wasn’t supposed to make an impression in the majors this year. He was a good-but-not-great hitter in Double-A in 2018 after being traded from the Giants in the Andrew McCutchen deal, riding BABIP and walks to a 128 wRC+ despite middling power. Prospect evaluators saw him as an average-bat, average-glove regular who could play center in a pinch — in a few years. He ranked ninth in our Pirates’ preseason top prospects list, but didn’t crack Eric Longenhagen and Kiley McDaniel’s top 100. As a 23-year-old in Double-A, it seemed reasonable for him to take 2019 adjusting to Triple-A before reaching the majors in 2020.

That plan lasted all of three weeks. Reynolds hit a preposterous .367/.446/.735 in Indianapolis over 57 plate appearances, and the Pirates wasted no time promoting him. He hasn’t looked back since, compiling a .336/.406/.508 line in the major leagues on his way to 2.6 WAR. In a tough year for the Bucs, he’s been a pleasant revelation, tied for the team WAR lead with mainstay Starling Marte. So much for that 2020 ETA.

Now, if the first reaction to Reynolds’ major league production is surprise, the second is probably skepticism. Something seems a little fishy about a .336 batting average, after all. That’s a little too high for comfort in a time of enlightenment and belief in mean-reverting BABIP. Indeed, Reynolds is running a .414 BABIP, the second-highest in baseball behind Tatis (minimum 200 PA). In this modern era of baseball analytics, it’s not hard to look at his statistics and scoff. Surely when his luck calms down, he’ll be back to just being a back-of-the-order rookie, right? Right?

Not so fast, my friend. While Reynolds has clearly been the beneficiary of good luck this year, he’s also making his own luck. It’s fashionable to discount BABIP, to assume anything far from .300 is a fluke. It’s also reductive. Players can run high or low BABIPs (though not Reynolds-level high, of course) through skill, and they can do it over time. Reynolds has every one of the qualities needed to do so, which makes his major league line more sustainable than you might think.

First, there’s his track record. Reynolds isn’t a debutante suddenly having batted balls find holes for the first time in his career. He’s run a sky-high BABIP at every level of the minor leagues. Take a look at his minor league rate statistics:

Bryan Reynolds Rate Stats by Level Year Level PA AVG OBP SLG BABIP 2016 A- 171 0.312 0.368 0.5 0.391 2016 A- 66 0.317 0.348 0.444 0.452 2017 A+ 541 0.312 0.364 0.462 0.376 2018 AA 383 0.302 0.381 0.438 0.362 2019 AAA 57 0.367 0.446 0.735 0.394 2019 ML 342 0.332 0.406 0.508 0.414

While fielding is worse in the minors than in the big leagues, Reynolds has always had a standout hit tool. Let’s use an old barometer — he’s batted above .300 wherever he’s played. Maybe we should look a little closer.

Want to run a high BABIP? You’ll want to start with groundballs. That might sound counterintuitive in this age of launch angle, but we’re not looking for overall production here, we’re looking specifically for batting average. Fly balls that stay in the park have produced a .118 batting average this year, as compared to .236 for grounders. Line drives are best, of course (.679), but you can’t count on hitting those.

Reynolds has an above-average line drive rate this year, which might not persist, and an above-average GB/FB ratio, which looks more likely to stay. Some of his high average comes from keeping the ball on the ground, where his above-average speed (27.8 ft/sec sprint speed, equal to names like Yoán Moncada and Mookie Betts) can scratch out hits.

Not all groundballs are created equal. A chopper into the shift is a sure out, while a smashed one-hopper up the middle often turns into a baserunner. Not only does Reynolds hit groundballs, he hits them in a way that maximizes batting average. He doesn’t pull the ball much — his 43.5% pull rate on grounders is more than 10% below league average. He also hits ground balls phenomenally hard. No one in all of baseball has a higher hard-hit grounder rate (38%) with a lower pull rate than his. He’s in the happy medium, in other words, of tough to field but also tough to shift.

Turning a high rate of groundballs into hits goes a long way towards increasing offensive production, and Reynolds excels at this skill. He has the 25th-best wRC+ and BABIP on grounders in the majors. xBABIP, which ignores his pull-averse tendencies and so probably underrates him, has his grounders as the 10th-most productive in baseball. All in all, Reynolds is turning groundballs into singles at a high but potentially justified rate.

The groundballs, of course, aren’t the whole story. You can’t bat .414 on balls in play merely by being 25th in baseball on batting average on the ground. Something else is going on here. That something else is where Reynolds really has been getting lucky. His BABIP on line drives this year is an absolutely wild .852. That’s the second-highest rate in the majors, and it’s more than 200 points higher than average. That 200 points goes a long way towards propping up a batting average.

Even here, though, Reynolds is less lucky than he seems. He might be converting a phenomenally high rate of line drives into base hits, but some of that is because he’s been hitting those line drives hard. His hard-hit rate on line drives, 61.1%, is in the top 20% of baseball. His soft-contact rate, a mere 3.7%, is roughly as good (though the two are of course correlated). Despite that phenomenal hard-hit rate, he hasn’t hit a single home run on a line drive this year, a rare spot where Reynolds has actually gotten unlucky.

If you could boil my arguments down to a single number, it would probably be this. Per Statcast, Reynolds’ xBABIP, the expected batting average of his balls in play based on their exit velocity and launch angle, is .374. That doesn’t account for his shift-resistant tendencies on groundballs, either, so it’s likely understating things a bit. Has Reynolds outperformed expectations a bit after putting the ball in play? Absolutely. He’s deserved a lot of the success, though, which means that his season can’t be dismissed simply because of BABIP. There’s reason to believe, in other words, that Reynolds might continue to run high BABIPs at the major league level.

Stop focusing on BABIP, and the rest of Reynolds’ line looks great. He strikes out 21.6% of the time, less than league average, and walks 10.2% of the time, significantly more than league average. The underlying numbers roughly back that up: Reynolds swings less than average at balls and more than average at strikes. Pitchers have fed him a steady diet of junk (eighth-percentile zone rate), which helps explain the walks. They’ve been forced to, though, because of his aggression in the zone, which bodes well for his future plate discipline numbers.

His defense has been somewhere between below average (per UZR) and well above average (per DRS), with Statcast considering him slightly above average. He’s compiled those numbers while playing all three outfield positions, a useful capability for a Pirates team that has been forced to mix and match lineups all year. He’s been above average on the basepaths despite only a single steal, taking extra bases and avoiding outs.

Bryan Reynolds probably isn’t quite as good as his current statistics would suggest. He probably won’t continue to turn balls in play into hits at a historic rate. That doesn’t mean it’s the only thing worth focusing on, though, or even the right thing to focus on. Reynolds is the kind of player we often overlook in today’s dinger-and-strikeout age. He’s a jack of all trades, while being a master of at least a few. There’s no area of Reynolds’ game you can point to as a weakness — even his power, which I’ve more or less completely ignored in this analysis, has been roughly average this year, and Eric and Kiley projected him for 50 game power this offseason.

Bryan Reynolds won’t win any awards this year. His team won’t make the postseason. He probably won’t go viral or become a new face of baseball. Who cares, though? Bryan Reynolds was the answer to a trivia question last year, half of the return for the greatest Pirate of the 21st century. This year, he’s a productive major leaguer, a versatile outfielder, and hitter who every team in baseball would love to have. That he managed that change in only a year is astounding, and I, for one, would rather focus on that than point at his batting average on balls in play and snicker. Bryan Reynolds figures to be around baseball for years to come, and he’ll always be a reminder to me not to overlook someone just because they don’t have a splashy tool I can make a GIF of.