At last! It took 15 years, but it’s finally happened!

Here are our final standings. (No, they aren’t what took 15 years…)

Final 2023 EFL Standings

TeamWinsLossesWPctGB
Old Detroit Wolverines94.667.4.5840.0
Flint Hill Tornadoes91.670.4.5653.1
Pittsburgh Alleghenys91.170.9.5623.6
Salem Seraphim86.775.3.5358.0
Canberra Kangaroos84.477.6.52110.2
Haviland Dragons83.678.4.51611.0
Portland Rosebuds83.678.4.51611.1
Peshastin Pears82.779.3.51111.9
Kaline Drive72.090.0.44422.6
Bellingham Cascades68.593.5.42326.2
D.C. Balk59.2102.8.36535.4

Head-to-Head Results for Week 27 After 6 Games

Team 1Runs ScoredRuns AllowedRaw Win PctWinsLossesAdj Win PctTeam 2Runs ScoredRuns AllowedRaw Win PctWinsLossesAdj Win Pct
OD38.8923.02.7405.30.7.878PA22.0634.99.2840.75.3.122
PP36.4837.92.4814.11.9.678PR22.0533.24.3061.94.1.322
BC30.0828.40.5293.52.5.585KD28.7332.18.4442.53.5.415
DC17.5926.13.3121.94.1.312ML6.006.00.5004.11.9.688
CK22.4823.14.4851.54.6.241HD30.9117.94.7484.61.5.759
SS18.5626.45.3300.65.4.097FH32.8415.35.8215.40.6.903

Results are from the entire final week

OD: W 5.2, L 0.8. ( 241 PA, .290, .352, .526; .877 OPS, 6.48 rc/g. 49.8 ip, 20 er, 3.61 ERA. 37.2 Defense) The Wolverine offense finished strong, led by Nolan Jones’ .429, 484, .679 batting line (1.162 OPS, 13.13 rc/g.) Four other W’s had weekly OPSes over 1.000 (Bo Naylor, Edouard Julien, Adolis Garcia, and Tommy Edman). Julien is a deb, Jones and Naylor are 2027 rookies, Garcia is a 2026 veteran, and Edman is under contract for one more year with the Wolverines. Undisputed ace Blake Snell pitched 6 more shutout innings, and unsung Josiah Gray added 6 more at the cost of only 1 run. Despite the long-term absence of Byron Buxton, and Carlos Correa’s shelving for the last week, the mix-and-match Old Detroit defense still managed a 37.2 rating for the week. The combination of the best offense for the week, and the third best (barely) combined pitching and defense run prevention, allowed the Wolverines to come from a game behind to win the pennant by 3.1 games.

The Wolverines ended the season with a very nice rs/ra allowed ratio. Nevertheless, for the second year in a row, the Wolverines needed more than their share of luck to win when there was a team objectively better in the field…

FH: W 5.4, L 0.6. (295 PA, .285, .388, .430; .817 OPS, 6.38 rc/g. 61.3 ip, 16 er, 2.35 ERA. 35.4 defense) ... that team this year being the Tornados. They showed it in the final week, crushing the Seraphim in their head-to-head, and erasing a 4.2- game Pittsburgh lead to sieze second place over the weekend. Chris Bassitt and Kevin Gausman delivered brilliant shutouts of 7.7 and 7.0 innings, and Jameson Taillon went out well, covering 10 innings in two starts at the cost of only 2 earned runs. The T’s also nearly tied the W offense in rc/g because Haviland batters did significantly better at getting on base while conserving outs, even though they didn’t slug as much. The FH lineup featured four hitters OPSing over 1.000, led by debutant Elly De La Cruz (23 PA, .333, .391, .762; 1.153 OPS, 13.00 rc/g.) Juan Soto had an essentially equivalent week (24 PA, .316, .458, .684; 11.43 OPS, 13.35 rc/g) — his rookie contract expired yesterday evening. As did Ronald Acuna’s, who also beat the 1.000 mark (.389, .476, .611; 10.87; 13.66 rc/g).

