Introducing WAR: The King of NLL Stats

Wins Above Replacement (WAR) is the perfect vehicle for quantifying the value of a player’s statistical performance. It’s frustratingly complicated, yet beautifully simple. By translating the various components of the conventional box score into “wins”, we can make a clear case for who is—and is not—among the league’s most valuable players. At the LaxMetrics blog, we think that WAR is going to be the king of NLL stats.

If you’re unfamiliar with Wins Above Replacement (WAR), it’s a concept borrowed from the world of baseball statistics. As far as the LaxMetrics blog is concerned, it’s the Holy Grail of evaluative statistics. After months of development, the box lacrosse world now has its own WAR stat to engage with. In fact, developing an adequate WAR stat for box lacrosse was one of the principle goals in launching the project that has since born out an array of interesting and fun numbers.

In the following paragraphs, we’ll take a deep dive into every component of WAR and how it allows us to compare players across position groups—goalies included. Think of WAR as a massive improvement on the LaxMetrics Weighted Average Rankings, both in terms of objectivity and user-friendliness.

At its foundation, WAR uses a player’s numbers in a series of statistical categories to illustrate his value in terms of impact on goal differential. Because goal differential is the pillar of projecting win totals, measuring a player’s impact on goal differential allows us to covert his impact from “goals added or subtracted” to “wins added or subtracted”. In each instance, the player in question is compared against the numbers of a generic, league-average player at his position. In other words, WAR tells us how much better a player is than the league average at his position.

In the same way that we have used the Pythagorean Theorem in the past to predict winning percentages, we can apply it to individual player performance to illustrate an impact on expected winning percentages. The general idea is as follows: goal differential tells us a lot about teams, so much so that we can use it as a predictive tool. In the process of translating goals into wins (WAR), we will measure each player’s impact on a league-average goal differential. Because the average includes all teams, the goal differential fundamentally must be zero. In the NLL this year, the average goals for and goals against per team is roughly 187. The presumption then is that the league-average team has an expected winning percentage of .500. We’re going to see how much individual players would add to or subtract from that generic .500 team.

The glossary of terms necessary to understand the finer components of WAR in the NLL is quite extensive. Below are the terms and abbreviations you’ll encounter in the following explanation. Each item will be addressed individually. Please feel free to revisit this glossary of terms at any point.

  • GS – Goals Subtracted
  • fGA – Forward Goals Added
  • dGP – Defensive Goals Prevented
  • Net G – Net Goals Added (Goals Added – Goals Subtracted) OR (Defensive Goals Added + Goals Prevented)
  • gGA – Goalie Goals Added
  • SVoA – Saves Over Average
  • GPoA – Goals Prevented Over Average
  • SH SV – Shots Saved
  • TFoC – Total First Order Chances
  • FoC% – First Order Conversion Rate
  • LSR – League Scoring Rate
  • LPP – League Power Play Rate
  • LGP – League Goals Per Penalty Minute
  • LTSA – League Team Scoring Average
  • dWAR – Defender WAR
  • fWAR – Forward WAR
  • gWAR – Goalie WAR
  • TO – Turnovers
  • CTO – Caused Turnovers
  • A – Assists
  • G – Goals
  • GP – Games Played
  • wA – Weighted Assists
  • LB – Loose Balls
  • PD – Penalties Drawn
  • Lg. – League Average

Where to begin…

To get to a place where you can easily understand the components that go into WAR, we need to first introduce the formulas we’ll be using and explain why there are differences in each. As you will see, the inputs for fWAR (Forward WAR) and dWAR (Defender/Transition WAR) are the same, whereas gWAR (Goalie WAR) has its own. Within those inputs, however, there are some substantial differences in low-level components. The reason we need multiple formulas and different inputs is simple: each position has to be evaluated by their own standards. For example, the league average Goals Per Game scored by forwards is significantly higher than that of defense/transition players. Likewise, Caused Turnovers are a more significant input for defense/transition players than their counterparts on offense.

If that still is a bit confusing, think of each formula as the Rosetta Stone that converts player performance from one unit of measurement (goals) into another (wins). Since Goal Differential is our bridge between player performance and wins, we’ll start by translating conventional box score stats into total goals. In doing so, we must consider both sides of the goal differential (Goals For / Goals Against).

