A few weeks ago, I posted an early look at the wOBA differential for each team in Major League Baseball. By simply focusing on the linear weight value of the hits that teams have both accrued and allowed, I think we get a better look at a team’s actual performance, rather than including the noise that comes from the sequences of events, which is inherently baked into runs and wins. wOBA differential is a nice, easy way to look at a team’s performance without the effects of sequencing, and provides a nice guideline as to who is actually playing well at the time.

However, wOBA isn’t an an all-encompassing stat, and the wOBA differential tables always have to come with some caveats. Baserunning, for instance, isn’t included in wOBA, so wOBA differential will overrate teams with lumbering sluggers who don’t convert baserunners into runs at a normal rate. And there are even a few extra omissions on the run prevention side of things, as wOBA allowed only measures the outs-on-balls-in-play aspects of fielding, and not the outs-on-the-bases aspects, so teams that are good at throwing out runners, preventing steals, or turning double plays are underrated by wOBA differential as well.

But, in looking at those flaws, we actually have data for all of those events here on FanGraphs. We track the run value of a team’s baserunning, and both UZR and DRS include components to reward teams for turning double plays or throwing out advancing runners (or discouraging runners from advancing to begin with) from the outfield. So, since these are fixable flaws, I decided to take wOBA differential a couple of steps further and turn it into expected run differential.

At it’s heart, this is actually a pretty simple group of metrics. Since wOBA is essentially just a linear weight rate stat, converting it to expected runs scored is actually quite easy, and you don’t even have to do it yourself if you don’t want to; the site already has wRC — not wRC+, which is something different — which turns wOBA into an expected runs scored number based on the amount of plate appearances for a team. wRC is just wOBA converted to runs times plate appearances, so it gives us an expected runs total based on a team’s offensive performance to date.

It still doesn’t include baserunning, but our BsR metric that measures the numbers of runs that a team gains or loses through both base stealing and advancing on balls in play, so we can simply adjust each team’s wRC by adding in the BsR value to get a baserunning-included expected runs scored total. If you’re concerned about the validity of the method, the correlation between this expected runs total and actual runs scored for teams in 2013 was .95. In other words, because wOBA is such a good measure of offense, this works.

However, we don’t have a pitching version of wRC on the site, so to come up with expected runs allowed, I had to run each team’s wOBA allowed through the wRC formula. Thankfully, it’s a pretty simple calculation — (((wOBA – lgwOBA) / wOBAScale) + (lgR/PA)) * PA, and you can get all of the necessary variables from our guts page — and turning a team’s wOBA allowed into wRC allowed is pretty trivial. But that still leaves out the outs-on-bases data.

Because DRS has all three components that we’re looking for — run values of runners caught stealing, double plays turned, and runners thrown out or intimidated into not advancing on balls to the outfield — I chose the DRS values to adjust the expected runs total, and simply added up the total runs saved or lost from rSB, rGDP, and rARM, which you can you find in the fielding section of the site. Then, just as with baserunning on the offensive calculation, I adjusted the expected runs allowed total based on the run value from the defensive aspects that wOBA isn’t capturing.

The resulting calculations give us expected runs scored and expected runs allowed based on wOBA, but adjusted for baserunning and the parts of defense that wOBA doesn’t include. The difference between a team’s expected runs scored/allowed and actual runs scored/allowed will be almost entirely due to the sequencing of those events, which has little to no predictive value going forward. While run differential is often used as a more context neutral version of W-L record, this goes the entire logical distance, stripping sequencing out of not just wins, but also runs scored and allowed. If you like the idea of pythagorean expected record, this is the same idea, just for run differential.

Okay, on to the results. I’m presenting expected runs and actual runs, expected runs allowed and actual runs allowed, expected run differential and actual run differential, plus the differences between expected and actual for all three categories. I’ve set it so that positive is always in the “good” direction for a team, so a positive differential equates to scoring more runs than expected or allowing fewer runs than expected. The entire table is sorted by expected run differential, though you can click on any heading you want to resort and see the leaders in various categories.

Offense exR R Difference Defense xRA RA Difference Total xRunDiff RunDiff Difference Athletics 144 148 4 —— 89 89 0 —— 54 59 5 Angels 144 149 5 —— 98 109 -11 —— 46 40 -6 Dodgers 136 121 -15 —— 103 110 -7 —— 33 11 -22 Braves 107 96 -11 —— 75 81 -6 —— 32 15 -17 Rockies 166 164 -2 —— 135 137 -2 —— 30 27 -3 Nationals 132 126 -6 —— 106 108 -2 —— 26 18 -8 Marlins 130 131 2 —— 104 109 -5 —— 26 22 -4 Brewers 122 117 -5 —— 99 103 -4 —— 23 14 -9 Cardinals 106 105 -1 —— 89 91 -2 —— 17 14 -3 Reds 118 110 -8 —— 107 96 11 —— 11 14 3 Rays 130 120 -10 —— 120 130 -10 —— 10 -10 -20 Giants 114 120 6 —— 105 102 3 —— 9 18 9 Royals 100 108 8 —— 98 103 -5 —— 2 5 3 Yankees 122 112 -10 —— 121 125 -4 —— 1 -13 -14 Tigers 102 104 2 —— 101 95 6 —— 1 9 8 White Sox 142 154 12 —— 145 150 -5 —— -3 4 7 Blue Jays 132 129 -3 —— 137 131 6 —— -5 -2 3 Rangers 118 114 -4 —— 124 135 -11 —— -6 -21 -15 Pirates 106 102 -4 —— 120 115 5 —— -14 -13 1 Red Sox 125 118 -7 —— 139 132 7 —— -15 -14 1 Twins 127 138 12 —— 142 141 1 —— -16 -3 13 Mariners 85 101 16 —— 104 104 0 —— -19 -3 16 Indians 106 106 0 —— 125 132 -7 —— -19 -26 -7 Cubs 94 99 5 —— 113 108 5 —— -19 -9 10 Orioles 116 119 4 —— 138 120 18 —— -23 -1 22 Padres 77 77 0 —— 104 103 1 —— -27 -26 1 Phillies 104 107 4 —— 131 122 9 —— -28 -15 13 Mets 88 110 22 —— 117 108 9 —— -29 2 31 Diamondbacks 117 117 0 —— 159 179 -20 —— -42 -62 -20 Astros 90 88 -2 —— 149 142 7 —— -59 -54 5

Viva la west coast. By linear weights, the A’s and Angels have played like the two best teams in baseball so far, with the Dodgers as the best team in the National League. The Braves record might not be supported by their actual run differential, but it is backed up by their expected run differential, highlighting one of the reasons why using pythagorean record as a proxy for a team’s true talent level is a bad idea. The Rays should also be encouraged, as they’ve played like a team that should have outscored their opponents by 10 runs, not get outscored by 10 runs.

On the other side of the coin, the Mets underlying performance simply does not support their run differential or their current record, and the Orioles have played quite a bit worse than you might think from their pythagorean record. And the Phillies are as bad as we thought they might.

All of this data is still based on just a month’s worth of baseball, and things can and will change over the next five months. You still want to regress future performance against the historical performances of the players on each team’s roster, and we shouldn’t expect the A’s to keep this pace up. But we can say that the A’s aren’t fluking their way to the top of the division. They’re playing like the best team in baseball.