​
​
Sign In
  • Support FanGraphs
    FanGraphs Membership
    FanGraphs Shirts
    FanGraphs Mugs
    Gift a Membership
    Donate to FanGraphs
  • Fantasy
    Fantasy Tools
    Fantasy Player Rater
    Auction Calculator
    Ottoneu Fantasy Baseball
    Signup, FAQ, Blog Posts
  • Blogs
    Blog Roll

    FanGraphs
    • The Cardinals DFA Erick Fedde as They Slide Further From Contention
    • Dan Szymborski FanGraphs Chat - 7/24/25
    • Rich Hill Is Alive With the Sound of Scream-Grunts
    • The Circumstances Under Which I Would Happily Institute a Salary Cap
    Podcasts: Effectively Wild

    FanGraphs Prospects

    RotoGraphs
    • Midseason 3B Rank Assessment
    • Paul Sporer's Baseball Chat - July 23rd, 2025
    Podcasts: The Sleeper and The Bust | Field of Streams | Beat the Shift

    Community Research
    • Effectively Wild's Preseason Predictions Game Update: Ben Clemens

    Archived Blogs: The Hardball Times | NotGraphs | TechGraphs | FanGraphs+
    Archived THT: THT Live | Dispatch | Fantasy | ShysterBall
    Archived Podcasts: FanGraphs Audio | Chin Music | UMP: The Untitled McDongenhagen Project | Stealing Home | Doing It For Bartolo | OttoGraphs |
  • Projections
    2025 Pre-Season Projections
    ZiPS, ZiPS DC
    Steamer
    Depth Charts
    ATC
    THE BAT, THE BAT X
    OOPSY
    2025 600 PA / 200 IP Projections
    Steamer600, Steamer600 (Update)
    2025 Updated In-Season Projections
    ZiPS (RoS), ZiPS (Update), ZiPS DC (RoS)
    Steamer (RoS), Steamer (Update)
    Depth Charts (RoS)
    ATC DC (RoS)
    THE BAT (RoS), THE BAT X (RoS)
    OOPSY DC (RoS)
    3-Year Projections
    ZiPS 2026, ZiPS 2027
    On-Pace Leaders
    Every Game Played, Games Played %
    Cy Young Award Projections

    Auction Calculator
  • Scores
    Today
    Live Scoreboard, Probable Pitchers
    Live Daily Leaderboards
    Win Probability & Box Scores
    2025, 2024, 2023, 2022, 2021, 2020, 2019
    AL Games
    MIL (10) @ SEA (2)Final
    BAL (2) @ CLE (3)Final
    NYY (4) @ TOR (8)Final
    CHW (11) @ TBR (9)Final
    ATH (1) @ TEX (2)Final
    NL Games
    CIN (5) @ WSN (0)Final
    SDP (2) @ MIA (3)Final
    SFG (9) @ ATL (3)Final
    DET (1) @ PIT (6)Final
    LAA (3) @ NYM (6)Final
    KCR (8) @ CHC (4)Final
    STL (0) @ COL (6)Final
    HOU (4) @ ARI (3)Final
    MIN (3) @ LAD (4)Final
    BOS (9) @ PHI (8)Final/11
  • Standings
    2025 Projected Standings
    2025 Playoff Odds, Playoff Odds Graphs
    2024 ZiPS Postseason Game-By-Game Odds
    AL East
    Blue Jays60420.0
    Yankees56464.0
    Red Sox55496.0
    Rays53507.5
    Orioles445715.5
    AL Central
    Tigers60430.0
    Guardians51508.0
    Royals505310.0
    Twins495310.5
    White Sox376623.0
    AL West
    Astros60420.0
    Mariners54486.0
    Rangers53507.5
    Angels495311.0
    Athletics426219.0
    NL East
    Mets59440.0
    Phillies58440.5
    Marlins485310.0
    Braves445714.0
    Nationals416117.5
    NL Central
    Brewers61410.0
    Cubs60421.0
    Reds53508.5
    Cardinals52519.5
    Pirates426119.5
    NL West
    Dodgers60430.0
    Padres55474.5
    Giants54496.0
    D-backs505310.0
    Rockies267633.5
  • Leaders
    Major League Leaders
    Batting: 2025, 2024, 2023, 2022, 2021, Career
    Pitching: 2025, 2024, 2023, 2022, 2021, Career
    Fielding: 2025, 2024, 2023, 2022, 2021, Career
    Major League Leaders - Rank
    Batting: Ranking Grid, Compare Players, Compare Stats
    Pitching: Ranking Grid, Compare Players, Compare Stats
    Splits Leaderboards
    Pitch-Type Splits Leaderboards
    Season Stat Grid

    Postseason Leaders
    Batting: 2024, (WS), (LCS), (LDS), (WCS), Career
    Pitching: 2024, (WS), (LCS), (LDS), (WCS), Career

    Spring Training Leaders
    Batting: 2025, 2024, 2023
    Pitching: 2025, 2024, 2023

    KBO Leaders
    Batting, Pitching
    NPB Leaders
    Batting, Pitching

    Minor League Leaders
    AAA: International League, Pacific Coast League
    AA: Eastern League, Southern League, Texas League
    A+: Midwest League, South Atlantic League, Northwest League
    A: California League, Carolina League, Florida State League
    CPX: Arizona, Florida
    R: Dominican Summer League
    College Leaders
    Batting, Pitching

    WAR Tools
    Combined WAR Leaderboards
    WAR Graphs
    WPA Tools
    WPA Inquirer
    Rookie Leaders
    Batters 2025, Pitchers 2025
    Splits Leaders
    Batters: vs L, vs R, Home, Away
    Pitchers: vs L, vs R, Home, Away
  • Teams
    Team Batting Stats
    2025, 2024, 2023, 2022, 2021, 2020
    Team Pitching Stats
    2025, 2024, 2023, 2022, 2021, 2020
    Team WAR Totals (RoS)
    AL East
    Blue Jays  |  DC
    Orioles  |  DC
    Rays  |  DC
    Red Sox  |  DC
    Yankees  |  DC
    AL Central
    Guardians  |  DC
    Royals  |  DC
    Tigers  |  DC
    Twins  |  DC
    White Sox  |  DC
    AL West
    Angels  |  DC
    Astros  |  DC
    Athletics  |  DC
    Mariners  |  DC
    Rangers  |  DC
    NL East
    Braves  |  DC
    Marlins  |  DC
    Mets  |  DC
    Nationals  |  DC
    Phillies  |  DC
    NL Central
    Brewers  |  DC
    Cardinals  |  DC
    Cubs  |  DC
    Pirates  |  DC
    Reds  |  DC
    NL West
    D-backs  |  DC
    Dodgers  |  DC
    Giants  |  DC
    Padres  |  DC
    Rockies  |  DC
    Positional Depth Charts
    Batters: C, 1B, 2B, SS, 3B, LF, CF, RF, DH
    Pitchers: SP, RP
  • RosterResource
    Current Depth Charts
    AL East
    Blue Jays
    Orioles
    Rays
    Red Sox
    Yankees
    AL Central
    Guardians
    Royals
    Tigers
    Twins
    White Sox
    AL West
    Angels
    Astros
    Athletics
    Mariners
    Rangers
    NL East
    Braves
    Marlins
    Mets
    Nationals
    Phillies
    NL Central
    Brewers
    Cardinals
    Cubs
    Pirates
    Reds
    NL West
    D-backs
    Dodgers
    Giants
    Padres
    Rockies
    In-Season Tools
    2025 Closer Depth Chart
    2025 Injury Report
    2025 Payroll Pages
    2025 Transaction Tracker
    2025 Schedule Grid
    2025 Probables Grid
    2025 Lineup Tracker
    2025 Minor League Power Rankings
    Offseason Tools
    2025 Free Agent Tracker
    2025 Offseason Tracker
    2025 Opening Day Tracker
  • Prospects
    Prospects Home
    The Board
    The Board: Scouting + Stats!
    How To Use The Board: A Tutorial
    Farm System Rankings

    Top Prospects List
    20252024
    AL
    BALCHWATH
    BOSCLEHOU
    NYYDETLAA
    TBRKCRSEA
    TORMINTEX
    NL
    ATLCHCARI
    MIACINCOL
    NYMMILLAD
    PHIPITSDP
    WSNSTLSFG
    2025 Preseason Top 100
  • Glossary
    Library
    Batting Stats
    wOBA, wRC+, ISO, K% & BB%, more...
    Pitching Stats
    FIP, xFIP, BABIP, K/9 & BB/9, more...
    Defensive Stats
    UZR Primer, DRS, FSR, TZ & TZL, more...
    More
    WAR, UBR Primer, WPA, LI, Clutch
    Guts!
    Seasonal Constants
    Park Factors
    Park Factors by Handedness
  • Sign In