Within their WAR formulas, each position has its own formula for “Goals Added”, which illustrates a player’s impact on the “Goals For” side of Goal Differential. Similarly, each position group has a formula that demonstrates his impact on the “Goals Against” side of Goal Differential. For forwards, we describe that impact as “Goals Subtracted”, whereas we call it “Goals Prevented” for defense/transition players, and “Saves Over Average” for goalies. Each has its own formula with unique inputs.

WAR Top-10 Rankings

Forward WAR (fWAR)

The first step in translating forward stats into “wins” requires us to establish a “Net Goals” number that tells us how many total goals a player adds to a generic team. Forward “Goals Added” accomplishes exactly that. Similarly, “Goals Subtracted” tells us how many goals a forward costs his offense compared to a league-average player at the same position. With “Goals Added” and “Goals Subtracted” in hand, we can combine them to create a “Net Goals” figure, which is the number we will then plug into the Pythagorean equation we use to project winning percentages.

Below are the formulas for forward “Goals Added” and “Goals Subtracted”. Please refer to the glossary of terms above if you need a refresher on each abbreviation.

Forward Goals Added = (G/gm – Lg. G/gm) + (wA/gm – Lg. wA/gm) + [(LB/gm – Lg. LB/gm) x LSR] + [(PD/gm – Lg. PD/gm) x LPP] – [(SH SV/gm – LG SH SV/gm) x LSR] + [(TFoC/gm – Lg. TFoC/gm) x Lg FoC%]

Goals Subtracted = [(TO/gm – Lg. TO/gm) x LSR] + [(PIM/gm – Lg. PIM/gm) x LGP] + [SH Sv/gm – Lg. SH SV/gm) x LSR]

In each formula, we see comparisons between a player’s per game performance and that of the league average at his position. For example, forward “Goals Added” features a comparison between the player’s scoring (Goals Per Game) and that of the league average forward (Lg. G/Gm). The same idea applies to the other statistics like Loose Balls (LB), Penalties Drawn (PD), and Total First Order Chances (TFoC).

But in order to translate possession-based stats like Loose Balls and Penalty Minutes into goals, we need a conversion coefficient to get us there. 

For the purposes of developing WAR, the LaxMetrics blog has come up with a rough “League Scoring Rate” that tells us approximately what percentage of possessions around the league turn into goals. The League Scoring Rate (LSR) is found by dividing the league Goal total by the sum of the league’s total Turnovers and Shots. At the writing of this piece, the League Scoring Rate is roughly 12.6%. When we want to translate a possession-based stat like Loose Balls into Goals, all we have to do is multiply that number by the League Scoring Rate. For example, Albany’s Joe Resetarits has 54 loose balls, which amounts to roughly 54 extra possessions. Multiplying his Loose Ball total (54) by the League Scoring Rate (12.6%) gives us a result of 6.8—this number expresses how many Goals we would expect to precipitate from the 54 Loose Balls corralled by Resetartis.

There is a similar concept at work in the Goals Subtracted formula. Like translating Loose Balls into goals added, it’s impossible to perfectly translate Penalty Minutes into goals allowed. That said, it’s doable to come up with a rough estimate that we can then employ similarly to the League Scoring Rate. In the same way that we used Total Shots and Turnovers to figure out an approximate League Scoring Rate, we can divide the league total number of Power Play goals by the league total number of Penalty Minutes. This looks like the following: PP Goals / PIM. The quotient we received illustrates the rate at which Power Play goals are scored relative to the number of Penalty Minutes taken around the league. The number for the 2022 season is roughly 0.144 Goals Per PIM.

Let’s put this Power Play rate to work in an example. Buffalo forward Josh Byrne has logged 12 PIM in 2022. If we multiply that number (12) by the league-wide Goals Per PIM rate that we just found (0.144), we are left with 1.73, which is the number of goals we can hold Byrne responsible for allowing as a product of his time in the penalty box. Is this a perfect expression of how Penalty Minutes impact scoring? No. But it is a reasonable starting point for our purposes.

