👉 TAP TO SAVE 30% WITH CODE NEW
X
Lost password?

Don't have an account?
Gain Access Now

X

Receive free daily analysis

NFL
NBA
NHL
NASCAR
CFB
MLB
MMA
PGA
ESPORTS
BETTING

Already have an account? Log In

X

Forgot Password


POPULAR FANTASY TOOLS

Expert Advice
Articles & Tools
Import Your Leagues
Draft Rankings
Draft Simulator
Enter League Settings
Compare Any Players
Rookies & Call-Ups
24x7 News and Alerts

Introducing xPA to Project Plate Appearances

Nicklaus Gaut introduces the metric of xPA (expected plate appearances) as a tool for fantasy baseball draft prep. He uses historical data for team runs scored and lineup spot to project expected plate appearances for 2020 to find undervalued and overvalued players based on ADP and projections.

I like big rates and I cannot lie. You other readers can't deny. When a rate walks in with an itty PA and an integer in my face, I get sprung...Whoa! Wait just one second, Sir-Mix-A-Nick. Before I go full-Rhymenoceros on everyone, maybe we oughta back the track up a little bit.

What I like are rates according to plate-appearances because they're the simplest way to make adjustments to projections. The final numbers may change from the start of the offseason to the end but it's usually the playing-time components being adjusted, rather than the ones underpinned by assessment of the player's skills.

Imagine that Juan Soto is currently being projected to hit 35 HR at a rate of 0.053 HR/PA but was only projected to hit 32 HR in the previous projections. It's more likely that this is because they now believe Soto will have more opportunities to hit home runs rather than thinking he'll hit them more often. Little in the middle but it's got much back... Let's talk about xPA.

Be sure to check all of our fantasy baseball draft tools and resources:

 

Basic Methodology

Projecting a player's skill is one thing; figuring out how many times they'll come to the plate is another. Where a player bats is obviously a big driver, on average losing between 0.10 - 0.11 PA/G for every spot dropped in the lineup. That translates to around 16 PA over the course of a 162-game season, or about a 128-PA difference between the leadoff spot and the nine-hole. This is all known. What's not talked about as much is how team runs-scored will affect plate-appearances, in addition to lineup spot. It makes sense to think that the Yankees' leadoff hitter will end with more plate-appearances than his counterpart on the Tigers, no? In order to accurately project plate appearances, both lineup spot and team offense must be considered.

What I've done is use the research previously conducted by Tanner Bell, operator of SmartFantasyBaseball.com and co-author of "The Process", along with the team-offense data from multiple projection systems, to come up with a player's expected plate-appearances, or xPA. This is how many plate-appearances a player will be expected to have, given their expected lineup spot and how many runs their team is projected to score.

Baseball-referance.com has team stats available by lineup spot and what Bell did was take 10 years' worth of data to find the average plate-appearances per lineup spot according to how many runs their team scored. To accomplish this, he grouped the data by team runs scored in 50-run increments, starting with 500-550 runs scored. What he found was that in addition to a player gaining 0.10 PA/G for each spot they move up in the lineup, they also gain around 0.04 PA/G for every additional 50 runs their team scores, or about 5-7 PA over the course of a season.

All in all, Bell ended with a matrix providing average plate-appearances for every lineup spot, according to how many runs a team scored. Batting third on a team that scored 770 runs? It may not always be exact but I'd still bet they averaged around 4.51 PA/G. That comes out to 3.99 PA/G for a player batting seventh on a team that scored 620 runs. And on and on.

With expected PA/G now in hand, we now have one part of the equation but are still lacking the others. To get to xPA, we still need to know where in the lineup the player will bat, how many games he's likely to play, and how many runs his team will score. Let's round them up.

 

Projected Lineup Spot

Let's start with the most known of the unknowns. In theory, every spot in every lineup of every team can be tenuous. But practically speaking, there are some spots more certain than others and RosterResource on Fangraphs is the go-to source for looking at the current most-likely lineups for each team. As such, their projections will be the ones used in xPA, with adjustments made, as necessary.

This has flaws, as bench players are not given a projected lineup spot and some lineups are more fluid than others. But keep in mind that besides individual player projections, we're also looking to put a proper valuation on each lineup spot, regardless of the person in it.

