Shortly after the Chattanooga Lookouts took home the Southern League championship on Monday, the team’s best player packed his bags for the big leagues. That player, of course, was Max Kepler, who will spend the final two weeks of the season in Minnesota following a well-deserved promotion.

Kepler put up crazy good in the minors this year. The 22-year-old spent nearly the entire season at the Double-A level, where he hit an absurd .322/.416/.531 in 112 games, while also kicking in 18 steals in 22 attempts. Kepler also accomplished the rare feat of walking more than he struck out this year, posting walk and strikeout rates of 14% and 13%, respectively. Even more impressively, he complemented this control of the strike zone with a healthy amount of power. Although he hit just nine homers on the year, his 32 doubles and 13 triples at the Double-A level produced an isolated power of .209.

There isn’t much to dislike about Kepler’s minor league performance this year. He drew walks, rarely struck out, clubbed oodles of extra base hits and stole a fair amount of bases. In other words, he did it all; and as a result, KATOH’s very bullish on him. My system projects him for an impressive 13.2 WAR through age 28, making him one of the highest-ranked prospects in the game. This represents a dramatic improvement over the weak 1.1 WAR yielded by his 2014 campaign.

Now, for the comps. Using Kepler’s league-adjusted stats and his age, I calculated the Mahalanobis distance between his 2015 season, and every Double-A season since 1990 in which a player recorded at least 400 plate appearances. Below, you’ll find a list of historical players whose performances were nearest and dearest to Kepler’s, ranked from most to least similar.

You probably don’t need me to tell you how exciting that list is. Joey Votto is on a Hall of Fame career path, while several others were excellent players in their primes. Marcus Giles, Mark Kotsay, Johnny Damon, Curtis Granderson and even Ryan Klesko all peaked as four-plus win players, and each strongly resembled Kepler while in Double-A. Even if you feel those comps are a bit lofty, Ben Grieve, Frank Catalanotto and Jeff Conine were all above-average hitters, who might represent more realistic futures for Mr. Kepler.

Everything I’ve laid out thus far bodes extremely well for Kepler’s future. He had one of the best seasons in the minors this year, has guys like Kotsay and Votto showing up in his statistical comps and is still just 22. Sounds great. The one flaw, however, is that all of this analysis only considers Kepler’s 2015 season. If you also consider what happened prior to 2015, which you absolutely should, it’s not all rainbows and sunshine.

Kepler spent the 2014 season at the High-A level, where he batted a mediocre .264/.333/.393. Prior to that, he hit .237/.312/.424 at the Low-A level. Those aren’t the batting lines of a can’t-miss prospect, especially for someone who’s age-appropriate for his level and profiles as a left fielder more than anything. Unsurprisingly, KATOH didn’t think much of pre-2015 Max Kepler. It pegged him for unremarkable figures of 1.7 and 1.1 WAR through age 28 for 2013 and 2014, respectively.

So, what changed? What caused Kepler’s performance to jump from unremarkable to excellent? From a statistical standpoint, Kepler’s breakout didn’t stem from any one particular area, but was the result of improvements across the board. His strikeout rate, walk rate, isolated power and BABIP all moved in the right direction this year, even as he advanced to a higher level.

It’s entirely possible that Kepler’s aforementioned improvements are 100% legitimate, and the 2015 Max Kepler is the real Max Kepler. I think it’s worth noting that Kepler signed out of Germany, where baseball isn’t exactly the sport of choice, and most certainly isn’t played year round. Kepler’s the ultimate “cold-weather kid” whose baseball skills were somewhat raw when he signed. From that point of view, one could certainly convince himself that Kepler is star in the making, and that maybe the Kotsay and Votto comps aren’t quite so far-fetched. However, while his 2015 numbers were great, his previous body of work was largely mediocre. And it’s also possible that his true talent level falls somewhere closer to the mediocre side of the spectrum.

Kiley McDaniel, for one, isn’t completely sold on Kepler. He gave him a 50 FV in his in-season update, which was a notch higher than his preseason grade of 45, but would still render him merely an average regular. In other words, more Frank Catalanotto than Mark Kotsay. Kiley explained that, while the overall package is interesting, Kepler lacks a plus tool. He identified him as one of those “tweener” types, who has less range than the typical center fielder, but less power than the typical left fielder. Kiley also noted that he still has trouble with spin, which is why the Twins held him in Double-A all year despite his loud numbers. Kiley called him a poor man’s Bradley Zimmer or Christian Yelich due to his frame and tools.

Even so, Kepler’s 2015 was impressive, and undeniably puts him in the mix for top-100 lists this winter. In the last five months alone, Kepler’s made the jump from far-away prospect with interesting tools to impact hitter on the cusp of being big league ready. Kepler likely won’t play everyday for the Twins from here on out. But his performance over these next couple of weeks should give us a sense of what he’ll be capable of next year, when he’s tasked with taking over an everyday role in the Twins outfield.