These three (plus Julio) led the Tornado’s to the EFL’s best rs/ra ratio (879.6/716.5), predictive of a nice .601 winning percentage and a 97.4 – 64.6 record, which they undershot by almost 6 games. The Wolverines have the second-best rs/ra ratio (805.6/674.0), predicting a 95.2 – 66.8, so they undershot their prediction, too, but only by about half a game.

I think these two franchises will long remember week 25, when the Wolverines had what might have been their best week ever (24.1 rs / 6.9 ra) while the Tornados were having one of their worst weeks this season (24.3 rs / 31.4 ra), allowing Old Detroit to dominate the week, 5.7 wins to Haviland’s 0.3.

This bad luck adds to the Tornados’ status as a tragic figure in the 2023 season. Three other story lines complete the pathos. First, no team worked harder to improve, perhaps ever in the history of the EFL. The current FH roster features 33 players… and 31 adjustments recording various transactions involving 29 players and 6 draft picks pertaining to this season or 2024, which I am pretty sure is an EFL record.

Second, they had the longest tenure in first place in the league, uninterrupted (as far as I can tell) from July 27 to Sept 13. In early August they led by 6.1 games, and we feared there would never be a pennant race. But then the Tornados began a dignified and extremely polite slow decline… and lo, we had a great pennant race for two weeks, right up into the last week, when a not-as-kind, not-as-gentle team ended it.

The third story line may extend into the future: all that wheeling and dealing generally had the pattern of trading bits of the future to improve the Tornados in 2023. In addition to the Big Three (Acuna, Soto, and De La Cruz), the Tornados say good-bye today (at least for now) to Kevin Gausman, Dylan Cease, Jon Gray, Kodai Senga, Matt McLain, and Masataka Yoshida… and 12 others … and to the Great One: Shohei Ohtani. That’s 22 players leaving the roster. There will only be 10 Tornados after today, and some of them might get cut.

PA: W 0.7, L 5.3 (230 PA, .239, .311, .382; .693 OPS, 3.68 rc/g. 37.1 ip, 5.37 ERA. 35.7 defense) So, let’s see, where’s the good news for the Alleghenys? Well, they were in first place at the beginning of the week, and had been since Sept 15. For much of week 26, it looked like the A’s were sewing up their 8th EFL championship. They have been the most successful franchise in the EFL since at least 2008, when they won their second title in a row, part of a 4-year streak, and 5 out of 6.

They were leading the league as recently as Monday, with a roster almost devoid of superstars.

Alas, all those clauses are written in the past tense.

But consider this: they have Adley Rutschman, worthy of all the hype, but clearly not yet in his prime. They have Luis Robert, Jr, who demonstrated this year his stardom, but not really his super-stardom. If Andrew McCutchen was ever a superstar, it was a decade ago. The pitching staff isn’t quite full of no-names, but its stars are Logan Webb, Jose Berrios, and Zach Eflin. I mean, I’ve heard of them…

Clearly, for the Alleghenys more than any other EFL team, the superstar is the manager. He assembled a team largely comprising overlooked players and terrified the rest of the league, especially in weeks 25 and 26. Which was almost enough to seal his status as the most successful EFL owner for another half-decade, probably.

It didn’t happen. Ozzie Albies and the very promising Matt Vierling led the offense with over 1.000 OPS hitting. Adley Rutschman added a 5 for 16 week with a homer and 4 walks. Logan Webb turned in 9 brilliant innings, surrendering only 1 earned run, and Grayson Rodriguez matched him over 5.7 innings. But the rest of the roster seemed exhausted, Mariner-like, and got trampled by the the furry, fierce Wolverines playing out of their minds.

The season lasted one week too long for Pittsburgh. And, given what they were doing in Week 27, one week too short for the Tornados.