I copied and sorted this data, making adjustments by hand to players considered fantasy relevant but not currently projected to start. This was as light of touch as I could muster, assigning those bench players a likely primary lineup spot based on known information about how different lineups should look, as well as where players have batted most recently. Imperfect but many of the imperfections will substantially improve in-season as lineup tendencies start sorting themselves out.

 

Projected Team Runs

I started by looking at six different projections: Steamer, PECOTA, ATC, The BAT, Depth Charts (a combination of Steamer and ZIPs, with playing time adjusted by Fangraphs staff), and Razzball, which is also an adjusted version of Steamer. I then took the average of projected team runs (adjusted to not overweight Steamer-centered systems) and assigned each team a run "bin," with the bins set up in 50-run increments:

BIN Team Runs
A 500 - 549
B 550 - 599
C 600 - 649
D 650 - 699
E 700 - 749
F 750 - 799
G 800 - 849
H 850 - 899
I 900 - 949
J 950 - 999

Combined with their projected lineup spot, I could now assign every player a code of A2, B1, F5, etc. This tells me where a batter is projected to bat and how many runs their team is projected to score, allowing me to pull their proper average PA/G from Bell's historical matrix.

Projected Games Played

With an expected-PA/G for every player, all I needed was projected games in order to get to xPA. This one was easy, as I just used the average between the same projections systems from above. Take average games played multiplied by xPA/G and you wind up with...

 

2020 Expected PA

When looking at the overall results, two main trends are clear. In general, xPA projects more plate appearances for top-third batters, particularly on the highest-scoring teams. The projection systems also tend to over-project lower-third batters, especially on lower-scoring teams. Looking at batters with at least a 350 ADP on NFBC, here are the top-15 players that were projected for fewer plate-appearances than what xPA predicts:

PLAYER TEAM Runs Rank BO ADP xPA AVG PA xPA - AVG PA
Mallex Smith SEA 27 9 162 504 545 -41
Amed Rosario NYM 21 8 119 584 621 -37
Evan White SEA 27 8 333 488 517 -29
Gavin Lux LAD 4 8 181 523 550 -27
Andrelton Simmons LAA 8 8 339 535 560 -25
Luis Robert CHW 9 8 71 550 574 -24
Dansby Swanson ATL 11 7 216 571 592 -21
Carter Kieboom WSN 14 8 317 451 472 -21
David Fletcher LAA 8 7 319 537 558 -21
Dee Gordon SEA 27 9 347 316 336 -20
Luis Urias MIL 17 8 350 503 522 -19
Miguel Sano MIN 2 8 108 521 539 -18
Michael Conforto NYM 21 6 126 566 582 -16
Giovanny Urshela NYY 3 9 235 498 514 -16
Kevin Kiermaier TBR 15 8 332 459 473 -14

Conversely, here are the top-25 players that xPA likes to have more appearances than the average projection system:

PLAYER TEAM Runs Rank BO ADP xPA AVG PA xPA - AVG PA
Kolten Wong STL 24 1 195 632 563 69
Tommy La Stella LAA 9 1 299 470 407 63
Max Kepler MIN 3 1 155 682 625 57
Brandon Lowe TBR 15 1 199 632 576 56
Tim Anderson CHW 10 1 82 703 647 56
Marcus Semien OAK 8 1 87 727 674 53
Ramon Laureano OAK 8 2 70 631 578 53
Austin Hays BAL 27 1 271 542 490 52
Kevin Newman PIT 27 1 183 620 568 52
DJ LeMahieu NYY 3 1 69 715 663 52
Brandon Nimmo NYM 20 1 322 552 501 51
Andrew Benintendi BOS 5 1 119 703 652 51
Shogo Akiyama CIN 17 1 265 519 472 47
Shin-Soo Choo TEX 16 1 229 656 609 47
David Dahl COL 13 1 150 595 548 47
Max Muncy LAD 4 2 75 650 603 47
Bo Bichette TOR 14 1 47 680 633 47
Jean Segura PHI 17 2 177 613 568 45
Jorge Polanco MIN 3 2 156 704 659 45
Yasmani Grandal CHW 10 4 115 590 545 45
Jon Berti MIA 29 7 249 295 251 44
George Springer HOU 1 1 50 691 647 44
Starling Marte ARI 20 1 22 660 617 43
Francisco Lindor CLE 7 1 9 722 680 42
Niko Goodrum DET 23 2 263 622 581 41

 