LIVE CHAT: Dan Szymborski is chatting now.

The Odds of Hitting for the Cycle

by Steve Staude
May 28, 2013

Last week, Mike Trout hit for the cycle. When asked for a comment, coach Mike Scioscia said, “If I’m a betting man, I’ve got to believe there’s another cycle in his career somewhere.” That got me wondering.

Whenever I was in a math class where probability was being discussed, the question often in the back of my mind was, “How can this be applied to baseball?” One of the things I love the most about baseball is how well it lends itself to situations of probability, compared to most sports. I’m not sure what that says about me. Anyway, I figured this would be the perfect opportunity to refresh my memory (and hopefully some of yours) on how to crunch the numbers on situations like this. Don’t worry — the principles work on useful things other than just calculating the odds of that gimmicky achievement we call the cycle.

OK, let’s get right down to the math. This won’t be too hard, really. Kind of long, but hopefully worth learning.

First example: say a batter gets a hit 40% of the time overall, and makes an out the remaining 60% of the time. Let’s break down the odds of how 2 plate appearances of his will turn out:

Results Odds Combined Odds
PA #1 PA #2 PA #1 Result PA #2 Result
Possibility #1 Hit Hit 40% 40% 16%
Possibility #2 Hit Out 40% 60% 24%
Possibility #3 Out Hit 60% 40% 24%
Possibility #4 Out Out 60% 60% 36%
Total: 100%

