How To Use RotoFanatic Park Factors

Fantasy Baseball Park Factors RotoFanatic

All park factors were created by Crosby Spencer for



Cliffs Notes:

If you are looking for just a quick summary to “get you started,” here it is. The park factors are based on a standard 100 scale, meaning “100” is the league average. Any number above or below 100 is considered a % above/below league average.

So, if you look at the Great American Ballpark and notice the RF(right field) Park Factor for a RHB (a right-handed batter) is 118 for HR, that means it is 18% “better” for a RHB batter to hit a HR to LF in Cincinnati.

We have parks factors for every BBE (batted ball event): 1B, 2B, 3B, HR, in addition to wOBAcon and RBIcon for LF, LCF, CF, RCF, and RF. If you would like a more details explanation, read on:


Intro to RotoFanatic Park Factors


On February 27, 2010, Steve Slowinski wrote an article on Fangraphs titled “Park Factors”. Here’s an excerpt from that article:

“The Noble Goal


If you had the power to do so, you’d want to know how every single plate appearance would play out in all 30 MLB parks. If it turned into a single in the park of interest and then went for a single in 25 other parks, an out in three, and a double in one, you’d have a good sense of the way the parks played. The park that allowed the double would be a hitter’s park and the ones that created outs would be more pitcher-friendly. But unfortunately, we don’t have that kind of data.


We want to know how parks influence each moment of the game, but we simply don’t have granular enough data to really get there. A ball hit at 15 degrees directly over the shortstop while traveling at 93 miles per hour will travel how far and land where? That’s basically what we want to know for every possible angle and velocity, but we just don’t have the data and we don’t have it for every type of weather in every park.


Instead, we have to settle for approximations.”

Now, we do have that data.

Using the data provided by I set out to find the results of all Batted Ball Events (BBE) from 2017 – 2019 by Exit Velocity (EV), Launch Angle (LA), handedness (RHB and LHB), hit location (LF, LCF, CF, RCF, RF) and whether the ball was pulled, hit to the opposite field, pulled to an alley, hit to the opposite alley or centered. Taking all of these factors into account we come up with the average for how EVERY batted ball event played out in all 30 MLB stadiums during the 2017 – 2019 seasons*. Below is an example of some of these averages:

All BBEs in 2019 at an EV of 98 MPH and a LA of 26 degrees in 2019.


All BBEs in 2019 at an EV of 98 MPH and a LA of 26 degrees that were pulled in 2019.


All BBEs in 2019 at an EV of 98 MPH and a LA of 26 degrees that were hit to the opposite field in 2019.


All BBEs in 2019 at an EV of 98 MPH and a LA of 26 degrees that were hit to center field in 2019.


When we analyze these sets of data we can further see why it’s so important to use more than just EV and LA. If we only use those two factors we would be assigned an expected AVG of .494 and an expected HR rate of 22.4% for every ball hit at an EV of 98 MPH and a LA of 26 degrees. However, if that ball that’s hit at 98/26 goes to center field it’s an out 90% of the time with a 0% chance of leaving the yard. Conversely, when pulled, that same 98/26 batted ball has 85% of being a hit with a 69% chance of being a home run.

Once we assemble all of the outcomes for the seasons we can then generate the expected stats for each batted ball event and its subsets. This data now gives us the mythical Average MLB Park in order to compare actual outcomes to expected outcomes.

* Both the Los Angeles Angels of Anaheim and the Arizona Diamondbacks altered their parks in 2018 so we only used the 2018 & 2019 seasons for their park factors. LAA lowered their RCF-RF wall and ARI installed a humidor.

The 100 Scale

Now that we have the average of how every batted ball event performed at each MLB stadium we can develop our park factors. First, we take all of the batted ball event outcomes that occurred in the subset that we’re analyzing (In this case, right-handed batters, Detroit Tigers’ Comerica Park, center field) to give us our Actual Stats.

Next, we take the average expected outcomes for the unique combination of batted ball events in our subset in order to calculate the Expected Stats. From here we simply take the Actual Stats and divide them by the Expected Stats and we get our Park Factors. Below is an example of how this is done:




During the 2017 – 2019 seasons the 2,378 batted ball events that were generated by right-handed batters to Comerica Park’s center field only produced 29 home runs. However, had those same batted ball events occurred in the Average MLB Park we would have expected them to produce 101 home runs! We take the actual home runs of 29, divide them by the expected home runs of 101 to get 0.29, then multiply them by 100 (The MLB league average) to get 29.


You will notice throughout both the Park Factors and the Park Factor Ranks that numbers are assigned various shades of green, red and white. White indicates that the park plays neutral. Light green to dark green indicates that factors and ranks are at various levels of being above average (From the batter’s perspective) while light red to dark red indicates various levels of being below average.


Park Ranks

Below the Park Factors, you will find the Park Ranks. This section allows you to see how each park’s factors rank from 1 to 30


How to Use the Data


For pitching, the best way to use the data is by checking the ALL/ALL factors, which are located on the very first line that you’ll see at the top of the stadium page.  As a shortcut, I like to use AVG for WHIP and RBIcon (Which is expected RBI on contact) for ERA.

For pre-draft evaluations, primarily take a look at the ALL/ALL factors for the pitcher’s home park and his division opponents secondarily. For daily and weekly games, use the ALL/ALL factors for the park(s) that the pitcher is making his start(s) at.

For batters, this can be more granular. First, if you’re looking at a right-handed batter, start with the second line down on the team page labeled ALL/RHB. This will give you a general sense of how the field shapes up for right-handers, however, very few batters have an evenly distributed spray chart.

If the batter is more pull conscious then check LF/RHB and LCF/RHB. If the batter is more of a middle-away hitter, you guessed it, CF/RHB, RCF/RHB, and RF/RHB. We’ll be putting out this season’s schedule factors soon to give you an idea of who is getting a bump and who is getting a downgrade.