Back to tBG Home

Offense = Bases

The basic principle of tBG (total Bases Generated)

We all know that when a baseball team comes up to bat, the batter's goal is to get on base and move base runners around the bases and eventually to home base. So their goal is to accumulate bases and convert them into runs.

If the team doesn't generate bases, they don't score runs, and they don't win. In short, offense in baseball is the generation of bases. It's that simple. Offense = bases. It's not a coincidence that the word "base" is in the very name of the game.

Therefore, to determine the players who generate the most offense, we need to do one simple thing: count the bases the players generate. And we call that total tBG (total Bases Generated). And since offense = bases, tBG tell us which players generate the most offense.

All Bases Count

For tBG, we count all bases. We don't ignore any plays or any bases, as other stats do. All bases are counted and assigned to the player responsible for generating them. In addition, all bases lost are deducted from the responsible player's total. If a stat doesn't consider all plays and bases (such as BA, OBP, SLG%, OPS and even wOBA), it isn't looking at the entire game and can't be considered "comprehensive."

Note that Batting Average (BA) and Slugging % (SLG%) are based on At Bats, which doesn't include all plate appearances. At Bats covers about 88% of baseball plays. OBP and (by extension OPS) include Walks and Hit by Pitch, so they are at about 93% of all plays. But what about the other plays? Are we supposed to ignore those plays? You don't have to. tBG incorporates 100% of plays. With tBG, every play counts.

tBG doesn't concern itself with how the bases are generated. It doesn't count some bases and ignore others, as other stats do. We don't determine that some bases generated during certain types of plays are not as important as others and, therefore, shouldn't be counted. We count all bases. That includes bases generated from hits, errors, walks, balks, hit by pitches, and any other way bases can be gained or lost in a baseball game.

Here's another way of putting it: If the generation of bases is a good thing, tBG tells us how many "good things" happen when a particular player is up to bat.

Not only does tBG count the bases that the batter generates for himself, but we count the bases the batter generates for base runners. This is the biggest difference between tBG and traditional baseball stats. That is, if base runners move up one or more bases as a result of batter's action, such as a hit, walk, HBP, etc., we credit those bases to the batter. After all, the batter is generating them. No other stat does that. (RBI, of course, counts the accumulation of one base by base runners, but just that one base-- from 3rd to Home. Offense in baseball includes those other bases as well.)

tBG also counts bases that are gained and lost by base runners. Why? Because moving around bases is part of the offense in baseball, so bases gained on the base paths by base runners are part of a team's offense. In tBG, those bases credited to the base runner. No other stat does that either.

The nominator for Slugging % is the Total Bases (TB) generated by the player, but just for himself. The stat ignores the bases generated by the batter for base runners. It also ignores bases gained by base runners. For example, in 2024, TB for MLB was 65,348 bases. For the same year, tBG for MLB was 140,478. That means for 2024, SLG% and, by extension, OPS (since SLG% is part of OPS), ignored approximately 53% of all bases generated. OBP ignored about 48% of bases. That's a lot of baseball being ignored by those stats.

So stats like SLG%, OPB, and OPS are fine for what they do, but they are limited and don't provide a comprehensive measure of a player's offensive productivity.

A Family of Stats

For each year, we add the bases generated by each player and call that each player's tBG. We also divide tBG by the player's plate appearances (not by At Bats) to come up with an average called tBGPA (total Bases generated per Plate Appearance).

We also total just the bases gained and lost by each player as a base runner, which gives us our base running stat, tBGR (total Bases Generated as a Runner). Note that tBGR is a subset of tBG. We also count the extra bases a player gains as a base runner (XrtaB) and add that to tBGR for a more comprehensive base running stat called XtBGR.

We also know the pitcher for each plate appearance, so we can determine the number of bases surrendered by a pitcher for a season, which we call tBS (total Bases Surrendered). We divide tBS by the innings pitched by a pitcher for a stat we call tBSI (total Bases Surrendered per Innings Pitched).

We also--

  • Calculate the percent of possible bases generated per player year, career, and team year. This value is called PossBG%.
  • Adjust tBG, tBGPA, tBS, and tBSI for park factor. Each adjusted value is designated by the letter "p" at the end, as in tBGp, tBGPAp, tBSp, and tBSIp.
  • Normalize tBGPA and tBSI against league averages to compare players and teams across eras. These values are named tBG+ and tBS+.
  • For each team year, we add the team tBG+ and tBS+ for an overall team performance value called totalPerf.

Reports

With our tBG scoring data of over 15 million plays going back to 1914, we generate extensive reports with tBG, tBGPA, tBS, tBSI, and tBGR values per player year, player career, and team year. We also derive fun reports like--

  • Most Offense by a Player in a Game
  • Most Offense by a Team in a Game
  • Most Offense in a Game (by both teams)
  • Least Offense in a Game (by both teams)
  • Most Bases Lost and Gained as a Base Runner in a Game

OPS or tBG?

OPS attempts to provide a comprehensive measure of a player's offensive productivity by adding his OBP and SLG%. However, OPS is not as rigorous or as precise as tBG at providing such a comprehensive measure. Like OPS, tBG incorporates both the on-base skills of a player (every time he's on base, it's counted in tBG) and the player's batting power (hits for multiple bases count as multiple bases in tBG, just as they do in SLG% and OPS).

OPS is the addition of two very old stats that were added together in the early 80's to give an indication of both on base percentage and batting power. It was a convenience because there was no other stat that did it as well. But OPS has problems:

  • The denominators of the two stats are different, and the nominators are too. So it is the addition of two very different stats that were never intended to be combined with other stats. It adds apples and oranges. It's a kluge.
     
  • Walks and HBP are counted in half of OPS--the OBP half, but not in the SLG% half.
     
  • But the big difference is that OPS (and BA, OBP, and SLG%, for that matter) doesn't credit the batter for moving base runners around the bases. That is a major part of the game, and those other stats ignore that part of a batter's productivity. For example, OPS counts a single with no one on the same as a single that scores runners from 2nd and 3rd. But they aren't the same. The single that scores runs is much more important to the outcome of a game than a single that occurs when the bases are empty.
     
  • OPS also doesn't incorporate bases gained and lost by base runners. It ignores that part of the offense. That's approximately 7% of baseball.
     
  • OPS counts most bases twice. For example, base hits are counted in both OBP and SLG%, but bases from walks and HBP are counted just once. tBG, on the other hand, counts each base just once.
     
  • If a player gets a hit but is out trying to stretch to the next base, OPS counts the hit twice (once in OBP and once in SLG%) even though the batter ultimately did nothing but generate an out. tBG credits 0 bases for such a play, because ultimately no bases were generated.

OPS was a good stat for a time, but it isn't good enough anymore. There are stats that do a better job of measuring offensive productivity, and tBG is one of them.


Back to tBG Home | Email: totalbasesgenerated@gmail.com