SS: W 0.6, L 5.4. (216 PA, .236, .279, .347; .626 OPS, 3.09 rc/g. 29.3 IP, 3.98 ERA. 34.25 defense) The word for the Seraphim is — incredibly: these are quasi-divine beings! — scarcity. That pitching ERA? It would be only 2.46 if the real Seraphim pitchers had pitched enough innings. Instead they could only cover 29.3 innings, so hordes of replacements had to be brought in. Seraphim hitters failed to cover 21.8 PA due to shortages of real MLBers at 1b, 2b, and ss. (But those hitting replacements didn’t hurt much, because the actual hitters were hitting barely above replacement-level.) Had the Seraphim fielded enough pitchers, they could have had a raw winning percentage around .500, and the Alleghenys would have finished (barely) in second place.

Even so, there were individual performances to celebrate. For example, Trea Turner had a great Week 27, albeit with limited playing time. He went 5 for 11 with two doubles and a stolen base (.455, .500, .636; 1.136 OPS, 17.3 rc/g). Michael Wacha turned in a 7 inning, no-earned-run gem, and Colin Rea nearly matched him with 6 ip, 0 er. Sean Hjelle and Yennier Cano might have been heroes, too, but their combined 7.7 scoreless innings were all thrown for the Corvallis Cherubs.

CK: W 1.5, L 4.6. (205 PA, .242, .308, .377; .685 OPS, 3.75 RC/G. 52.7 IP, 3.42 ERA. 32.9 defense).The Kangaroos managed to hang onto 5th place thanks to solid pitching — and LOTS of it. James Karinchak (1.4 adjusted innings, 5 er), Justin Topa (2.7 ip, 3 er), and Ken Waldichuk (5 ip, 4 er) struggled But the other 44 innings were great, completed at the cost of only 8 earned runs, an ERA of about 1.64. Sitting the three duds, thus cutting the runs allowed per game in half, would have put the Kangaroos at about the same raw winning percentage as the Dragons, and very close to catching the Seraphim.

Of course, it would have helped had the Kangaroo hitters done as well as the Kangaroo pitchers. Kyle Tucker, as I mentioned in my last post, said farewell (at least temporarily) to the ‘Roos with a stellar week at the plate (8 for 22, with 3 doubles, a triple, a homer, 3 walks, and a stolen base). Put JD Davis (2 for 4 with a double) together with Brandon Nimmo (4 for 10 with a double and a walk), and you have most of another Kyle Tucker. Jeremy Pena was clearly above average, going .333, .391, .382 for an exceptionally robust version of a .772 OPS, creating 5.2 runs per game. After that there’s no one else with over 4 rc/g for the final week.

HD: W 4.6, L 1.5 (197 PA, .237, .332, .424; .756 OPS, 5.15 OPS. 54.3 IP, 17 ER, 2.82 ERA. 37.3 Defense.) The Dragons mustered the best defense in the league (by 0.1 points) to go along with the second-best team ERA to allow the second-least runs in the league (after FH) — 17.9. Seth Lugo led the way with 8.7 scoreless frames, followed closely by Jesus Luzardo (7;3 ip, 1 er), Luis Ortiz (6 ip, 1 er), and Kyle Harrison (5 ip, 0 er). Joe Ryan’s 5 ip, 6 er put a dent in the pitching dominance, but…

Yandy Diaz posted a dazzling 104.97 runs per game which, if the whole team did that, would have thrust the Dragons into 5th place for sure. But…

Connor Joe ( 8 for 14 with 3 doubles and 3 walks) created 33.9 runs per game (1.433 OPS), and Aaron Judge poked two homers and a double in his 4 for 16 week (with 6 walks) to get to .250, .455, 688 (1.142 OPS, 12.1 rc/g). But…

