clock menu more-arrow no yes mobile

Filed under:

Falling below league average

Even if you don’t understand the numbers, it’s pretty easy to read this graph.

MLB: San Francisco Giants at Colorado Rockies Isaiah J. Downing-USA TODAY Sports

We’ve been over the Giants’ offensive woes and the fact that the team has been one of the worst in the entire sport since the second half of 2016 (162-213, .432 winning percentage) and we’re all just trying to get through the rest of the season to see if the front office can continue its stealth rebuild/extreme reload, so I’m sorry to add one more bit of bad news to the pile, but here it goes: the Giants haven’t been able to adapt to their own offensive failings in quite a while.

Now I’ll do my favorite thing in samples like this and just go back five years. If you look at their team OPS+ since 2013, you’ll see a stark contrast appear:

2013: 100 (4th in NL, 11th in MLB)

2014: 99 (4th in NL, 11th in MLB)

2015: 101 (2nd in NL, 7th in MLB)

2016: 97 (5th in NL, 15th in MLB)

2017: 80 (15th in NL, 30th in MLB)

2018: 86 (13th in NL, 28th in MLB) — actually one point better than the 75-65 Diamondbacks

You might be asking What’s OPS+ again? From Major League Baseball itself:

OPS+ takes a player’s on-base plus slugging percentage and normalizes the number across the entire league. It accounts for external factors like ballparks. It then adjusts so a score of 100 is league average, and 150 is 50 percent better than the league average.

It’s the same principle for Team OPS+, adjusting that team’s performance against the league and park factors. For the first three seasons of that sampling, the Giants were basically a league-average offense, which given the slightly diluted nature of offense in the National League, wound up making them pretty good overall! The past three seasons have seen the reverse of that.

So, back to good ol’ 2013. First, here’s a really easy graph to visualize what’s been going on here:

Here’s the list of players with an OPS+ at or above 100:


Buster Posey - 103 (448 PA)

Brandon Belt - 110 (436 PA and counting)

Andrew McCutchen - 111 (568 PA)


Buster Posey - 125 (568 PA)

Brandon Belt - 113 (451 PA)

Joe Panik - 100 (573 PA)

** Tim Federowicz had 144 in 14 PA — not counting him**


Brandon Belt - 135 (655 PA)

Hunter Pence - 118 (442 PA)

Buster Posey - 115 (614 PA)

Brandon Crawford - 108 (623 PA)

Angel Pagan - 102 (543 PA)

Conor Gillaspie - 100 (205 PA)

Eduardo Nunez - 101 (199 PA)

Jarrett Parker - 104 (151 PA)

Ramiro Pena - 103 (91 PA)

Gorkys Hernandez - 103 (57 PA)


Buster Posey - 133 (623 PA)

Joe Panik - 129 (432 PA)

Brandon Belt - 127 (556 PA)

Hunter Pence - 119 (223 PA)

Gregor Blanco - 115 (372 PA)

Brandon Crawford - 113 (561 PA)

Kelby Tomlinson - 110 (193 PA)

Matt Duffy - 108 (612 PA)

Alejandro de Aza - 108 (75 PA)

Marlon Byrd - 107 (156 PA)

Nori Aoki - 103 (392 PA)

Madison Bumgarner - 100 (81 PA)

Jarrett Parker - 211 (54 PA)

** Jackson Williams had 106 OPS+ in 14 PA — not counting him **


Buster Posey - 143 (605 PA)

Brandon Belt - 114 (235 PA)

Brandon Crawford - 104 (564 PA)

Joe Panik - 104 (287 PA)

Pablo Sandoval - 111 (638 PA)

Michael Morse - 130 (482 PA)

Angel Pagan - 110 (413 PA)

Hunter Pence - 121 (708 PA)

Gregor Blanco - 103 (444 PA)

Andrew Susac - 125 (95 PA)

Travis Ishikawa - 109 (81 PA)

Madison Bumgarner - 113 (78 PA)

** Gary Brown had a 148 OPS+ in 7 PA — not counting him **


Buster Posey - 134 (520 PA)

Brandon Belt - 139 (571 PA)

Hunter Pence - 133 (687 PA)

Marco Scutaro - 109 (547 PA)

Pablo Sandoval - 116 (584 PA)

Angel Pagan - 113 (305 PA)

Tony Abreu - 110 (147 PA)

The team kinda peaked with a core group and then petered out, adding no new names to the list year to year. And, certainly, injuries have impacted certain player performances in these past few years, but these past two seasons have been bereft of adequacy and surprise. That’s staggering to contemplate.

It also recalls to mind how the Giants signed a closer to this deal in the 2016 offseason:

The front office has demonstrated a degree of flexibility and creativity when it comes to individual player contracts, but rarely when it comes to large scale roster construction or trades. That $62 million couldn’t have been used to absorb a bad contract to get a good player? It couldn’t have been used to pay down another salary to trade from a strength to paper over a weakness? Bah.

Andrew McCutchen was on the team this season, so it makes sense to include him on the list. But he didn’t finish the season on the roster, so here’s the visualization of the Giants 100+ OPS+ player carryover from year to year (even though, as Brady suggests, there are enough players who are signed for next year’s team who could rebound) without him:

“1960s offense” perfectly describes what we’ve seen, but it doesn’t get to the core of the matter: for five years, the Giants have bled their best hitters dry without complimenting them with any above average major league hitters. You can call that a failure of scouting, drafting, development, or free agency, but it’s a failure all the same.