For example, the odds of both PAs resulting in hits is 40% multiplied by 40%, which equals 16%, or 0.16. But there are two ways (“permutations”) that can result in getting a hit and an out between the two PAs, and each has a 24% chance of occurring… so, together, there’s a 48% chance this player will bat 0.500 over his two PAs. The remainder is the 36% chance of going 0-for-2.

The example is a really simple one… it gets a lot more complicated when you’re dealing with, say, 7 PAs, and considering the odds of a single, double, triple, etc. This being math and all, of course there are formulas you can use as shortcuts for coming up with the number of permutations. The formula for coming up with the total number of permutations is: n^r (n to the power of r), where n is how many types of things we’re considering (in the simple example, it’s 2 — hits and outs) and r is how many events we’re looking at (2 PAs in the example). 2^2 = 4 total permutations here. If we were considering singles, doubles, triples, homers, and outs as the only possible outcomes (there are 5 of them), and were analyzing the possible ways these could be arranged in a span of 7 PAs, the answer would be 5^7 = 78,125. So, yeah, that wouldn’t be fun to calculate by hand.

That formula, by the way, is specifically for situations where repeats are allowed (a.k.a. “with replacement”); since there’s nothing really making it impossible for a hitter to get several outs in a row, we can use this here. However, when it comes to breaking down the number of specific types of permutations (e.g. 1 hit and 1 out over 2 PAs), there’s another formula we should consider: r!/(r1! * r2! * … *rn!) . By the way, I saw this formula written with n’s instead of r’s, but I think that’s just confusing, since the variable here is the number of events. The exclamation mark stands for factorial, which tells you to multiply that number by all the positive integers that come before it; e.g. 4! = 1 * 2 * 3 * 4 = 24 … in Excel, =FACT(4) will do the trick. All the different r’s in the denominator represent how many instances there are of each type of event. I think that could use an example:

So if we’re talking about a cycle happening over the course of six plate appearances, since the cycle is achieved in only four of those PAs, we have two “spare” PAs to consider. Let’s simplify the possible outcomes to 1B, 2B, 3B, HR, and non-hits. Possibilities for those two spares include:

  • 2 singles
  • 1 single, 1 double
  • 1 single, 1 non-hit
  • 2 non-hits

… and you can imagine the rest. But let’s look at each of those. If the two spares are both singles, then there are a total of three singles in the six-PA sample. There are only one each of doubles, triples, and HR, and no non-hits in that situation.

1! and 0! both equal 1, which means we can ignore everything but singles in the denominator. If we wrote it all out, though, it’d look like 6!/3!1!1!1! … notice the different r’s in the denominator add up to the big r in the numerator. Simplifying down, the formula we end up with is 6!/3! = 120 permutations. That means there are 120 possible sequences of 6 PAs that could result in 3 singles, 1 double, 1 triple, and 1 HR. You’ll see why that’s relevant in a second.

OK, let’s say we’re dealing with a hitter who singles in 20% of his PAs, doubles 5%, triples 1%, and homers 9% of the time. We start finding the odds of him hitting for the aforementioned combination by doing: .2 * .2 * .2 * .05 * .01 * .09 = 0.00000036 . Not very likely, right? Well, that’s really the probability of each possible arrangement of that combination, which we discovered are 120 of them. So multiply that result by 120 to show that he has an overall 0.0000432 chance (or 0.00432%) of hitting 3 singles, 1 double, 1 triple, and 1 HR over the span of 6 PA.

If we’re talking about a 6-PA sequence with 2 singles, 2 doubles, 1 triple, and 1 HR, that’s 6!/(2! * 2!) = 180 permutations. The odds are therefore .2 * .2 * .05 * .05 * .01 * .09 * 180 = 0.0000162.

If it’s 2 singles, 1 double, 1 triple, 1 HR, and 1 non-hit, then there’s only one repeat, and it’s 6!/2! = 360 permutations. The odds of a “non-hit” are 1 – .2 – .05 – .01 – .09 = 0.65. So our odds are .2 * .2 * .05 * .01 * .09 * 0.65 * 360 = 0.0004212. A lot likelier than going 6-for-6, right?

Finally, let’s consider that the 2 PAs other than the cycle are non-hits. The non-hits are the repeat this time, so it’s again 6!/2! = 360 possibilities. Now, .2 * .05 * .01 * .09 * .65 *.65 *360 = 0.0013689. Our likeliest way to get a cycle by far.

Now you have to repeat the process for combos involving things like 3 triples (not likely), 2 doubles & 2 HRs, etc., but hopefully you get the point. The permutations will follow the same patterns, but the odds calculations will differ. But after you figure them all out, you add them all up and it gives you the total odds of that player hitting for the cycle given that many PAs.

The next step is doing the same sort of procedure for different given PA levels. You know that a cycle is impossible if you only get 3 PA in a game, so you can skip that. At 4 PAs, it’s really simple — there’s only one combination that allows you to get the cycle, and there are no repeats among them. There are 4! = 24 permutations of {1B, 2B, 3B, HR}. At 5 PAs, we’ll either have 1 non-hit in the mix — 5! = 120 — or there will be 1 repeat of a 1B, 2B, 3B, or HR — 5!/2! = 60. And so on. The next step is finding out how likely a player is to get 4 PAs, 5 PAs, 6 PAs, etc. in a game. I just did an analysis on 2012 Retrosheet data and found (by lineup position):

# of PAs in Game Leadoff 2nd 3rd 4th 5th 6th 7th 8th 9th Average
2 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.1% 0.1% 0.1% 0.0%
3 0.2% 0.5% 1.4% 3.2% 5.8% 10.7% 17.0% 25.7% 34.8% 11.0%
4 44.5% 52.6% 60.1% 65.7% 69.6% 69.9% 67.7% 62.7% 56.2% 61.0%
5 48.6% 41.5% 34.2% 27.8% 21.8% 17.0% 13.3% 9.8% 7.4% 24.6%
6 5.5% 4.3% 3.4% 2.7% 2.3% 1.9% 1.6% 1.4% 1.2% 2.7%
7 0.9% 0.7% 0.6% 0.5% 0.4% 0.4% 0.3% 0.3% 0.3% 0.5%
8 0.3% 0.2% 0.2% 0.1% 0.2% 0.1% 0.1% 0.1% 0.1% 0.2%
9 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0%
10 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0%

As you can see, hitting towards the top of a lineup can make a huge difference in how often a player will get those crucial 5+ PA games.

The Results

Using the 2012 PA breakdowns from above and MLB averages for 2010 through last week, I found the average odds of hitting for the cycle for a hitter with an “average” lineup spot to be about 0.0044% per game, or about once every 23,000 games. Well, maybe you can bump those odds up a little bit, because I didn’t consider the results of 8 PAs in a game and beyond. For a leadoff hitter (with the same MLB average stats, not with typical leadoff-hitter stats), it would be about 0.0071% per game, or close to once every 14,000 games.

But it turns out that Trout appears to indeed be the likeliest batter in the majors to hit for the cycle, with a neutral lineup position. He’s been hitting 2nd in the lineup recently, but if he were hitting first, you might figure him for about a whopping (relatively) 0.0375% chance of the cycle per game, or better than once per 2,700 games, based on his career rates. Add in the fact that he’s in a good lineup — and should therefore get more PAs than average — and things look even better for him. But even if we optimistically put him at a cycle per 2,500 games, that’s about once every 16 seasons, on average. Since triples are the hardest part of hitting for the cycle, we have to wonder how easy it will be for a bulky Trout to leg out a triple as he advances in age. It’s not going to get any easier — that’s for sure. So, sure, there’s a pretty good chance he’ll have another cycle, relative to most players, but it’s probably a 50-50 shot, at best.

Oh, 4th place on that list, by the way — Bryce Harper, at better than once per 3,600 games. The projections see him hitting fewer triples than he showed us last year, though.  Here are your top 25 by chance of a cycle per game (based on 2010-present historical numbers, signified by “H”, or by the average updated Steamer and ZiPS 2013 projected numbers “P”, with a 400 PA minimum):

Leadoff (H) Leadoff (P) Mid-lineup (H) Mid-lineup (P)
Mike Trout 0.03754% 0.04023% 0.02331% 0.02495%
Tyler Colvin 0.03452% #N/A 0.02133% #N/A
Carlos Gonzalez 0.03360% 0.03402% 0.02090% 0.02112%
Bryce Harper 0.02824% 0.01958% 0.01748% 0.01212%
Carl Crawford 0.02759% 0.01398% 0.01712% 0.00867%
Jose Reyes 0.02351% 0.02053% 0.01461% 0.01276%
Josh Hamilton 0.02349% 0.01411% 0.01459% 0.00871%
Dexter Fowler 0.02271% 0.02206% 0.01405% 0.01364%
Seth Smith 0.02102% 0.00653% 0.01300% 0.00404%
Yoenis Cespedes 0.02065% 0.01379% 0.01279% 0.00852%
Shane Victorino 0.02062% 0.01106% 0.01276% 0.00685%
Ryan Braun 0.02028% 0.01888% 0.01262% 0.01172%
Corey Hart 0.02027% #N/A 0.01256% #N/A
Carlos Gomez 0.02012% 0.03331% 0.01245% 0.02067%
Todd Frazier 0.01996% 0.01141% 0.01234% 0.00704%
Curtis Granderson 0.01885% 0.01216% 0.01163% 0.00750%
Robinson Cano 0.01842% 0.00807% 0.01145% 0.00501%
Logan Morrison 0.01800% #N/A 0.01111% #N/A
Peter Bourjos 0.01797% #N/A 0.01110% #N/A
Will Venable 0.01792% 0.01449% 0.01107% 0.00894%
Brett Lawrie 0.01754% 0.01707% 0.01086% 0.01054%
Stephen Drew 0.01736% 0.01452% 0.01072% 0.00895%
Troy Tulowitzki 0.01699% 0.01187% 0.01055% 0.00738%
Andrew McCutchen 0.01676% 0.01215% 0.01039% 0.00753%
Melky Cabrera 0.01604% 0.01220% 0.00997% 0.00757%