… these nice numbers had some counterparts. Like Joe Ryan’s 5 ip, 6 er. Or Ezequiel Tovar’s 3 for 24 which, even with a double and a walk, only adds up to .81 rc/g, less than 1/3 of the production from 23 replacement player plate appearances. And all that Yandy Diaz production? He only made 4 plate appearances. It was a pleasant blip in Dragon stats, but it was just a blip.

But there is one more BUT! And it’s a big one! The Dragons had just enough here to slip past the Rosebuds for 6th place! It’s only by one-tenth of a game, but if the EFL comes up in any family gatherings this offseason.. well there’ll be the Tornados to deal with, of course, but at least the Dragons didn’t finish last in the family.

PR: W 1.9, L 4.1 (180 PA, .241 .300, .393; 6.93 OPS, .693 rc/g. 38.3 ip, 5.16 ERA. 36.4 Defense) Luis Arraez batted a perfect 1.000, 1.000, 1.000 this week — but it was only over one plate appearance on Sunday. He won the NL batting title, but If only he had played a normal week…

Max Kepler put together a nice 7 for 15 with a double, a homer and three walks (1.290 OPS, 19.1 rc/g). But he took the last half of Sunday’s game off. If he had finished the game…

Logan O’Hoppe went 7 for 19 with a double, two homers, and 5 walks! (1.237 OPS, 17.0 rc/g). If only other batters had worked as hard as he did.

Rosebud (and Mariner) “ace” Luis Castillo pitched 8.7 innings this week. But he allowed 9 earned runs. If he had allowed 3, in line with his season ERA…

  • If only Luis could have
  • just pitch’ed
  • like Mitch did (6 ip 2 er)
  • or done as well
  • as Zack
  • (Greinke, not Littell) (5 ip, 1 er, not 1.3 ip, 3 er)
  • then Mark would’ve had
  • 6th place, not his dad.

PP: W 4.1, L 1.9 (228 PA, .286, .347, .490; .837 OPS., 6.08 rc/g. 28.3 ip, 5.68 ERA. 33.9 defense). Six Pears pummelled the pill for an OPS over 1.000 and double-digit runs created per game. Their leader was clearly Josh Lowe in Week 27, who went 8 for 16 with 3 doubles, 1 homer, and 2 walks, for an OPS of 1.431 and 26.4 runs created per game. This would have been enough to insert the Pears directly into the Haviland/Portland contest over 6th place, except the Pear pitchers did not copy their batting teammates’ success.

First — there weren’t enough pitchers. The ones that showed up only completed 28.2 innings, and did so unimpressively (4.79 ERA). Tack on the 13.8 innings of replacements, and that ERA climbs to 5.68. Put that together with modestly below average defense and you get that 37.9 runs allowed, more than that robust 36.65 runs scored. Bryan Woo did provide a delightful bright spot, somehow escaping trouble for 3.3 without allowing any runs. But that day Woo was facing fellow Pear Nathan Eovaldi, who got one fewer out than Woo, but allowed 7 more earned runs.

The Pears only managed a .481 raw winning percentage, but since the Rosebuds only managed a .306 raw winning percentage, the Pears came away with a .678 adjusted winning percentage.

KD: W 2.5, L 3.5 (206 PA, .266, .334 .450; .784 OPS, 4.79 rc/g. 31.5 ip, 5.09 ERA). The Drive were too far under to get to .500, or catch the Pears if they lagged. Their one goal was to stay ahead of the Cascades. And even that wasn’t too big of a scare — the Cascades would have had to win their head-to-head series by at least 5.3 to 0.7.

And yet… two teams did lose their series this week by that margin or more.

So it mattered that Kaline batters had a solid if unspectacular week. And actually, one batter — Sam Bouchard — did have a spectacular week: 9 for 17, with 2 doubles and 4 homers, plus a walk (.474, .500, 1.211; 1.711 OPS, 31.0 rc/g). I had not heard of Sam Bouchard before this week, at least not so much that I had even a faint trace of recognition. But I’ve heard of him now! For all the good it’ll do me: he’s a 2027 rookie, firmly in the Wizard’s grasp for the coming years.

