Louisville City has always been successful, but a question that continues to creep into my mind is “Which season has been their best?” Comparing the previous Louisville City squads is a bit of a loaded question, but a fun thought experiment. Multiple measures can be considered for what makes one season superior to another. In this piece, we will focus on two different groupings of factors; achievements and statistics.
Before diving into the nerdy numbers, let’s talk about what has been achieved in previous seasons. LouCity has won it all twice, was runner-up twice, and has bowed out in the Eastern Conference Finals (ECF) four times. Along with those various playoff finishes, they have fallen into a few different spots in the league table and the Eastern Conference table. Going purely on these seasons’ outcomes, the “best” would have to be 2017, 2018, and 2022 (in that order). Beyond that, things get a little less clear. 2019 did produce an appearance in the Finals, yet it was their worst regular season finish. You also have oddities like 2020 its goofy COVID-forced structure. Regardless, based on just these factors, there is little debate that 2017, 2018, and 2022 would be at the top of most fan’s lists.
Ok, now we get to the nerd stuff. 2022 was covered fairly thoroughly in the season review and historical comparisons were touched on a bit in 2022’s How’s It Going? Pt. 3. It is worth noting in this section that 2015, 2016, and 2020 are not covered. 2015 and 2016 are not included because the USL had yet to adopt Opta for stat tracking (their current provider) but given those seasons’ finishes, it’s not a huge loss for this thought experiment. 2020 data is available. However, given the oddities of that season, I omitted it. Teams played fewer games, against repeat opponents, and LouCity had a distinct advantage of getting an abnormal number of home games. I felt that 2020 would be too much of an outlier compared to the rest of the field. And like 2015 and 2016, it’s probably not being considered one of the best anyway.
Above, you will find a breakdown of stats for previous LouCity squads sorted by points per game (Pts/G). 2022 leads the pack earning 2.12 points per outing followed by 2018, 2017, and 2021 in close proximity. Trailing the pack is 2019 with 1.85. Don’t feel too bad for the 2019 squad. Their 1.85 Pts/G is still good for 27th all-time in the USL. Below, you will see those LouCity squads along with the other high performers in USL history (both their average and their rankings).
These charts have been provided as the proceeding charts get a little busy and the numbers here can help you to see exactly where these teams fall. I chose to include all other teams (from 17, 18, 19, 21, and 22) as it helps to provide some context to Louisville’s numbers and how consistently excellent they have been compared to the competition. Comparing to other teams isn’t the focus of this, however, it’s interesting to see.
The first set of busy charts are goals for (GF) and goals against (GA) as well as the expected variants (xGF and xGA). The best teams will be seen in the bottom (few GAs) right (most GF). These will provide a general sense of how these teams stack up against one another. 2018 was the most potent offensively while 2022 had the most sound defense.
We've also go shot to goal ratios both for and against. Shot to goal ratios are some of the lesser important numbers that will be looked at here but can still provide some interesting insight. The best are in the upper (more shot taken to be scored on) left (few shots needed to score). 2022 looks to be Louisville's best with two similar to it; 2021 who had a lesser shots against ratio and 2018 with a narrowly lower shots for ratio.
In the following sections, we will dive further into the offensive components, defensive components, and points.
Below you will find visuals GF by xGF and by shots.
GF by xGF shows the relationship between goals actually scored (GF) and what we would expect based on the opportunities the team had to score (xGF). 2018 and 2017 were cases that were below average, as in they scored *slightly* more in relation to the xGF compared to other squads. 2018 moreso than 2017, but slim margins all around. 2019, 2021, and 2022 were the opposite and somewhat underperformed in relation to the trend. 2021 and 2022 were nearly identical, while 2019 was the furthest from the trend line. They had the lowest GF/G but the highest xGF/G compared to the other Louisville City teams. While GF is clearly more important than xGF, it helps to paint a picture of what these teams did with the opportunities presented to them (i.e. did they execute to their fullest extent).
Let’s dive a little deeper and factor in shots for per game (ShtF/G). As a *very* general trend, the more you shoot the more opportunities you have to score (huge asterisk as not all shots are create equal). This holds true for the LouCity team with the most goals. 2018 averaged the most shots (ShtF/G) with 2019 and 2017 trailing closely behind. 2021 and 2022 lag behind the others but still managed to float near the top in terms of GF relative to all the other teams. It’s better to be over the trend line (like those years and 2018) than under. By that dimension, 2021 and 2022 have done the best.
Just like the offense section, you will find GA in terms for expected values (xGA) and shots (ShtA/G).
2022 and 2017 have comparable numbers in these dimensions. Sub one GA/G and xGA/G. Given that the reality is more important than the expected, 2022 has the edge here. But what is really interesting here is how all of these LouCity teams are below the average (2019 is on the line). In relation to the expected, they ended up allowing less than the average team. That a trend I hope all Louisville teams can continue to replicate.
Now we will look at shots against per game (ShtA/G). A correlation exists between allowing fewer shots and conceding fewer goals. 2022 was an outstanding year for limiting ShtA/G and in turn seeing a low GA/G. 2017, 2018, and 2019 all closely followed this trend, however, 2021 was a bit obtuse allowing in a higher-than-expected GA/G in relation to their ShtA/G. By their ShtA/G number, one would have expected them to have been neck-in-neck with 2022. It’s interesting to see that improvement from Coach Danny Cruz’s year one* (we will count it despite the interim tag) and year two.
The points situation has already been shared by way of the chart sort order at the top of the piece, however, the below visuals can help to show how close the margins are for these teams.
Looking at points per game (Pts/G) by expected points (xPts/G) yields some interesting results. All of the LouCity teams (minus 2018 who is just about on the line) are above the average. Meaning they were expected to earn more points per game than they actually did. With that said, that general trend is the teams tend to under perform in reality compared to their xPts. Based on the tendline, an xPts/G value of 1.0 pans out to be roughly 0.75 Pts/G rather than 1.0. This is a great segway to a more interesting chart; "Good-Lucky".
Points don’t always tell the full story. While xPts/G isn’t a perfect predictor of Pts/G, it can, however, give one a sense of opportunity. A team that is getting beat all game but sneaks in a crap equalizer goal right at the end of the match is going to have a wildly different points earned for that match compared to their expected points. Their expected points would be noticeably lower. Their actions, based on historical outcomes, didn’t tend to normally result in many points earned. This is a value of the xPts/s metric. When looking at a team’s average (not a single game in a vacuum), it can more accurately show the quality of a team than the actual points output. To bring it back to Louisville City, by this dimension, 2021 has a noticeable lead over 2022 and 2017, which then trumped 2019 and 2018, which brings up the rear.
The other axis is Pts/G-xPts/G; luck. the gap between those two individual metrics can paint a picture of the intangible. A team who consistently earns more points than expected could be described as “lucky” while the opposite would be “unlucky.” Do not read luck as a dig at one’s talent. Some of the USL’s all-time best fall at the lucky end of the spectrum; CIN 2018, PHX 2019, and SA 2022, to name a few. LouCity has found themselves as both moderately lucky and unlucky. 2018, a championship year, was north of average along with 2022. 2019 and 2021 were both unlucky with 2017 almost on the line. Ultimately, you want to be in the upper right of this visual, and that’s where 2018 and 2022 find themselves.
We just covered a sea of numbers with various meanings and subjective weighting as it pertains to a best-of-all-time conversation. Personally, I think they all have some value. Even those as obtuse (on this macro scale) as shots and the various expected values. Factoring all of those numbers, along with achievements, and the notion that the league has grown stronger year-over-year (debatable, I know), I am inclined to give the edge to 2022 narrowly over 2018 and 2021, respectively. They didn’t win the final (props to the 2022 SA juggernaut) but they made it there all while breaking club records. I also somewhat factor in the subjective skill level of the squad. It was a fantastic mix of veteran staples of our winning org along with a group of highly skilled youngsters. I also won’t pretend like it isn’t possible that there is a level of recency bias, but even putting that aside, I’d take 2022 over any other iteration of Louisville City.
While we will never know the answer to this loaded question, it is fun to entertain the thought. Looking back at the visuals above, it’s amazing to see where our teams sit compared to the rest of the pack. They are all noticeably better than most other teams. There is no denying the club’s consistency in on-field success. Let’s hope it continues, so further debates of all-time greats continue to get harder and harder!
I need your help! Send me your pictures from the Slugger Field years (2015-2019)! Check out this post for more details.
Want to do a little more reading on LouCity? I suggest the following: