Author Archive: Jon Becker

FanGraphs Feature Focus: College Stats

With the 2026 college baseball season having just concluded (a hearty congratulations to both the University of Oklahoma and the College World Series’ Most Outstanding Player, Jaxon Willits), the MLB Draft Combine still in progress, and the Draft itself rapidly approaching, now seems like as good time as any to remind everyone that we added Division I college baseball statistics to the site last year. In addition to college leaderboards, Division I players have their own player pages, while the college stats of drafted pro players can be found on their pro player pages (undrafted free agents currently have separate college and pro player pages, though we’re working to merge them).

The leaderboards can be accessed within the Leaders tab on the main FanGraphs navigation bar:

Before I dive in, here are the basics:

  • Stats go back to 2021 and, as they are for professional leagues on the site, they’re updated daily during the season.
  • wRC+ is conference-adjusted, not park-adjusted as it is for the minors and majors.
  • Unlike most other FanGraphs leaderboards, there are no Dashboard or customization options for Members; what you see under the Standard and Advanced options is the full suite of college stats available.

Using the various drop-downs at the top of the page, you can build your own leaderboard. For example, you might be interested in the best seasons for Miami University (go RedHawks!) hitters since 2021, by wRC+:

Or the best SEC seasons by strikeout rate:

I used “Qualified” as my plate appearance/innings pitched minimum for both of these leaderboards. The qualified playing time rules are same as they are for affiliated ball: 2.1 plate appearances or one inning pitched per team game.

Our college player pages look much the same as the pro player pages, just with fewer statistics. There are even the customizable player cards you’ll find on all player pages, though of course the RosterResource information and Spark Graphs will have to wait:


College stats on the player pages is hidden by default for players who have more than one year of minor league data. College stats can be toggled back on using the College button at the top of each data table:

Turning college stats on for any table within a player’s page will turn it on for all tables, so long as you remain on that player’s page. Turning college stats on doesn’t make the other stats go away, of course, so you can view a player’s entire journey from college up through the minor leagues and into the majors. Here are Nick Kurtz’s ridiculous hitting lines since college:

One last thing to highlight: If the team abbreviations you see prove inscrutable, don’t worry – we have a fix for that! You don’t have to Google where the country’s second-leading hitter by batting average attended school. You can simply hover over the abbreviation in question to view the school’s full name:

As is always the case at FanGraphs, exporting college data to Excel is limited to Members.


FanGraphs Feature Focus: On-Pace Leaderboards

The FanGraphs Depth Charts. ZiPS. Steamer. ATC. THE BAT. OOPSY. These are all fantastic projection systems that I look at on a regular basis, and you should too. But what if the “projection” system was just… basic division and multiplication? Enter the On-Pace Leaderboards:

While the On-Pace Leaderboards are located within the Projections section of the site menu, I cannot stress enough that the stats you’ll see aren’t based on any projection system whatsoever. They’re merely a rest-of-season extrapolation based on what a player has done to that point in the season, with the scaling changing depending on whether you select Every Game Played or Games Played % in the menu:

Read the rest of this entry »


FanGraphs Feature Focus: RosterResource Coaches Table

The first feature I created as a FanGraphs developer, duties I added to my existing RosterResource work early last season, was the Coaches Table, which is located in the Breakdowns section of RosterResource. Since I haven’t done nearly a good enough job of publicizing its existence, I’ll atone by making it today’s Feature Focus.

Beyond the uniformed coaches that every team employs these days (manager, bench coach, often multiple hitting and pitching coaches, and base coaches), there are a couple of extra columns in the table that group coaches more broadly. The first is the “FC/QC/Catching” column. Many teams have a field coordinator (FC), quality control coach (QC), and/or catching coach, though not every team does, as some clubs prefer to spread those responsibilities around to existing coaches. The “Other Coaches” column covers every other uniformed coach who lacks a title that fits cleanly in one of the other columns. These are often coaches with generic titles like “Major League coach,” but not exclusively so. Miguel Cairo of the Orioles, for example, serves as the dedicated infield coach, a role usually taken by one of the base coaches in addition to his duties at first or third. Read the rest of this entry »


FanGraphs Feature Focus: WAR Graphs

Denny Medley-Imagn Images

Today’s Feature Focus covers WAR Graphs, a quite underutilized tool in my opinion. (We’re called FanGraphs after all, and this is a Graph that you can make, as a Fan.) The tool is accessed near the bottom of the Leaders menu, under WAR Tools:

That’ll send you to this landing page, a blank canvas for adding players:

After selecting players, you’ll be welcomed with three graphs: nth Best Season, Cumulative WAR by Age, and WAR by Age. The view defaults to showing all three, but you can toggle at the top:

Let’s dive into each graph. Read the rest of this entry »


FanGraphs Feature Focus: Closer Depth Chart

The Closer Depth Chart is one of the longest-standing features at RosterResource, making its FanGraphs debut at the beginning of the 2021 season. Prior to this season, the Closer Depth Chart looked much as it did in that intro article from five years ago, but there have been some key improvements this year. Here’s a walkthrough of what it’s got, both new and old, from left to right:

Criteria for Included Pitchers, Plus Our Process

When the Closer Depth Chart first launched, we only included the top five or six relievers per team, plus those on the injured list. But with RosterResource often taking a “more is more” approach, we’ve begun including all active relievers in a team’s bullpen, plus the injured ones. The Projected Role column matches that shown on the RosterResource team page, including co-closers or closer committees, a situation the A’s are currently working with:

A reliever may also have a green triangle next to his name (denoting a Reliever On The Rise) or a red square (denoting the opposite, an arm who is On The Hot Seat):

A lot of what we do at RosterResource has a certain level of subjectivity to it, and none is more subjective than trying to classify relievers, whether by the name of their role or if they ought to be considered a Reliever On The Rise or On The Hot Seat. Managers have to tell you their lineups or starting rotations; they never have to name a closer or formally move someone up or down in the bullpen hierarchy. As such, we can only go off a manager’s actions while also keeping in mind that roles are fickle, or that a pitcher simply might not be available for a game or has an undisclosed ailment that isn’t quite enough to send him to the IL. This is all about pointing you in the right direction, not being an objective truth.

Usage for the Last Six Days

Panning rightward now, we do see an objective truth: how the bullpen has been used in the last six days. From here you can easily see that Louis Varland (a) pitches a ton and (b) pitches in a very important role when he does, as evidenced by the three saves and a win in his last four appearances entering Wednesday. But new to 2026, we’ve got more information when hovering over an appearance’s cell:

This additional data helps to better summarize and contextualize a pitcher’s outing beyond a raw pitch count and result. Knowing if a pitcher had an “up-down’ (an appearance spanning multiple innings) can inform an educated guess of his availability for the next day; having an awareness of the combination of innings a pitcher appeared in and the leverage index aids in clarifying his role.

Farthest to the right of the usage section are the totals, simply the sum of the innings pitched and pitches thrown over the last six days. Since managers and pitching coaches will weigh recent usage beyond just the prior game when making decisions, that’s another good data point to have.

Stats

We’ve always had a slew of stats on the Closer Depth Chart, but there are even more this year. New to the party are swinging strike rate (SwStr%), strikeout rate (K%), walk rate (BB%), shutdowns (SD), and meltdowns (MD). Shutdowns are outings worth at least 6% WPA; meltdowns are outings worth a WPA of -6% or worse. With all those new stats, we needed more room, so there’s now a toggle between Results stats and Arsenal stats, accessed by hovering:

Clicking over to Arsenal showcases a pitcher’s average velocity for his four-seam fastball and/or sinker, as well as the Stuff+ for his entire repertoire, even the rare few who throw knuckle curves or forkballs. (Fun fact, nobody currently in a big league bullpen throws a forkball, but the infrastructure is ready to handle when one arises!)

This year’s additions to the Closer Depth Chart make it more powerful than ever, but I’m never closed off to making more, and I love listening to suggestions. As ever, you’re welcome to offer feedback here, find me on Twitter or Bluesky, or email us at rosters@fangraphs.com.


FanGraphs Feature Focus: Live Stats

Well, it only took until my fifth Feature Focus to get to a site tool that I completely forgot we had! After Cristopher Sánchez’s fantastic (but scoreless-streak-ending) start last Wednesday, I saw this tweet from OnPattison’s Tim Kelly:

Thanks to Tim for using and citing FanGraphs, a great website that amazingly pays me to read your tweets and turn them into articles. Anyway, that post got me wondering: Where the heck was Tim getting that live WAR figure? I knew you could find live stats on the player pages — I look at those all the time. Fittingly, yesterday was another start day for Sánchez. Here’s the top of his player page 17 outs into that start:

But WAR isn’t on that little table, so where, pray tell, was Tim finding that number? Well, I did some digging and learned we’ve had live stats on our leaderboards since 2013, as introduced by David Appelman in what has to be the shortest post in FanGraphs history.