It turns out those 21 plate appearances constituted exactly half of Bouchard’s MLB career so far. He went just 3 for 21 in the other half of his career. And he’s already 27 years old. So he’s probably not that good, and you don’t need to waste your time worrying about him.

On the pitching side, things aren’t quite so pleasant. Sure, Jose Urquidy had a strong finish (6 ip, 0 er), and he got strong help from Tyler Holton, Tom Cosgrove, and Michael Gove (who took a thinly-disguised break from his duties in Britain’s Prime Minister Rishi Sunak’s cabinet) who combined for 10.3 more scoreless innings. But that squad also had its clinkers, people with respectable pedigrees of their own like Caleb Ferguson (2 ip, 7 ip), and Marcus Stroman (2 ip, 4 er).

Whatever — it was enough to stick in a spot in the standings marked by a single digit. Not exactly like landing square on .500, which is the Wizard’s preferred outcome, but better than the alternative.

BC: W 3.5, L 2.5 (210 PA, .271, .331, .447; .777 OPS, 5.01 rc/g. 33.7 ip, 4.27 ERA. 34.1 defense) As far as I know, Myles Straw has had a rather bleh year at the plate. But not last week! He went 8 for 13 with a double and two walks to compile a line of .615, .667, 693; 1.359 OPS and 28.2 rc/g. A guy who gets on base 2 out of every 3 plate appearances is super valuable, a point Mr. Straw was eager to make to justify the next three years on his 4-year, $6,000,000 per year contract with the Cascades. Ryan Jeffers and Alex Kirilloff made similar points, less vividly, by OPSing 1.139 and 1.080 respectively (12.0 and 12.3 rc/g, als respectively).

The Cascade lineup is dangerous. It has several times played havoc with the plans of teams higher in the standings. And it is only losing four of its members at the end of this season. Except for DJ LeMahieu and his $16.5 million contract, it’s members are all reasonably priced, and well-seasoned with promising rookies.

The pitching rotation is shaping up similarly, especially with an absurdly economical Walker Buehler ready to resume his career next year. The actual pitchers had a very nice 3.47 ERA last week. The only problem: they didn’t cover enough innings, leaving 8.3 for replacements, and raising the team ERA up to 4.27.

DC: W 1.9, L 4.1. (226 PA, .215, .230, .353;.583 OPS, 2.93 rc/g. The thing that separated the Balk offense from a replacement team was the 8 stolen bases without any caught stealing. That and the presence of Enrique Hernandez (7 for 20 with 2 homers, .983 OPS, 8.57 rc/g) and Elehuris Montero (8 for 28 with 1 double and 4 homers (1.043 OPS, 9.48 rc/g). Of course, if you have two players that far above the team’s average (in this case, 2.93 rc/g) you know there are lots of players coming in just below that very low standard. Players like Corey Seager (2.74 rc/g), Alex Verdugo (1.21 rc/g), Nico Hoerner, 1.83 rc/g), CJ Abrams (2.33 rc/g). None of these players are anywhere near that bad. Of all these I’ve mentioned, only Hernandez has a contract expiring today.

The Balk got all the pitching they needed (49 ip), and it was good! (3.86 era). Ryan Yarbough had a chucky week (4 ip, 9 er) and Jesse Chavez and Jose Quintana struggled, too (3 ip, 4 er and 4 ip, 4 er), but that means everyone else (10 of them!) did GREAT (38 ip, 9 er, 2.14 ERA).

These last few weeks we’ve watched DC fight to keep from falling deeper into the cellar — and doing so pretty successfully. For a bit there this week one could dream of the Balk getting back to 30 games back and staying there. But Mr. Yarborough’s travails, and those of too many hitters who are better than that, doomed the project in the end.

.