This page is loading — it needs JavaScript. The written page below is served without it.
Across 535 MLB players with at least 10 logged games in hits, this page measures 33047 games in total. The median player in that field averages 0.7 hits. The line closest to a coin flip sits at 0.5 for the median of the 535 players whose distribution supports one — half the field is more often over it, half more often under. The deepest sample here is Max Muncy, with 153 logged games. Of the 80 players whose spread can be measured, 0 cluster tightly around their average, 2 vary moderately and 78 swing widely. 535 of them have at least three games home and away, so the venue gap below is measured rather than assumed. Every figure is counted from official box scores and describes games already played. It is not a projection, and on its own it says nothing about whether any price on offer is worth taking.
Each player's own most balanced threshold — the half-point line he has finished above in closest to half his logged games — measured from his distribution rather than read off a book. Deepest sample first, not best to worst. The 40 deepest samples of 535 measured; the figures above this table are over all 535.
| Player | Club | Logged games | Average | Balanced line | Hit rate there |
|---|---|---|---|---|---|
| Max Muncy | Dodgers | 153 | 0.7 hits | Over 0.5 | 80 of 153 (52%) |
| Alec Burleson | Cardinals | 107 | 1.0 hits | Over 0.5 | 75 of 107 (70%) |
| Iván Herrera | Cardinals | 107 | 0.9 hits | Over 0.5 | 60 of 107 (56%) |
| Junior Caminero | Rays | 107 | 1.1 hits | Over 1.5 | 31 of 107 (29%) |
| Sal Stewart | Reds | 107 | 1.0 hits | Over 0.5 | 77 of 107 (72%) |
| Bryce Harper | Phillies | 106 | 1.0 hits | Over 0.5 | 65 of 106 (61%) |
| Jackson Merrill | Padres | 106 | 1.1 hits | Over 0.5 | 67 of 106 (63%) |
| Miguel Vargas | White Sox | 106 | 1.0 hits | Over 0.5 | 73 of 106 (69%) |
| Pete Crow-Armstrong | Cubs | 106 | 1.2 hits | Over 1.5 | 31 of 106 (29%) |
| Bryan Reynolds | Pirates | 105 | 1.0 hits | Over 0.5 | 75 of 105 (71%) |
| Ezequiel Duran | Rangers | 105 | 0.9 hits | Over 0.5 | 63 of 105 (60%) |
| Fernando Tatis Jr. | Padres | 105 | 1.2 hits | Over 1.5 | 35 of 105 (33%) |
| Jackson Chourio | Brewers | 105 | 1.2 hits | Over 1.5 | 30 of 105 (29%) |
| JJ Bleday | Reds | 105 | 0.7 hits | Over 0.5 | 56 of 105 (53%) |
| Jordan Walker | Cardinals | 105 | 1.0 hits | Over 0.5 | 71 of 105 (68%) |
| Matt Olson | Braves | 105 | 0.9 hits | Over 0.5 | 68 of 105 (65%) |
| Ozzie Albies | Braves | 105 | 0.8 hits | Over 0.5 | 66 of 105 (63%) |
| Bryson Stott | Phillies | 104 | 0.9 hits | Over 0.5 | 64 of 104 (62%) |
| Corbin Carroll | Diamondbacks | 104 | 0.8 hits | Over 0.5 | 60 of 104 (58%) |
| Geraldo Perdomo | Diamondbacks | 104 | 1.0 hits | Over 0.5 | 67 of 104 (64%) |
| Henry Bolte | Athletics | 104 | 0.9 hits | Over 0.5 | 64 of 104 (62%) |
| Manny Machado | Padres | 104 | 0.9 hits | Over 0.5 | 60 of 104 (58%) |
| Michael Busch | Cubs | 104 | 0.9 hits | Over 0.5 | 69 of 104 (66%) |
| Pete Alonso | Orioles | 104 | 1.1 hits | Over 0.5 | 72 of 104 (69%) |
| Yandy Díaz | Rays | 104 | 1.1 hits | Over 1.5 | 38 of 104 (37%) |
| Alex Bregman | Cubs | 103 | 1.0 hits | Over 0.5 | 66 of 103 (64%) |
| Bo Bichette | Mets | 103 | 1.1 hits | Over 0.5 | 70 of 103 (68%) |
| Brandon Marsh | Phillies | 103 | 0.7 hits | Over 0.5 | 53 of 103 (51%) |
| Brooks Lee | Twins | 103 | 1.0 hits | Over 0.5 | 65 of 103 (63%) |
| Daylen Lile | Nationals | 103 | 0.9 hits | Over 0.5 | 58 of 103 (56%) |
| Ernie Clement | Blue Jays | 103 | 0.9 hits | Over 0.5 | 64 of 103 (62%) |
| Gunnar Henderson | Orioles | 103 | 0.8 hits | Over 0.5 | 59 of 103 (57%) |
| Isaac Paredes | Astros | 103 | 1.0 hits | Over 0.5 | 68 of 103 (66%) |
| Kyle Schwarber | Phillies | 103 | 0.9 hits | Over 0.5 | 60 of 103 (58%) |
| Nico Hoerner | Cubs | 103 | 1.0 hits | Over 0.5 | 68 of 103 (66%) |
| Tristan Peters | White Sox | 103 | 0.8 hits | Over 0.5 | 53 of 103 (51%) |
| A.J. Ewing | Mets | 102 | 0.9 hits | Over 0.5 | 62 of 102 (61%) |
| Alec Bohm | Phillies | 102 | 1.0 hits | Over 0.5 | 66 of 102 (65%) |
| Ben Rice | Yankees | 102 | 1.0 hits | Over 0.5 | 62 of 102 (61%) |
| Caleb Durbin | Red Sox | 102 | 1.0 hits | Over 0.5 | 64 of 102 (63%) |
Standard deviation in the market’s own units, and the same figure as a share of the player’s average so it means the same thing in points as in passing yards. A narrow spread means the average is close to what a typical game actually looked like; it says nothing about what the next one will look like.
| Player | Club | Logged games | Average | Standard deviation | Spread as % of average |
|---|---|---|---|---|---|
| Trevor Story | Red Sox | 19 | 1.3 hits | 0.7 | 57% |
| Joshua Kuroda-Grauer | Athletics | 16 | 1.6 hits | 0.9 | 60% |
| Gabriel Moreno | Diamondbacks | 96 | 1.2 hits | 0.8 | 71% |
| Ronny Simon | Pirates | 15 | 1.0 hits | 0.7 | 73% |
| Ceddanne Rafaela | Red Sox | 88 | 1.2 hits | 0.9 | 73% |
| Josh Jung | Rangers | 53 | 1.1 hits | 0.9 | 77% |
| Brett Bateman | Blue Jays | 37 | 1.3 hits | 1.0 | 77% |
| Jake McCarthy | Rockies | 100 | 1.2 hits | 1.0 | 78% |
| Sal Stewart | Reds | 107 | 1.0 hits | 0.8 | 78% |
| Vinnie Pasquantino | Royals | 59 | 1.0 hits | 0.8 | 78% |
The other end of the same measurement. A wide spread means the average describes the middle of a broad range rather than a typical night, which is worth knowing before reading anything into that average.
| Player | Club | Logged games | Average | Standard deviation | Spread as % of average |
|---|---|---|---|---|---|
| Juan Brito | Reds | 13 | 1.0 hits | 1.2 | 118% |
| Mookie Betts | Dodgers | 100 | 1.1 hits | 1.1 | 104% |
| Blaze Alexander | Orioles | 51 | 1.1 hits | 1.1 | 100% |
| Oneil Cruz | Pirates | 44 | 1.1 hits | 1.1 | 99% |
| Jung Hoo Lee | Giants | 95 | 1.1 hits | 1.0 | 99% |
| James McCann | Diamondbacks | 26 | 1.1 hits | 1.1 | 99% |
| Luis García Jr. | Yankees | 96 | 1.1 hits | 1.0 | 98% |
| Jackson Merrill | Padres | 106 | 1.1 hits | 1.1 | 97% |
| Jac Caglianone | Royals | 92 | 1.1 hits | 1.1 | 97% |
| Alex Bregman | Cubs | 103 | 1.0 hits | 1.0 | 97% |
Both averages are over the games actually played at each venue, and the game count for each is in the cell beside it. A gap measured over a handful of games either way is one you cannot distinguish from noise — this table prints the denominators so you can tell which is which. Three games a side is the floor for appearing here at all.
| Player | Club | Home (games) | Away (games) | Gap |
|---|---|---|---|---|
| Santiago Espinal | Dodgers | 0.0 (4) | 1.0 (7) | 1.0 away |
| Yohandy Morales | Nationals | 1.4 (5) | 0.4 (7) | 1.0 at home |
| Blake Dunn | Reds | 0.7 (15) | 1.6 (12) | 0.9 away |
| Adolis García | Phillies | 0.9 (8) | 0.1 (9) | 0.8 at home |
| Tsung-Che Cheng | Red Sox | 0.4 (9) | 1.2 (5) | 0.8 away |
| Blaze Jordan | Cardinals | 0.4 (29) | 1.1 (29) | 0.7 away |
| Nick Madrigal | Rays | 1.1 (10) | 0.4 (9) | 0.7 at home |
| Eliezer Alfonzo | Dodgers | 0.1 (8) | 0.8 (5) | 0.7 away |
| Michael Stefanic | Athletics | 0.1 (7) | 0.8 (5) | 0.7 away |
| Christian Encarnacion-Strand | Orioles | 0.5 (23) | 1.2 (30) | 0.7 away |
Last five logged games against the full log, reported only where the gap is more than a tenth of the player’s own average. It is a description of five games that have been played and it is not a forecast of the sixth.
| Player | Club | Last 5 | Full log | Difference |
|---|---|---|---|---|
| Walker Jenkins | Twins | 1.6 hits | 0.6 over 20 | 167% above |
| Eli White | Red Sox | 1.2 hits | 0.5 over 67 | 144% above |
| Agustín Ramírez | Marlins | 1.4 hits | 0.6 over 34 | 116% above |
| Kyle Tucker | Dodgers | 1.6 hits | 0.8 over 98 | 104% above |
| Hao-Yu Lee | Tigers | 1.6 hits | 0.8 over 84 | 104% above |
| TJ Friedl | Reds | 0.6 hits | 0.3 over 50 | 100% above |
| Garrett Stubbs | Phillies | 0.4 hits | 0.2 over 25 | 100% above |
| Buddy Kennedy | Giants | 0.4 hits | 0.2 over 25 | 100% above |
| Brett Harris | Giants | 0.8 hits | 0.4 over 10 | 100% above |
| Mookie Betts | Dodgers | 2.0 hits | 1.1 over 100 | 89% above |
The same comparison in the other direction, and the same caveat: five games is five games, and a run below a baseline is as often noise as it is a change.
| Player | Club | Last 5 | Full log | Difference |
|---|---|---|---|---|
| Yandy Díaz | Rays | 0.0 hits | 1.1 over 104 | 100% below |
| Ernie Clement | Blue Jays | 0.0 hits | 0.9 over 103 | 100% below |
| Tristan Peters | White Sox | 0.0 hits | 0.8 over 103 | 100% below |
| Cam Smith | Astros | 0.0 hits | 0.7 over 100 | 100% below |
| Zach McKinstry | Tigers | 0.0 hits | 0.6 over 94 | 100% below |
| Taylor Ward | Mariners | 0.0 hits | 0.7 over 90 | 100% below |
| Evan Carter | Rangers | 0.0 hits | 0.5 over 86 | 100% below |
| J.T. Realmuto | Phillies | 0.0 hits | 0.7 over 85 | 100% below |
| Lars Nootbaar | Diamondbacks | 0.0 hits | 0.7 over 85 | 100% below |
| Lane Thomas | Braves | 0.0 hits | 0.7 over 79 | 100% below |
At the half-point threshold each player has finished above in about half their logged games. It is measured per player from their own distribution rather than read off a sportsbook, which is why it is on this page at all: a posted line moves through the day and this page is rebuilt once, so a number taken from a book would be wrong by morning.
No. Nothing here is ordered by how good a bet it is, and no price is quoted anywhere on the page. The tables are ordered by sample depth, by spread and by the size of a measured gap, because those are the things a game log can actually establish.
The count is printed beside every one of them. A player only appears once they have ten or more logged games in the market, and games they did not play are absent rather than counted as zero, so an average describes games they were actually in.
No. A trend here is a comparison between a player’s last five logged games and their full log, and it is reported only when the gap is large enough to be worth naming. It is a description of what has happened, and history is not a forecast.
What these tables are measuring, explained: how to read a hit rate and what its denominator hides, what an over/under line is and what it is not.
MLB player props and live odds
Odds and lines come from licensed data feeds and refresh on a schedule; hit rates, edges and grades are Parlay Builder’s own calculations.