Here are some actual, historical stats:

Cycles

And a downloadable spreadsheet for you, if you want to see all of my calculations (watch out — it’s not pretty, and the numbers are from last week):

Some Caveats:

  • We can’t really be sure how relevant a player’s past rates are to their future odds (especially triples, since there are so few of them). You can try out Steamer or ZiPS projections in place of past performance, if you download the spreadsheet.
  • Park and lineup effects can make a big difference (changing teams can change the odds)
  • I’m sure PA frequency breakdowns aren’t entirely consistent between years, yet mine are based on only 2012 data
  • I only worked this out through 7 PAs in a game.  Obviously, if you get 8 or 9 PAs in a game, your odds of a cycle go up considerably… but that rarely happens, especially over 9 innings.
  • Triples rates are basically the deciding factor here, and they are hard to predict.





Daily Notes: Mostly Compelling Debut Scheduled in D.C.
 
De-Lucking Team Offenses

Steve is a robot created for the purpose of writing about baseball statistics. One day, he may become self-aware, and...attempt to make money or something?

62 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Thufir
12 years ago

Babe Herman laughs at your calculations. From the grave.

Excellent post, my money is on Trout.

0
In this article...
Mike Trout
PAOBPISOwRC+WAR
329.359.2301251.2
    The Cardinals DFA Erick Fedde as They Slide Further From Contention
    7/24 – Jay Jaffe
     
    1
    Dan Szymborski FanGraphs Chat - 7/24/25
    7/24 – Dan Szymborski
    Rich Hill Is Alive With the Sound of Scream-Grunts
    7/24 – Davy Andrews
     
    3
    The Circumstances Under Which I Would Happily Institute a Salary Cap
    7/24 – Michael Baumann
     
    15
    2025 Trade Value: Nos. 11-20
    7/24 – Ben Clemens
     
    112
    Andrew Abbott Merits More Attention (And He’s Getting It Here)
    7/23 – David Laurila
     
    1
    The Brewers Are What We Expected, but Also Better
    7/23 – Michael Baumann
     
    14
    2025 Trade Value: Nos. 21-30
    7/23 – Ben Clemens
     
    153
    Catching up With the ZiPS Top 100 Prospects, 2025
    7/23 – Dan Szymborski
     
    55
    Effectively Wild Episode 2351: The Worst Way to Lose
    7/22 – Meg Rowley
    David Robertson and the Possibility of a We Tried Tracker: Deadline Edition
    7/22 – Davy Andrews
     
    7
    Counterpoint: Don’t Listen to Jay; The Diamondbacks Should Stand Pat or Even Buy at the Deadline
    7/22 – Michael Baumann
     
    8
  • Alex Chamberlain
    Post Count: 13
  • Ben Clemens
    Post Count: 1393
  • Ben Lindbergh
    Post Count: 2328
  • Dan Szymborski
    Post Count: 1132
  • David Appelman
    Post Count: 907
  • David Laurila
    Post Count: 2081
  • Davy Andrews
    Post Count: 286
  • Eric Longenhagen
    Post Count: 952
  • Eric Longenhagen and James Fegan
    Post Count: 9
  • Eric Longenhagen and Travis Ice
    Post Count: 15
  • Esteban Rivera
    Post Count: 119
  • FanGraphs Staff
    Post Count: 29
  • Jake Mailhot
    Post Count: 324
  • Jason Martinez
    Post Count: 109
  • Jay Jaffe
    Post Count: 1710
  • Jon Becker
    Post Count: 80
  • Kiri Oler
    Post Count: 44
  • Kyle Kishimoto
    Post Count: 69
  • Leo Morgenstern
    Post Count: 145
  • Matt Martell
    Post Count: 21
  • Meg Rowley
    Post Count: 685
  • Michael Baumann
    Post Count: 509
  • Michael Rosen
    Post Count: 48
  • Paul Sporer
    Post Count: 13
  • Sean Dolinar
    Post Count: 112
  • Tess Taruskin
    Post Count: 47
  • Travis Ice
    Post Count: 5
  • 2024 Postseason
  • 2024 Trade Deadline
  • 2024 Trade Value
  • 2025 BBWAA Ballot
  • 2025 Classic Baseball Ballot
  • 2025 MLB Draft
  • 2025 Positional Power Rankings
  • 2025 Replacement-Level Killers
  • 2025 Trade Deadline
  • 2025 Trade Value
  • 2025 ZiPS Projections
  • Best of 2024
  • Chat
  • College
  • Contract Crowdsourcing 2024-25
  • Crowdsourcing
  • Effectively Wild
  • Effectively Wild 2025 Season Preview
  • Extension
  • Featured
  • Featured Prospects
  • Five Things
  • Free Agent Signing
  • Hall of Fame
  • Idle Thoughts
  • JAWS
  • Job Postings
  • Mailbag
  • Matrix Reloaded
  • MLB Draft Week 2025
  • Old Scouting Reports Revisited
  • Power Rankings
  • Prospect List
  • Prospect Week 2025
  • Prospects
  • Prospects Report 2025
  • Q&As
  • Research
  • Site News
  • Talks Hitting
  • Angels
  • Astros
  • Athletics
  • Blue Jays
  • Braves
  • Brewers
  • Cardinals
  • Cubs
  • Diamondbacks
  • Dodgers
  • Giants
  • Guardians
  • Mariners
  • Marlins
  • Mets
  • Nationals
  • Orioles
  • Padres
  • Phillies
  • Pirates
  • Rangers
  • Rays
  • Red Sox
  • Reds
  • Rockies
  • Royals
  • Tigers
  • Twins
  • White Sox
  • Yankees
  • Top of the Order
  • Trade
  • We Tried
You are going to send email to

Move Comment

Updated: Thursday, July 24, 2025 6:00 AM ETUpdated: 7/24/2025 6:00 AM ET
@fangraphs - Contact Us - Advertise - Terms of Service - Privacy Policy
sis_logo
All major league baseball data including pitch type, velocity, batted ball location, and play-by-play data provided by Sports Info Solutions.
mlb logo
Major League and Minor League Baseball data provided by Major League Baseball.
Mitchel Lichtman
All UZR (ultimate zone rating) calculations are provided courtesy of Mitchel Lichtman.
TangoTiger.com
All Win Expectancy, Leverage Index, Run Expectancy, and Fans Scouting Report data licenced from TangoTiger.com
Retrosheet.org
Play-by-play data prior to 2002 was obtained free of charge from and is copyrighted by Retrosheet.

Support FanGraphs
Become a Member

Please consider becoming a FanGraphs Member. All the great work that you've come to rely on is made possible by Member support, including analysis, stats, projections, RosterResource, prospect coverage, and podcasts.

Membership starts at $.16 a day.

Already a Member: Log In

Sign Me Up