Wrapping Up

Using xPA isn't about saying that these are these projections that should be used. While I believe strongly in the historical PA/G averages, xPA is still dependant on projecting the correct amount of team runs and where a batter will spend all of their at-bats. Team projections are often wrong and players don't always bat at the same spot. What xPA is about is giving more context to just how much a lineup spot is worth and what a change can do to a player's value. That added context is helpful for player valuations but is also useful in confronting cognitive biases.

Using myself as an example, I've touted Brandon Nimmo all offseason, believing in the skills but also believing that he'd end up with more plate appearances than what was being projected. My rationale was simple; the Mets announced he'd be their leadoff hitter and I thought he'd be the primary center fielder. Consequentially, I believed he'd be closer to 600 PA, rather than around the 500 PA that other systems called for.

It was nice to see him make the list above but I wasn't happy to see only 552 xPA. He did get a bump for his top-of-the-order slot but xPA gave him far less credit due to the Mets below-average offense. That just goes to show you; never underestimate how much the Mets being the Mets can drag down your projections.

That wraps it up for today, but coming up I'll dive deeper into xPA to root out some more context. Up next, we'll look at players like Victor Robles, Mallex Smith, and others who would benefit from a move up the lineup. Will they improve as much as the fantasy community seems to think? Or will sluggish offenses keep them from earning the high prices they're garnering in drafts?

More 2020 Fantasy Baseball Advice




POPULAR FANTASY TOOLS

Expert Advice
Articles & Tools
Import Your Leagues
Draft Rankings
Draft Simulator
Enter League Settings
Compare Any Players
Rookies & Call-Ups
24x7 News and Alerts

REAL-TIME FANTASY NEWS

Grayson Allen

Back on Saturday Night, Will Come off the Bench
Jalen Suggs

Won't Suit Up on Saturday
Jaden Ivey

Shut Down for at Least Two Weeks
Joe Ryan

Scratched From Grapefruit League Start With Back Tightness
Merrill Kelly

Scratched From Live BP With Back Tightness
Jack Suwinski

Dodgers Claim Jack Suwinski Off Waivers From Pirates
Andrew Vaughn

Can Andrew Vaughn Repeat 2025 Breakout Success?
Brenton Doyle

Carries Buy-Low Potential Heading into 2026
Jack Flaherty

Can Jack Flaherty Bounce Back After 2025 Struggles?
Colton Cowser

Looking to Rebound from Injury-Marred 2025 Campaign
Yandy Díaz

Can Yandy Diaz Repeat 2025 Power Surge?
Sal Stewart

Playing Second Base in First Spring Training Outing
Zach Collins

to Miss Rest of 2025-26 Season
De'Andre Hunter

to Undergo Season-Ending Eye Surgery
Tristan Vukcevic

Exits Early Vs. Pacers
John Collins

Leaves Game with Head Injury
Kawhi Leonard

Exits Early Friday Night
Devin Booker

Sidelined vs. Orlando
Joel Embiid

Out Saturday vs. Pelicans
Kevin McGonigle

Starting at Shortstop in Grapefruit League Opener
Bo Bichette

Batting Third in Mets Spring Training Debut
J.J. Wetherholt

JJ Wetherholt Playing Second, Batting Fifth in Grapefruit League Opener
Kazuma Okamoto

Hitting Third in Grapefruit League Opener
Jorge Polanco

Expected to See a Lot of Time as Designated Hitter
Blake Coleman

Activated From Injured Reserve
Ramón Urías

Ramon Urias Agrees on One-Year Deal With Cardinals
Matt Rempe

Heading to Injured Reserve After Second Thumb Procedure
Roman Anthony

Expected to Hit Leadoff for Boston
Sidney Crosby

a Game-Time Call for Olympic Final
Edwin Uceta

has Shoulder Inflammation, Slight Impingement
Josh Morrissey

Won't Play Sunday
Filip Chytil

Out Indefinitely With Facial Fracture
Connor McDavid

Makes History With Another Multi-Point Outing
Tage Thompson

Expected to Play in Olympic Final
Shohei Ohtani

Might Not be Fully Built Up as a Pitcher by Opening Day
Travis Etienne Jr.

has "Legitimate Interest" in Joining Chiefs
Zach Charbonnet

Undergoes Knee Surgery on Friday
Austin Reaves