Once we have both a “Goals Added” and “Goals Subtracted” number, we can combine them to create “Net Goals”, which is what we’ll plug into our fWAR formula. To find the Net Goals of a player’s performance, simply subtract his “Goals Subtracted” figure from his “Goals Added”. Then using “Net Goals”, we employ the below formula to find Forward WAR (fWAR):

fWAR = {[(LTSA + Net G)^5.65 / (2 x LTSA + Net G)^5.65] – [(LTSA)^5.65 / (2 x LTSA0^5.65)]} x GP

As you can see, both the left and right sides of the formula use the Pythagorean Win-Loss Theorem individually. The player’s WAR is the difference in expected winning percentages multiplied by the number of games he’s played. If you need a refresher on Pythagorean Winning Percentages, check out the LaxMetrics Legend.

On the left side, we include “Net Goals” in both the “Goals For” and “Goals Against” portions of the Pythagorean Theorem. The right side, however, features only the league average goals scored and goals allowed per game. Because we’re talking about a league-wide average, “Goals For” and “Goals Against” have to be the same. Remember, the league as a whole can’t have a positive or negative goal differential. It fundamentally must be zero.

The subsequent result of the fWAR formula will give us a number, almost surely between -1 and 1, as will also be the case with dWAR and gWAR. There is no theoretical limit to how high or low a player’s WAR could be, but given that the season is only 18 games, it is extremely unlikely that any score will exceed a magnitude of 0.5 in one direction or the other.

Defender/Transition WAR (dWAR)

Most of the same concepts we put to use in the fWAR section can also be applied to dWAR. As different positions, however, we need to use different inputs and different league average numbers to develop a fair and accurate illustration of a defense/transition player’s impact on goal differential. While fWAR was only interested in the “Goals For” portion of Goal differential, defense/transition players require us to consider both the “Goals For” and “Goals Against” elements of Goal Differential. We’ll use a formula called “Defense Goals Added” to describe a defense/transition player’s impact on the “Goals For” side of Goal Differential. When doing the same for “Goals Against”, we’ll enlist a different formula called “Defense Goals Prevented”. Both formulas are below:

Defense Goals Added = (G/gm – Lg. G/gm) + (PA/gm – Lg. wA/gm) + (SoA/gm – Lg. SoA/gm) + [(LB/gm – Lg. LB/gm)/2 x LSR] + [(CTO/gm- CTO/gm) x LSR] + [(PD/gm – Lg. PD/gm) x LPP] – [(SH SV/gm – LG SH SV/gm) x LSR] + [(TFoC/gm – Lg. TFoC/gm) x Lg FoC%]

Defense Goals Prevented = [(LB + CTO + Lg. TO – Lg. LB – Lg. CTO – TO) x LSR] – (PIM x LGP)]

One major difference between the “Forward Goals Added” and “Defense Goals Added” formulas is the substitution of Weighed Assists (wA) for a combination of Pick Assists (PA) and Second Order Assists (SoA). The reason for this difference is that the weights of each asset type are different for defense/transition players than they are for forwards. For example, while forwards rarely record Second Order Assists, it’s fairly common for defenders/transition players to record them on long stretch passes down the floor. That same stat (Second Order Assists) tells us one thing about forwards and another about defense/transition guys.

Another item you might have noticed in the “Defense Goals Added” formula is that a player’s Loose Ball total is divided in half. The idea behind this is to avoid accidentally over-valuing loose balls. Since there is no mathematical correlation between Loose Balls and wins, we were cautious to avoid the pitfall of watching huge LB numbers skew the rest of the metric.

Like we did in the fWAR section, we combine “Defense Goals Added” with “Defense Goals Prevented” to create a “Net Goals” number that we can deploy in our WAR formula.

dWAR = {[(LTSA + Net G)^5.65 / (2 x LTSA + Net G)^5.65] – [(LTSA)^5.65 / (2 x LTSA0^5.65)]} x GP

Notice that the formula for dWAR is identical to that of fWAR. The difference between dWAR and fWAR is in the way we find Net Goals, not how we find WAR itself.

Goalie WAR (gWAR)

