MLB > Leaderboards > Statcast Stats (Percentiles)
Unique metrics based on Statcast data — some you may be familiar with, and some that are brand new — plus THE BATcast's projected version of each metric. This is the same data as the "Statcast Stats (Raw)" page except presented as percentiles where 0 is worst and 100 is best. After all, it's not always apparent whether, say, a Barrel% of 22% is good, bad, or somewhere in between, but it's easy to tell on a 0-to-100 scale
*Yearly stats reflect what the player actually did. Projections are an estimate of a player's true talent level right nowand update nightly.
';}if (groups.length == 0)getobj('toggleGroup').style.display = "none";getobj('toggleGroup').innerHTML=pageData;}function toggleSplitList() {var pageData = '';var gcount = 0;for (var h in splits.header) {pageData = pageData + '
' + h + ': ';var count = 0;gcount = gcount + 1;for (var s in splits.header[h]) {count = count + 1;var list = [];for (var d in splits.data) {if (h in splits.data[d] && splits.header[h][s] == splits.data[d][h])list.push(d);}pageData = pageData + '';}pageData = pageData + '
';}if (splits.length == 0)getobj('splitGroup').style.display = "none";getobj('splitGroup').innerHTML=pageData;}function toggleGroupDefault() {var init = 1;for (var g in groups) {var toggled = false;var all = groups[g].defaultAll;for (var o in groups[g].values) {if (!toggled) {if (all) {toggleGroup(1, groups[g].header, '', init);all = false;}else {toggleGroup(1, groups[g].header, groups[g].values[o], init);}toggled = true;}}init = 0;}}function toggleGroup(id, header, val, type) {addFilter(header, val);// Remove clicked classvar elements = document.querySelectorAll('[id^="' + header.toLowerCase() + '-"]');for (var i = 0; i < elements.length; i++)elements[i].classList.remove('group-button-clicked');// Add clicked classvar e = document.getElementById(header.toLowerCase() + '-' + id);e.classList.add('group-button-clicked');if (filteredHeaderRows.length > 0) {workingDataRows=[];filterRows();getPageDataRows();}}function toggleSplitDefault() {toggleSplit('1','0');}function toggleSplit(id, group) {var sel = 0;var elements = document.querySelectorAll('[id^="splits-"]');for (var i = 0; i < elements.length; i++) {var cols = elements[i].dataset.columns.split(',');for (var c = 0; c < cols.length; c++) {if (hiddenCols.indexOf(cols[c]) === -1)hiddenCols.push(cols[c]);}if (id > 0) {if (elements[i].dataset.group == group || group == '0') {if (elements[i].dataset.order == id) {elements[i].classList.add('group-button-clicked');elements[i].dataset.selected = '1';}else {elements[i].classList.remove('group-button-clicked');elements[i].dataset.selected = '0';}}}}for (var i = 0; i < elements.length; i++) {var cols = elements[i].dataset.columns.split(',');if (elements[i].dataset.selected == '1') {sel = sel + 1;for (var c = 0; c < cols.length; c++) {if (cols[c] in activeCols)activeCols[cols[c]] = activeCols[cols[c]] + 1;elseactiveCols[cols[c]] = 1;}}}for (var a in activeCols) {if (activeCols[a] < sel)delete activeCols[a];}if (elements.length > 0) {toggleColumns();activeCols = [];}}function addFilter(header, val) {x = header + '.' + val;for (var i = 0; i < filteredHeaderRows.length; i++) {if (filteredHeaderRows[i].startsWith(header + '.'))removeA(filteredHeaderRows, filteredHeaderRows[i]);}filteredHeaderRows.push(x);}function filterRows() {var list = [];filteredRows = [];for (var x = 0; x < filteredHeaderRows.length; x++) {var y = filteredHeaderRows[x].split('.');for (var i = 0; i < dataRows.length; i++) {if (dataRows[i].columns[y[0]] == y[1].toUpperCase() || y[1] == '') {if (i in list)list[i] = list[i] + 1;elselist[i] = 1;if (list[i] == filteredHeaderRows.length) {workingDataRows.push(dataRows[i]);filteredRows.push(i);}}}}if (getobj('searchStr').value != '')getSearchResults();}function toggleColumns() {var tbl = document.getElementById('dataTable');var tableHeader = tbl.getElementsByTagName('thead')[0].getElementsByTagName('tr');var tableRows = tbl.getElementsByTagName('tbody')[0].getElementsByTagName('tr');for (var c = 0; c < tableHeader[0].cells.length; c++) {if (hiddenCols.indexOf(headers[c]) !== -1 && !(headers[c] in activeCols))tableHeader[0].cells[c].style.display = "none";elsetableHeader[0].cells[c].style.display = "";}for (var r = 0; r < tableRows.length; r++) {for (var c = 0; c < tableRows[r].cells.length; c++) {if (hiddenCols.indexOf(headers[c]) !== -1 && !(headers[c] in activeCols))tableRows[r].cells[c].style.display = "none";elsetableRows[r].cells[c].style.display = "";}}}function getPageDataRows(){var pageData=headerRows;totalWorkingDataRows=workingDataRows.length;var currentStop=Math.min(totalWorkingDataRows-1, currentTop+pageSize);pageData=pageData + '
';for (var i = currentTop; i < currentTop+pageSize && i < totalWorkingDataRows; i++){pageData=pageData + workingDataRows[i].dataRow;}if (totalWorkingDataRows == 0)pageData = pageData + 'No records available at the moment.';pageData=pageData + '';getobj('dataTable').innerHTML=pageData;var currentSortHeader='header'+currentSortColumn;if (getobj(currentSortHeader)) {getobj(currentSortHeader).classList.add('sortedColumnAsc');}toggleSplit('0','0');}function changeCurrentRow(direction){switch(direction) {case 'fast_rewind':currentTop=1;break;case 'neg_2':currentTop=currentTop-(pageSize*2);break;case 'neg_1':currentTop=currentTop-pageSize;break;case 'plus_2':currentTop=currentTop+(pageSize*2);break;case 'plus_1':currentTop=currentTop+pageSize;break;case 'fast_forward':currentTop=totalWorkingDataRows-pageSize;break;}currentTop=Math.max(1, Math.min(totalWorkingDataRows-pageSize, currentTop));getPageDataRows();}function getSearchResults(){var targetStr=getobj('searchStr').value;workingDataRows = [];for (var i=0; i
LEADERBOARDS
Projections (Totals)
Projections (Rates)
Statcast Stats (Raw)
Statcast Stats (Percentiles)
Expected Stats
Hitter Rankings
Pitcher Rankings
Team Offense Rankings
Team Pitching Rankings
Team Bullpen Rankings
RESEARCH DATA
Statcast Correlations
Park Factors
Stolen Base Matchup Tool
Umpire Rankings
SP SB Tendencies
RP SB Tendencies
Glossary
×
Observed | Anything with this filter is the player’s actual stats accrued in a given year |
Projected | Anything with this filter is the player’s projected talent level at the present time |
THE BAT | The classic projection system from Derek Carty, as popularized at FanGraphs (for season-long projections) and RotoGrinders (for daily fantasy projections). Read more about THE BAT here |
THE BATcast | A new projection system from Derek Carty, similar to THE BAT but using only Statcast data to project players (with the exception of non-contacted-ball outcomes like strikeouts and walks, which use THE BAT’s original projection) |
THE BAT X | A new projection system from Derek Carty. The optimal combination of THE BAT and THE BATcast, combining both traditional stats and Statcast data to form the best possible projection. Read more about THE BAT here |
wOBA | Weighted On-Base Average. Created by Tom Tango, the best measure of a player’s offensive contribution to run-scoring |
BA | Batting Average |
Note:Statcast stats are calculated live by in-ballpark cameras and radar. These occasionally fail to record data on certain batted balls. All data and projections displayed at EV that rely on Statcast data identify these missed balls and estimate what they should have been. Internal tests showed this to be slightly more accurate than either ignoring the missing data or using MLB's imputed data.
fast_rewindexposure_neg_2exposure_neg_1exposure_plus_1exposure_plus_2fast_forward
×
Observed | Anything with this filter is the player’s actual stats accrued in a given year |
Projected | Anything with this filter is the player’s projected talent level at the present time |
THE BAT | The classic projection system from Derek Carty, as popularized at FanGraphs (for season-long projections) and RotoGrinders (for daily fantasy projections). Read more about THE BAT here |
THE BATcast | A new projection system from Derek Carty, similar to THE BAT but using only Statcast data to project players (with the exception of non-contacted-ball outcomes like strikeouts and walks, which use THE BAT’s original projection) |
THE BAT X | A new projection system from Derek Carty. The optimal combination of THE BAT and THE BATcast, combining both traditional stats and Statcast data to form the best possible projection. Read more about THE BAT here |
wOBA | Weighted On-Base Average. Created by Tom Tango, the best measure of a player’s offensive contribution to run-scoring |
BA | Batting Average |
Note:Statcast stats are calculated live by in-ballpark cameras and radar. These occasionally fail to record data on certain batted balls. All data and projections displayed at EV that rely on Statcast data identify these missed balls and estimate what they should have been. Internal tests showed this to be slightly more accurate than either ignoring the missing data or using MLB's imputed data.
fast_rewindexposure_neg_2exposure_neg_1exposure_plus_1exposure_plus_2fast_forward