Our leaderboards are among our most viewed pages, and for good reason: They’re awesome. What might not be readily apparent (and certainly wasn’t to me) is that we’ve got some basic splits available in the dropdown on the right side of the page:

I’m a power user of our splits leaderboards and tend to default to those whenever I need a bespoke leaderboard that incorporates filters. That means I haven’t made full use of the Splits dropdown on the main leaderboard, which has some fun ready-made options (with more beyond what’s shown here):

And behold, there it is: “Live Stats – Today” and “Live Stats – Full Season.” The “Live Stats – Today” option only shows you stats from today’s action:

“Live Stats – Full Season” gives you today’s stats combined with the rest of the campaign — note how Sánchez’s innings total here matches the 92 from my screenshot of the Live Stats table on his player page:

The “Yesterday” option gives you a quick look at the prior day, in case you didn’t looked at live stats upon the conclusion of the day’s games and want to know who performed the best. Here are Sunday’s top hitters by WAR, as I compose this piece on Monday:

You can also use the Custom Date Range option to see stats for any individual day you’d like, or any set of days. The presets within that dropdown are there for ease of use, but you aren’t limited to those date ranges:

All of the date toggles and split options on the leaderboards are available to all FanGraphs users, but as usual, I’ll remind you that exporting to Excel is a Member-only feature. To become a FanGraphs Member, click here.


FanGraphs Feature Focus: RosterResource Probable Pitchers

If you’ve ever even glanced at a RosterResource team page, you’ve probably noticed there’s an upcoming schedule table at the top that includes probable pitchers for the next 10 days:

That’s all well and good if you only care to look at one team, but if you’re a fantasy player, roster freak, or just chronically ill with baseball fever, the Probables Grid is that little upcoming schedule box blown up to its extreme. Read the rest of this entry »


FanGraphs Feature Focus: Dashboard Customization

As promised last Thursday, the first Feature Focus of this week highlights a Member-exclusive feature of FanGraphs: dashboard customization. The dashboard is the collection of cards you see when you first open a player page, as well as the first stats table.

The default dashboard view for non-Members includes the Quick Look, RosterResource and News cards, with different stats tables depending on whether the player is a hitter:

Read the rest of this entry »


FanGraphs Feature Focus: Weather Splits

Dale Zanine-Imagn Images

For today’s FanGraphs Feature Focus, I’ll be taking a look at one of my favorite site features: our Weather Splits. Michael Baumann spotlighted these splits back in 2024, and the format of the page hasn’t changed since then. So while I’ll walk you through how the Weather Splits work and where to find them, I’ll mostly be showcasing some of the silly leaderboards they can help to generate.

To create the leaderboards in this piece, I toyed around with the Weather Split Ranges on the Splits tab of the Splits Leaderboard:

Those Weather Split Ranges aren’t mutually exclusive or siloed off from the rest of the splits. For example, by changing the Wind Speed filter and adding the Wind Direction sub filter, we can see which players have hit multiple home runs with the wind blowing in at 10 mph or more:

Against the Wind: Multiple Home Runs With 10+ MPH Winds Blowing In
Name Team PA HR
Ryan Jeffers MIN 21 3
Salvador Perez KCR 25 2
Aaron Judge NYY 31 2
Cody Bellinger NYY 30 2
Otto Lopez MIA 19 2
Andrés Giménez TOR 30 2
Jonathan India KCR 12 2
Matt Vierling DET 10 2
Jonathan Aranda TBR 43 2
Brandon Valenzuela TOR 15 2
Shea Langeliers ATH 10 2
Tyler Soderstrom ATH 10 2
Jordan Walker STL 14 2
Pete Crow-Armstrong CHC 44 2
Carter Jensen KCR 25 2
Liam Hicks MIA 16 2

Bob Seger would be proud of Ryan Jeffers, who is currently on the IL after undergoing hamate surgery but still tops this leaderboard as the only player with a trio of homers against significant winds. If you click into the full leaderboard, you’ll notice that Auto PT is on:

When that’s the case, the leaderboard will smartly adjust the minimum playing time depending on how restrictive your search is, sometimes setting no minimum at all. You can always set your own minimum in the Filters section. The Temperature filter is even more straightforward to use, though here I’ll note that our filters don’t automatically eliminate indoor or retractable roof stadiums. That’s done with the Ballpark Type filter:

Applying those two filters in tandem, I made a list of the pitchers who’ve done especially well when it’s either chilly or flat-out cold, and they’re actually exposed to those elements:

The Cold Never Bothered Me Anyway: Sub-2.00 FIP in 59 Degrees or Colder
Name Team IP FIP
Cade Smith CLE 11.0 0.08
Bryan Woo SEA 12.0 0.83
Tarik Skubal DET 10.2 1.01
Garrett Whitlock BOS 12.2 1.18
Cristopher Sánchez PHI 18.0 1.35
Zack Wheeler PHI 10.1 1.43
Joe Boyle TBR 11.1 1.58
Drew Rasmussen TBR 12.0 1.58
Braxton Ashcraft PIT 24.2 1.62
Joe Ryan MIN 33.0 1.71
Noah Cameron KCR 10.2 1.76
Minimum 10 IP, n = 106. Roof open/fully outdoor stadiums only.

While the ball doesn’t carry as well in cooler temperatures, it can also cause pitchers to experience grip troubles, even at a relatively balmy 57 degrees. But that hasn’t affected the pitchers on this leaderboard.

The Weather Splits are also a great excuse to take a crash course in barometric pressure, which I had to do in order to understand our various splits. Per Maximum Weather Instruments, which sells barometers and other pressure measurers, normal air pressure is considered 1,013.25 millibars. Anything above that is considered high pressure, so I set my minimum at 1,014. These relievers are the guys most frequently used in high-pressure situations… in both senses of the word:

Under Pressure: Most High-Leverage Batters Faced in High Pressure, as Reliever
Name Team IP TBF FIP
Devin Williams NYM 6.1 34 5.29
Bryan King HOU 6.1 34 3.24
Riley O’Brien STL 7.2 29 1.12
Gus Varland WSN 7 29 3.36
Luke Weaver NYM 7 28 2.22
David Bednar NYY 5.2 27 0.61
Pete Fairbanks MIA 5.2 25 2.37
Huascar Brazobán NYM 5 23 3.88
Justin Sterner ATH 4.2 23 4.15
Calvin Faucher MIA 4.2 22 5.65
Mason Miller SDP 6 22 0.41
Adrian Morejon SDP 5.1 21 0.83
Victor Vodnik COL 5 21 6.68
Jaden Hill COL 4.1 21 4.00
Aroldis Chapman BOS 5 20 3.68
Tony Santillan CIN 5 20 5.28
PJ Poulin WSN 3.1 20 7.28
Louis Varland TOR 6 20 2.24
High pressure: 1014+ millibars

Did I really do this research and make a whole leaderboard just so I could make an “Under Pressure” joke? I choose to exercise my Fifth Amendment rights, Your Honor.

I made leaderboards for these three splits, but we’ve got plenty more within the Weather tab of the Splits Leaderboard. Beyond the ranges for temperature, pressure, and wind, you can also set ranges for air density and elevation. The Ballpark Type and Weather tabs at the top also include some binary filters that you can combine (e.g., rain and drizzle, or fog and haze):

As with ballpark type and leverage, the weather ranges can be combined with both each other and the binary weather filters. For instance, you could look at high winds in warmer weather only, or rain in colder weather only.

Our Weather Splits are available going back to 2010, and the entirety of the Splits Leaderboard can be accessed regardless of whether you’re a FanGraphs Member. But if you want to export to Excel to more easily compare player performance across splits, you have to be a Member. If you’d like to sign up for a Membership, you can do so here.


FanGraphs Feature Focus: Intro and Ranked Leaders

Welcome to the FanGraphs Feature Focus, a new semiweekly series highlighting some of the overlooked site tools at your disposal as a FanGraphs user. With so many great tools, leaderboards and stats here at FanGraphs, it can be easy to lose track; my goal is to shed light on them. Since I spend about half of my time working on RosterResource and the rest helping to develop new features and improve old ones, I’ve gotten very familiar with everything the site has to offer. What’s more, because I am extremely online, I’m very attuned to how others use FanGraphs, which means I have a good sense of which features aren’t getting as much traction as their utility suggests they should.

These posts will take on different forms depending on the FanGraphs Feature being focused upon. Sometimes they’ll be quicker “Hey, this exists, have fun!” pieces; sometimes they’ll be in-depth tutorials explaining how our more complex tools work. If there’s an unfamiliar feature in our site menus that you’d like to know more about, drop it in the comments below. It might become a future Feature Focus! Read the rest of this entry »