While fWAR and dWAR use different routes to the same WAR formula, Goalie WAR (gWAR) takes an entirely different path to an altogether unique WAR formula. But despite the significant differences in its formula, the underlining goal of gWAR is virtually the same as that of dWAR. In both cases, the inputs to the WAR formula attempt to demonstrate a player’s impact on both the offensive and defensive sides of Goal Differential. Goalies have their own “Goals Added” formula, which you can view below:

Goalie Goals Added = (A – Lg. A)/GP

It’s exactly as simple as it looks. All we have to do to find “Goalie Goals Added” is take the number of Assists that a goaltender records and compare it against the league average at the position.

On the defensive side of the Goal Differential question, we actually don’t need to create a new statistic. The combination of “Saves Over Average” and “Goals Prevented Over Average”, which you can read more about in the Legend, do the same job for gWAR that Defensive Goals Prevented does for dWAR. 

With “Goalie Goals Added” and “Saves Over Average” in hand, we can plug them into the gWAR formula accordingly:

gWAR = {[(LTSA + GA/gm + (SVoA/gm + GPoA/gm) x LSR)^5.65 / [(LTSA + GA/gm + (SVoA/gm + GPoA/gm) x LSR) + LTSA – SVoA/gm + GPoA/gm)]^5.65 – [(LTSA)^5.65 / (2 x LTSA0^5.65)]} x GP


Developing an adequate WAR stat for all three box lacrosse position groups has been exceedingly difficult and time intensive. Arriving at this place of conclusion is significant because we can now objectively compare player performance without regard for position. This is a huge coup. While stats don’t always tell us who the “best” player may be, WAR is capable of telling us precisely who is having the best (and worst) season.

Chief among the strengths of this WAR ecosystem is the tremendous balance up and down the hierarchy. For example, the Top-20 features 10 forwards, 8 defense/transition players, and 2 goalies. This breakdown serves as anecdotal evidence that the three different WAR formulas we employed do, in fact, give us comparable numbers.

Additionally, from a pure value standpoint, WAR goes further than any other stat in illustrating a player’s worth objectively. By quantifying his performance in terms of “Wins Added”, WAR offers the clearest platform for comparison across position groups. The LaxMetrics Weighted Average attempted to do something similar, but its structure inherently prohibited the inclusion of goalies in the ranking discussion. Furthermore, reading a player’s contribution in terms of “wins” is a far easier concept to grasp than a number untethered to a unit. For example, saying that Dhane Smith is worth .439 wins tells us more than saying that he has a Weighted Average of 19.97. The simplicity in units and structure is a huge improvement.


When scrolling through the WAR rankings, you’ll surely notice a category next to “WAR” that is labeled “WAR100”—don’t be confused, it’s just a different application of the information WAR gives us. In the same way that WAR tells us how many wins a player is worth compared to the league average, WAR100 tells us how many wins a player would be worth in a 100-game span (roughly 5.5 seasons). The formula is extremely simple:

WAR100 = WAR per game x 100

WAR100 Top-5

The utility of WAR100 comes into play when comparing players who have participated in different numbers of games. For example, Dhane Smith has played in 17 games and boasts a WAR of .439 and a WAR100 of 2.585—both best in the NLL. Mitch Jones, however, played in only four games this season. As a result, his WAR of 0.1001 is far below that of Smith. But when we compare them in WAR100 terms, we see that they’re far closer as peers than one might think simply observing their WAR numbers. Whereas Jones is well down the list in WAR, he is second to Smith in WAR100, illustrating his comparable value on a per game basis. In this instance, WAR100 gives us an idea of where Jones might be had he not been injured.

Breakdown of WAR Score Distribution

So What Now?

Take a minute and look over the full WAR rankings and see if you’re surprised at all by where certain players fall. The histogram breakdown above illustrates that 187 of the 353 (53%) scores fall between -0.05 and 0.02, which is very close to the league average of 0.00. Additionally, only the top 2.8% of players register a WAR of 0.25 or higher, giving us a clear threshold for “elite” status. The breakdowns are compelling and sometimes riddled with surprises. Take a look for yourself and see what you find interesting!

Be sure to subscribe to the LaxMetrics blog to get all new content sent directly to your email inbox! There’s nothing quite like a ready-to-consume delivery of advanced stats.

Leave a Reply