Around this time a year ago, New York Mets hit machine Jeff McNeil had just finished up his first taste of MLB action, and it went pretty well. Through 248 plate appearances, he managed to post a 137 wRC+ and 2.7 fWAR off the strength of a solid .329/.381/.471 line. There wasn’t a ton of home-run power (just three dingers), but with his ability to put the ball in play and get on base at a high clip, it wasn’t much of a problem.

McNeil basically picked up in 2019 where he left off as a rookie in 2018 — especially in the first half. The 27-year-old found himself atop the batting average leaderboard heading into the All-Star break with a .349 mark. That also included seven home runs in 318 plate appearances, which was already a new single-season career high. As we all know, though, McNeil hit a level in the second half that not many were expecting based off his brief time in the big leagues to that point.

The 2019 All-Star launched another 16 long balls following the midsummer respite to give him 23 for the season. While his .276 second-half batting average took him out of the batting title race, he finished with a slightly better wRC+ than his rookie campaign (143) and a superb 4.6 fWAR that was among the 30 best in baseball when looking at qualified hitters.

En route to this incredible year, McNeil did some things many were likely expecting from him. He swung the bat a lot, made a ton of contact, and didn’t strikeout nearly as much the average ballplayer. The biggest surprise was easily this power surge. After all, the utility player watched his ISO grow from .143 to .214 and his hard-hit rate go from 30.2% to 37.6% while his soft-hit rate went from 22.0% to 11.2%. But what got even more interesting when digging into his performance was how he did when facing certain pitches.

When looking at things like ISO and wRC+, McNeil pummeled curveballs (.426 ISO and 180 wRC) more than any other pitch, with five of his 23 dingers coming against the offering. However, it was his collective performance against fastballs (four-seamers, sinkers, and cutters) that caught my eye — especially when comparing his 2019 numbers to what he did the year prior.

Here’s a quick look at how his performance when facing those three pitches in particular shook out during his impressive rookie season:

And, of course, here’s what the progression ended up looking like once his 2019 season was officially in the books:

If we’re also purely looking at the change in homers hit between these two seasons — which makes sense because of the huge jump in that total number from 2018 to 2019 — we get the same results. As a rookie, McNeil didn’t hit a single dinger against a four-seamer, sinker, or cutter. In fact, he didn’t hit more than one homer against any pitch he saw. But just a year later, he made the necessary adjustments and hit 12 of his 23 homers off a four-seamer (seven), sinker (four), or cutter (one).

McNeil’s particular aggression against four-seam fastballs — the pitch he saw the most from opposing pitchers — is particularly interesting. When looking at his overall swing rate by pitch faced, the left-handed hitter didn’t produce a percentage lower than 53.0% in any situation. That wasn’t much different than the year before, but the differences start showing when that swing rate is broken down a bit more.

If his chase rate is singled out, the 28.9% mark he posted against four-seamers was the only pitch where he produced a rate below 37.0%. Meanwhile, McNeil’s swing rate on strikes was up at 84.1% against four-seamers, with only his swing rate on changeups being slightly higher (84.9%). While the contact rate for that specific situation didn’t change much, the lift he saw in his quality of contact helped make a big difference.

The fact that McNeil finished with a .318 batting average in 2019 isn’t a shock. Based on the bat-to-ball skills he showcased as a rookie, it certainly felt like that was within his range of outcomes. The power was a surprise, even though he combined to hit 19 homers across Double-A and Triple-A in 2018 before getting called up to the big leagues. It seems as if all McNeil needed to do was adjust a bit to how opposing pitchers were attacking him in order for those power numbers to spike.

New York has gotten incredible value for his performance thus far. According to FanGraphs, McNeil’s 7.3 career fWAR has been worth $58.2 million. He’s earned just under $770K during that time, and will continue to be an extreme bargain in 2020 and 2021 prior to becoming arbitration eligible for the first time.

Now that he’s firmly in the Mets’ plans moving forward (unlike last winter), it’ll be fun to continue watching him progress as a player while approaching his physical prime.