Author Archive

An End-of-Season FanGraphs Business Update

Now that the 2020 season is officially over, I thought it would be a good time to give a complete update on where things stand business-wise for FanGraphs. If you’ve been following these updates all season long, this probably won’t be much of a surprise.

The good news is that revenue from FanGraphs Memberships is up approximately 118%. This has kept us afloat for the past six months — it’s entirely your doing that we’re still here to give you business updates at all. Thank you, thank you, thank you!

The bad news is that advertising revenue over the same period is down 65%. Our traffic has started to return to normal, but we are still seeing a significant decline in advertising rates compared to their pre-pandemic levels.

With that said, if you used FanGraphs this season and aren’t a Member, now is the time to show your support. Maybe you’ve read our articles all season long, or for years; maybe you’ve used our stats pages and tools to help win your fantasy league. Maybe you’ve used RosterResource or listened to one of our podcasts. Maybe you’re a fellow industry member and have referenced FanGraphs in your own writing and analysis. Maybe you work for a team, and FanGraphs is your homepage.

The offseason is when our revenue is typically at its lowest and with the lack of advertising revenue this season to propel us through, every little bit will help us bridge the gap to the 2021 season. Read the rest of this entry »

We Still Need Your Help

With just a few weeks of the postseason left, it’s hard to believe that it has been almost eight months since the major league season was postponed. I’m sure that for all of us, these past eight months have felt like a lifetime.

Since March, we’ve been asking for your support and you’ve been there every step of the way. Things looked pretty grim when I published my first update on the state of the site as we grappled with the COVID-19 pandemic, but we’re still here and that’s entirely thanks to you. We are so grateful to have such supportive readers.

For the last fifteen years, our small staff’s dedication and love of baseball have allowed us to punch above our weight in the baseball media space despite a tight operating budget. But the revenue landscape for FanGraphs has changed considerably, and once the postseason winds down, we’ll have five baseball-less months to bridge until the start of the 2021 season. And so I’m here to ask for your help once again. Even though our traffic has rebounded to within 10% of our normal August and September levels, our revenue has not, due in large part to the continued depression of online advertising rates. This has forced us to become considerably more reliant on Memberships to make up the difference.

Read the rest of this entry »

FanGraphs Business Update: July 2020

With baseball scheduled to return in a couple of weeks, I wanted to give everyone an update on how FanGraphs is doing business-wise. For those of you who are returning to the site for the first time since the season was postponed, a lot has happened since you last visited.

You can read all about what’s been going on here, here, and here, but the quick recap is this: When the season was postponed, our traffic decreased by over 70% and ad rates declined by as much as 45%, causing an 80% decrease in ad revenue, which is far and away our largest source of site revenue.

We asked you for help in sustaining the site and you’ve come through in overwhelming fashion over the past four months, giving us some breathing room to try to weather the effects of the COVID-19 pandemic. We were also able to secure funding through the second round of the Paycheck Protection Program, which was another boon to our short-term viability. We are incredibly grateful to everyone who helped keep the site alive. We would not be here today without you.

But that doesn’t mean we don’t still need your support and assistance. We still have a long way to go. Read the rest of this entry »

Introducing KBO Stats on FanGraphs!

I’m pleased to announce that FanGraphs now has KBO player stats going back to 2002!

Currently, these stats are available on player pages and include full season stat lines. They will be updated nightly to reflect the previous day’s games.

We’ve integrated a new section into our player search specifically designated for international players. Any player you search for who has played in the KBO will show up in the International section as well as in the Major or Minor League sections if they have MLB-affiliated playing time. Read the rest of this entry »

A FanGraphs Business Update

Hi again. Thank you so much for the support you’ve shown the site over the past few weeks. In the spirit of continued transparency, I wanted to give everyone a fairly in-depth update on how things are going at FanGraphs. A few weeks ago, we had to change our business model from one primarily driven by ads to a one predominantly driven by site memberships because of the current COVID-19 pandemic, which postponed the start of the MLB season and caused a drastic decrease in both FanGraphs’ traffic and general advertising rates. We set a Membership goal of 40,000 Members, which in a typical year represents less than 4% of our monthly site visitors.

First, let’s look at the some of the good news, which is that Memberships are going in the right direction. Thank you to everyone who has decided to continue their Membership while baseball is on hiatus, upgraded their existing Membership, or signed up for the first time! Prior to March 30, we had 10,004 active Members; that number has increased to 14,739:

If we include merchandise sales, gift memberships, upgrades to Ad-Free, and donations (at the equivalent of the $30 annual Membership), the progress towards that 40,000-Member goal looks even better. Furthermore, our breakdown of Memberships has shifted slightly towards Ad-Free; about 5% of all Members have moved toward Ad-Free. When we include all these additional contributions, it effectively puts us at 16,244 members:

Read the rest of this entry »

An Update on the State of FanGraphs

First, I’d like to say thank you.

Last week, I shared an update on the state of FanGraphs in light of baseball’s COVID-19-related delays and asked for your help in sustaining the site through this pandemic. The response we saw was incredible. We had the most new Membership signups we’ve had since launching the program in 2016, with 4,618 new Members. We’re so grateful for the baseball community and the kindness and resolve it so often shows. Thank you to all of our existing members and to everyone who became a Member, bought merchandise, helped get the word out on social media, or offered words of encouragement.

Many of you have also asked for an update on our progress, and here it is: the support you’ve shown the site gives us some breathing room, but not as much as is needed. Our yearly expenses include employee salaries and benefits, contributor pay, stats contracts, and server costs. And even though we continue to roll out new site features and publish new content, our daily traffic is still down 60-70%, sometimes more, affecting our ad revenue.

As I said last week, we realize that for many, now is not the best time to ask for help. Many are facing uncertainty. We’re uncertain if baseball will return this season. We don’t know what the advertising market will look like if it does. In order to weather that uncertainty, and to hopefully continue to grow in the future, we need 4% of our users to become Members. That translates to roughly 40,000 Members total. We’re 34.9% of the way there with 13,970 Members currently. We don’t need to close that 26,030-member gap overnight, but if we make our goal, it will help to ensure the site’s future. Read the rest of this entry »

A FanGraphs Update: We’re Asking for Your Help

This is not how I planned to begin FanGraphs’ 15th year.

I wanted to take a moment to personally inform all of our readers about what’s been going on at FanGraphs these past few weeks, and to share our plans going forward.

Starting March 12, after the announcement that Opening Day would be postponed, we have seen a steep decline in our site traffic that has lead to a correspondingly dramatic decline in revenue. Every piece you read and tool you use at FanGraphs is free to access, but they all take money to create. We are a small business. We rely on the revenue generated by site traffic.

As a result of these declines, I’ve had to make fairly aggressive budget cuts to try to keep FanGraphs viable as a company until the COVID-19 pandemic is resolved and baseball returns. This has involved all of our full-time staff members taking pay cuts, laying off the majority of our contributors, and closing The Hardball Times for the foreseeable future. Now we are asking for your help.

FanGraphs employs 10 full-time staff members who, along with our contributors, produce 200-300 articles each month in addition to our ever-growing inventory of stats, graphs, and tools. Our mission is still to bring you the very best baseball statistics and analysis.

We realize this isn’t necessarily the best time to ask for your help. You have concerns of your own. All of us are anxious in the face of economic uncertainty. We’re all worried about our health, and the health of our loved ones and friends. We’re all worried about what comes next. Quite frankly, our front-line medical workers and emergency personnel, and those who are sick or have lost loved ones, need your assistance most. But if you can spare it, we are asking for your support.

If you read our work, ask our writers questions in chats, listen to our podcasts, browse RosterResource, peruse The Board for prospect rankings, or use our stat pages, please consider a FanGraphs membership. If you work in a baseball front office, and your team all uses one membership login, consider signing up for a few more. Consider an ad-free membership! In addition to helping to ensure there is a FanGraphs when baseball returns, you’ll enjoy the site without banner ads, facilitating faster loading times for just $50 a year.

To all of our existing Members, thank you so much for supporting the site. Being a member is the best way to support FanGraphs.

To all of our readers, we are going to continue asking for your support. We are going to ask pretty frequently. We know there’s no baseball right now, but we’re still writing and building and trying our best to help provide a bit of respite from the pandemic. And when baseball comes back, we want to be here for you.

Once again, thank you for reading and for your support.

Stay safe, and be well.

The FanGraphs Site Guide: 2019 Edition

Happy Opening Day everyone! In this post, I’m going to tell you about all the wonderful, possibly hidden, stat things you can find on the website. This is for those of you who may be joining us for the first time, or for those of you who might be returning to the site after doing whatever it is people do when not thinking about baseball every waking moment.