Back in Starting Five
Matisse Thybulle

Kris Murray, Matisse Thybulle Suit Up Friday
Scoot Henderson

No Longer Limited
Ben Joyce

Throws Successful Bullpen Session on Friday
Jamal Murray

Jalen Pickett Available Friday vs. Portland
Yoshinobu Yamamoto

to Start on Saturday
LeBron James

Upgraded to Available Friday vs. Clippers
Bryan Ramos

Orioles Claim Bryan Ramos Off Waivers From Cardinals
Max Christie

is Downgraded to Out
Evan Mobley

is Unavailable for Friday's Game
Tyler Herro

to Make his Return on Friday
Norman Powell

is Cleared to Play on Friday
Nicolas Claxton

to Remain Out on Friday
Kyshawn George

Won't Play on Friday
CFB

Curt Cignetti Agrees to New Deal With Indiana, Will Earn $13.2 Million Per Year
Ukko-Pekka Luukkonen

Returns to Practice
Josh Morrissey

Remains Out Against Finland
Sidney Crosby

Won't Play Friday
Anthony Hernandez

Set For UFC Houston Main Event
Sean Strickland

Looks To Get Back In The Win Column
Uros Medic

Set For UFC Houston Co-Main Event
Geoff Neal

Looks To Get Back In The Win Column
Melquizael Costa

A Favorite At UFC Houston
Dan Ige

An Underdog At UFC Houston
Logan Cooley

Sheds Non-Contact Jersey
Maxwell Crozier

to Miss 10 Weeks After Surgery
Kirill Marchenko

Dealing With Lower-Body Injury
Petr Mrazek

Undergoes Season-Ending Surgery
Victor Hedman

Suffers Lower-Body Injury
Sidney Crosby

Considered Day-to-Day
Rashee Rice

Accused of Assault by Long-Time Girlfriend
Ben Griffin

Looking to Return to Top Form at Riviera
Keegan Bradley

Looking to Build Momentum at Riviera
J.J. Spaun

Putting a Major Concern at Riviera
Sepp Straka

May Have Tough Time at The Genesis Invitational
Shane Lowry

Trending Up Entering the Genesis Invitational
Justin Rose

Off Most Radars at The Genesis Invitational
Robert MacIntyre

a Long Hitter to Watch at Riviera Country Club
Jake Knapp

Red-Hot Heading to Riviera
Min Woo Lee

Attempts to Build Momentum After Pebble Beach
Harry Hall

an Unknown for The Genesis Invitational
Matt Fitzpatrick

Has Favorable Path to Success at Riviera This Week
Wyndham Clark

Not Likely to Contend at Genesis Invitational
Ludvig Aberg

Might Find the Genesis Invitational More Challenging
Harris English

Carries Strong Form to Riviera
Patrick Cantlay

Eyes Another Strong Week at The Genesis Invitational
Daniel Berger

Needs Short Game to Show Up at Riviera
Sam Burns

Hopes Return to Form Continues at Riviera
Collin Morikawa

Riding Wave of Victory Into Riviera
Hideki Matsuyama

Looks to Have Repeat Success at The Genesis Invitational
Scottie Scheffler

Looks to Find Paydirt at Riviera
Xander Schauffele

Rounding into Form Before Genesis Invitational
Morgan Rielly

Available After Olympic Break
Charlie Lindgren

Practices Fully Tuesday
John Carlson

Ready to Rock After Olympics
Radek Faksa

Unavailable Against Team Canada
Anton Lundell

Good to Go Wednesday
Mike Evans

Will Return in 2026
Kenneth Walker III

Seahawks Not Expected to Use Franchise Tag on Kenneth Walker III
Bucky Irving

Undergoes Offseason Shoulder Surgery
Tyreek Hill

Says he Will Play in 2026
Joey Logano

Finishes Third in the 2026 Daytona 500
Ricky Stenhouse Jr

. Finishes as the Runner-Up in the Daytona 500
Chase Elliott

Falls Short of His First Daytona 500 Victory Again
Brad Keselowski

Ends Daytona 500 With a Top-Five Finish
Tyler Reddick

Wins the Daytona 500 for the First Time with 23XI Racing
Tyreek Hill

Released by Dolphins
RANKINGS
C
1B
2B
3B
SS
OF
SP
RP

RANKINGS

QB
RB
WR
TE
K
DEF