Player Pages

The Main Player Page – The main player pages include hundreds of stats on each player. Player pages have real time data, season and daily projections, and basically everything you’d ever wanted to know about how a player performed.

Graphs – Visualize how a player has performed over time! You can see breakdowns by season, game, age, and so on. The combinations are nearly endless.

Splits – Splits pages come in three varieties: static splits, the splits tool, and pitch type splits. The static ones contain all the pre-compiled splits. The splits tool is where you can slice and dice your way to the most esoteric of baseball stats. And the pitch type splits break down each pitch a player has thrown or has seen, and provides performance metrics on those pitches. Read the rest of this entry »

WAR Update: Catcher Framing!

Update: An earlier bug that impacted updated pitcher WAR has now been resolved. The pitcher tables below have been updated to reflect that. Thanks to everyone who pointed out the issue!

I’m very pleased to announce that FanGraphs has finally added catcher framing data to the site, with full thanks to Jared Cross, who you may know as the co-creator of the Steamer projections. We’ve also incorporated catcher framing into WAR.

Including catcher framing in WAR has been a topic of internal debate at FanGraphs for the past half-decade. The problem has never been with the inclusion of framing numbers on the catcher side of things. That’s a fairly simple addition. The problem has always been what to do with the pitchers. For instance, the 2011 Brewers were some 40 runs above average in catcher framing. When you add those 40 runs to catchers, do you subtract 40 runs from pitchers? As it turns out, you do, but those runs are not attributed equally to each pitcher:

2011 Brewers Starting Rotation
Player IP Catcher Framing Framing per 9
Randy Wolf 212.1 -0.45 -0.02
Yovani Gallardo 207.1 7.79 0.34
Shaun Marcum 200.2 7.47 0.34
Zack Greinke 171.2 5.95 0.31
Chris Narveson 161.2 5.12 0.29
Positive framing numbers for pitchers indicate a pitcher was helped by the catcher’s framing ability; negative numbers indicate a pitcher was hindered by the catcher’s framing ability.

While most of the pitchers on the 2011 Brewers benefited from Jonathan Lucroy’s otherworldly framing, Randy Wolf was stuck with George Kottaras most of the time. In this instance, the entire Brewers pitching staff, with the exception of Randy Wolf, was a little bit worse once catcher framing is taken into account than their previous, non-catcher framing inclusive WAR would indicate.

Exactly how do you add catcher framing to WAR you ask?

For catchers, you take the catcher framing runs above average, divide by the runs to wins converter, and add it to your existing WAR total.

WAR = (Batting + Base Running + Fielding + Catcher Framing + Replacement Level) / Runs to Wins

On the pitcher side, we adjust FIP by the catcher framing runs above average per 9 innings. If Zack Greinke’s 2011 FIP was 3.00, and he was helped to the extent of 0.31 framing runs per 9 innings, we now use 3.31 in the WAR calculation instead of the original 3.00 FIP. We also adjust the pitcher’s dynamic runs to wins converter. In Greinke’s case, this would increase his personal run environment and also increase the runs to wins converter.

WAR = (((League FIP – (FIP + Catcher Framing / 9)) / Dynamic Runs to Wins Converter + Replacement Level) * IP / 9) * Game Start Leverage / 2

The RA9-WAR calculation has been adjusted in the exact same way.

Let’s take a look at how the inclusion of catcher framing has changed things:

Largest Career WAR Increases (2008 – 2018)
Player Catcher Framing Old WAR New WAR Difference
Brian McCann 181.9 30.4 49.2 18.8
Russell Martin 165.6 29.5 46.7 17.2
Yadier Molina 151.6 34.8 50.5 15.7
Jose Molina 140.4 0.6 15.2 14.6
Jonathan Lucroy 126.8 22.6 36.2 13.6
Miguel Montero 127.0 15.6 28.9 13.3
Yasmani Grandal 119.6 15.1 27.6 12.5
Buster Posey 118.0 38.7 51.1 12.4
Tyler Flowers 89.4 8.6 17.8 9.2
David Ross 80.7 10.0 18.3 8.4
Ryan Hanigan 79.2 8.8 17.1 8.3
Martin Maldonado 69.2 4.6 11.7 7.2
Jeff Mathis 69.1 -1.1 6.0 7.1
Chris Stewart 66.2 2.9 10.0 7.1
Mike Zunino 49.5 7.7 13.0 5.3
Hank Conger 48.1 1.7 6.9 5.2
Rene Rivera 48.1 3.9 9.1 5.1
Largest Career WAR Decreases (2008 – 2018)
Player Catcher Framing Old WAR New WAR Difference
Ryan Doumit -156.6 5.7 -10.4 -16.1
Gerald Laird -109.1 4.0 -7.2 -11.2
Nick Hundley -90.7 11.3 1.9 -9.4
Chris Iannetta -89.5 17.7 8.3 -9.3
Kurt Suzuki -86.1 18.1 9.0 -9.1
Carlos Santana -78.6 14.7 6.4 -8.3
Salvador Perez -79.9 17.8 9.5 -8.3
A.J. Ellis -77.1 8.2 0.1 -8.1
Carlos Ruiz -68.9 21.2 14.0 -7.3
Dioner Navarro -65.4 5.6 -1.2 -6.8
Lou Marson -57.6 2.5 -3.5 -6.0
Welington Castillo -52.1 13.2 7.6 -5.6
John Buck -52.4 7.2 1.7 -5.6
John Jaso -51.9 8.0 2.5 -5.5
Rob Johnson -48.4 -1.5 -6.5 -5.0
Robinson Chirinos -47.7 8.3 3.4 -5.0
Largest Single Season WAR Increases (2008 – 2018)
Player Season Catcher Framing Old WAR New WAR Difference
Jonathan Lucroy 2011 42.4 1.4 5.9 4.5
Brian McCann 2008 37.5 5.1 8.9 3.7
Brian McCann 2011 34.1 3.8 7.4 3.6
Jonathan Lucroy 2013 31.8 3.4 6.8 3.4
Jonathan Lucroy 2010 32.4 0.6 4.0 3.4
Jose Molina 2008 32.1 0.4 3.6 3.2
Tyler Flowers 2017 31.9 2.4 5.6 3.2
Brian McCann 2009 31.6 3.7 6.9 3.2
Jose Molina 2012 27.1 0.8 3.6 2.8
Buster Posey 2012 27.0 7.5 10.4 2.8
Yadier Molina 2010 27.2 2.2 5.1 2.8
Russell Martin 2011 26.6 2.5 5.3 2.8
Russell Martin 2008 28.1 4.8 7.6 2.8
Brian McCann 2012 26.4 1.5 4.2 2.8
Buster Posey 2016 26.7 3.8 6.5 2.7
Jonathan Lucroy 2012 26.1 3.4 6.2 2.7
Y Grandal 2016 25.7 2.8 5.5 2.6
Miguel Montero 2014 23.8 1.1 3.7 2.6
Hank Conger 2014 22.9 0.3 2.8 2.5
Mike Zunino 2014 22.8 1.7 4.2 2.5
Largest Single Season WAR Decreases (2008 – 2018)
Player Season Catcher Framing Old WAR New WAR Difference
Ryan Doumit 2008 -57.8 2.9 -2.8 -5.8
J Saltalamacchia 2014 -31.8 1.5 -2.0 -3.5
Gerald Laird 2009 -32.3 1.6 -1.6 -3.2
Carlos Santana 2011 -30.3 3.4 0.2 -3.2
Carlos Santana 2012 -27.6 3.0 0.1 -2.9
Chris Iannetta 2008 -26.6 3.1 0.5 -2.7
Jorge Posada 2010 -24.2 1.5 -1.0 -2.5
Kurt Suzuki 2014 -22.8 1.9 -0.6 -2.5
Ryan Doumit 2009 -24.6 0.6 -1.9 -2.5
Chris Iannetta 2013 -22.8 1.9 -0.5 -2.5
Dioner Navarro 2014 -22.0 2.0 -0.4 -2.4
Gerald Laird 2008 -23.9 1.4 -1.0 -2.4
Ryan Doumit 2012 -22.2 1.0 -1.4 -2.3
Dioner Navarro 2008 -22.6 1.9 -0.3 -2.3
Miguel Olivo 2011 -21.2 0.2 -2.0 -2.2
Jonathan Lucroy 2017 -22.1 1.1 -1.1 -2.2
Lou Marson 2011 -20.4 1.0 -1.2 -2.2
Lou Marson 2010 -20.3 0.5 -1.6 -2.1
Rob Johnson 2009 -20.8 -0.1 -2.2 -2.1
Dioner Navarro 2016 -20.2 -0.2 -2.3 -2.1
Wilin Rosario 2012 -19.5 1.2 -0.8 -2.0
John Buck 2010 -19.1 2.8 0.8 -2.0
W Castillo 2013 -18.3 3.2 1.2 -2.0

And the Pitchers, where the differences are considerably smaller:

Largest Pitcher WAR Increases (2008 – 2018)
Player Framing Old War New War Difference
Felix Hernandez -23.3 42.7 45.4 2.7
Justin Masterson -20.7 14.2 16.4 2.2
Jason Vargas -21.0 12.9 15.0 2.1
Justin Verlander -17.6 57.0 59.0 2.0
Ricky Nolasco -12.4 23.6 25.0 1.4
Mike Pelfrey -13.6 11.8 13.2 1.4
Kevin Correia -12.3 5.5 6.8 1.2
Cole Hamels -11.1 41.4 42.6 1.2
Anibal Sanchez -11.7 25.7 27.0 1.2
Zach Duke -12.4 8.3 9.5 1.2
Ubaldo Jimenez -10.8 26.6 27.8 1.1
Ian Snell -11.9 1.6 2.7 1.1
Derek Holland -10.5 13.2 14.3 1.1
Danny Duffy -10.2 11.7 12.8 1.1
Luke Hochevar -10.1 8.0 9.1 1.0
Paul Maholm -10.2 11.4 12.4 1.0
Edwin Jackson -10.1 16.1 17.2 1.0
Jeff Karstens -9.6 3.2 4.2 1.0
Roberto Hernandez -9.7 4.2 5.1 1.0
Largest Pitcher WAR Decreases (2008 – 2018)
Player Framing Old War New War Difference
Yovani Gallardo 25.6 21.3 18.4 -2.9
Bronson Arroyo 28.6 8.9 6.1 -2.8
Madison Bumgarner 23.4 30.7 28.0 -2.7
Tim Hudson 24.5 14.5 12.0 -2.6
Kyle Lohse 21.7 14.9 12.6 -2.3
Adam Wainwright 18.6 35.3 33.2 -2.1
Jair Jurrjens 19.2 9.7 7.7 -2.0
Derek Lowe 19.0 12.4 10.5 -2.0
Ryan Vogelsong 18.4 5.8 3.9 -1.9
Tommy Hanson 17.2 9.5 7.6 -1.8
Johnny Cueto 16.9 29.5 27.7 -1.8
Marco Estrada 16.6 13.3 11.6 -1.7
Matt Cain 15.7 21.1 19.4 -1.7
Ian Kennedy 14.7 16.3 14.6 -1.6
CC Sabathia 14.7 40.3 38.7 -1.6
Zack Greinke 13.8 50.7 49.1 -1.6

Now you know everything there is to know about how we added catcher framing to WAR. Please note the following:

  • Catcher Framing (abbreviated as FRM) is available on the leaderboards and player pages in the fielding sections.
  • WAR has been updated with catcher framing data everywhere WAR is available on the site.
  • Catcher Framing data is available in batter and pitcher sections of the leaderboard as a custom stat.
  • Fielding (the WAR component) now includes Catcher Framing runs above average.
  • Steamer projections and depth chart projections both include projected catcher framing for catchers and pitchers.

2019 FAN Projections!

The 2019 FAN Projection ballots are now open!

Before you can project any players, you’ll have to select the team you follow most closely towards the top of the screen. If you don’t really follow a team, just pick one. You’ll only have to do this once.

After you’ve selected a team, you can begin projecting players. There are nine categories of interest for pitchers and 10 categories for position players. Pick the values in the drop-down boxes closest to what you think the player will do in 2018. Hit the submit button and you’re done! If you made a mistake, you can always go back and change your selection at any time.

Please note that everything is a rate stat. You’re projecting 2B+3B, HR, SB, and Fielding as a measure of 150 games (basically a full season). The player’s previous stats are shown per 150 games in the projection ballot, too. This will make changing playing-time projections much easier, as you’ll only have to change the games played portion.

That’s really all there is to it. You can filter players by team or, if you go to the player pages, you can project players individually. If you want to see all the players you’ve projected, you can click on the “My Rankings” button, which will show you only what you specifically projected a player to do.

FAN Projections will appear on a player’s page after five ballots have been submitted for him.

If you do notice any issues, please let us know.