About this report
The usual story is simple: the 1994-1995 strike hurt baseball attendance, and then the 1998 home run chase helped bring fans back.
That may be true in spirit, but the numbers deserve a little more care. Raw attendance can be misleading because 1994 was not a full season. If the season stops early, total attendance falls even if fans were still showing up at a strong rate when games were actually played.
So this report looks at attendance in two main ways:
- Total attendance, which tells us how many fans attended across the season.
- Attendance per opening, which tells us how many fans attended per paid gate or attendance event.
The second number is especially important because doubleheaders can put two games into one attendance event. Lahman calls those attendance events openings. That term sounds like it escaped from a dusty baseball filing cabinet, but it is extremely useful here.
Why openings matter
In this report, total openings means the sum of all team-level openings from Lahman HomeGames.csv in a season.
An opening is a separate paid attendance event or gate. If a team plays a doubleheader, there can be two games but only one opening. That means total openings can be lower than total home games.
This matters because attendance per opening answers a different question than attendance per game.
Attendance per game asks:
How many fans were there if we spread attendance across all home games?
Attendance per opening asks:
How many fans showed up per paid attendance event?
For this report, attendance per opening is usually the cleaner number.
The strike-window problem
The 1994 season is schedule-distorted. Raw attendance fell hard because the season stopped in August. But attendance per opening did not collapse in 1994.
The first full post-strike season is more revealing.
In 1995, baseball came back with a shorter 144-game schedule. Total attendance was still far below 1993, but the more important number is attendance per opening. That is where the fan backlash shows up much more clearly.
The rough shape is:
- 1993: the pre-strike reference season.
- 1994: the strike-shortened season.
- 1995: the first full post-strike season.
- 1998: the expansion and home run chase reference season.
That 1998 year is tricky too. MLB added two teams, so raw total attendance had a built-in expansion boost. The raw number matters, but it should not be treated as a clean one-to-one comparison with 1993.
How to read the summary cards
The summary cards focus on a few key comparisons:
- 1995 attendance per opening vs 1993: the cleanest measure of the post-strike attendance wound.
- 1995 total attendance vs 1993: the raw attendance comparison.
- 1994 attendance per opening vs 1993: a reminder that the strike-shortened season is schedule-distorted.
- 1998 total attendance vs 1993: a useful recovery number, but one affected by expansion.
- Team-seasons analyzed: the size of the underlying team-season dataset.
- Highest total attendance season: the strongest raw attendance season in the report window.
The chart uses attendance per opening because that is the metric most directly connected to the question of whether fans were showing up when gates were open.
How to read the season table
The season table has one row per year from 1985 through 2005.
The main fields are:
- Season: the MLB season.
- Team count: the number of MLB teams represented in that year.
- Total attendance: summed home attendance from Lahman HomeGames.csv.
- Attendance per opening: total attendance divided by total openings.
- Attendance per game: total attendance divided by total home games.
- Total openings: summed paid attendance events from HomeGames.csv.
- Total home games: summed home games from HomeGames.csv.
- Multi-park teams: team-seasons where a club used more than one park.
- Note: context such as strike year, post-strike year, expansion year, or multi-park weirdness.
The table is sortable so you can quickly check which seasons had the highest attendance per opening, which years had expansion effects, and which years were most affected by schedule changes.
How to read the team table
The team table has one row per team-season.
The main fields are:
- Season: the MLB season.
- Team: the team name from Lahman Teams.csv.
- League: American League or National League.
- Record: regular season win-loss record.
- Home attendance: aggregated attendance from Lahman HomeGames.csv.
- Per opening: team home attendance divided by team openings.
- Openings: team-level paid attendance events from HomeGames.csv.
- Home games: team-level home games from HomeGames.csv.
- Park count: how many parks were used by that team that season.
- Park: the primary park and any additional park names.
- Note: quick context such as top-five attendance, bottom-five attendance, strike year, expansion year, or multi-park season.
This table is searchable and filterable. You can look for a team, a park, a specific year, top-five attendance seasons, bottom-five attendance seasons, or multi-park team-seasons.
Methodology
This report uses three Lahman CSV files:
- HomeGames.csv for attendance, openings, home games, and park usage.
- Teams.csv for team names, leagues, divisions, wins, and losses.
- Parks.csv for park names and locations.
The most important data decision is this:
HomeGames.csv is the source of truth for attendance.
Teams.csv also has attendance values, but those values are not used as the canonical attendance field in this report. HomeGames.csv gives us the attendance data along with openings and park usage, which makes it the better source for this particular question.
The report window is 1985 through 2005. That gives a pre-strike baseline, the strike-shortened season, the first post-strike seasons, the 1998 expansion/home run chase year, and several later seasons for recovery context.
This report does not attempt to measure ticket revenue, ticket prices, television ratings, local market conditions, ownership decisions, labor sentiment, or the number of dads muttering at box scores over breakfast. It is a focused look at attendance counts and attendance rates.
Accessibility notes
This report is built around text and tables first.
The chart is included to make the trend easier to scan, but the season table contains the same trend data in text form. The tables use captions, column headers, normal buttons for sorting, and normal form controls for filtering. The result counts update after filtering.
This page was scanned for accessibility with Siteimp and tested with NVDA.
I am still learning accessibility, so mistakes are possible. If something does not work with your screen reader, keyboard, zoom settings, or browser setup, please contact me so I can fix it.
What did we learn?
The strike attendance story is more complicated than raw attendance alone.
Raw attendance fell sharply in 1994 because the season stopped. But attendance per opening was actually slightly higher than 1993. That does not mean the strike was good for baseball. It means 1994 is a distorted comparison because the season was cut off.
The 1995 season is where the damage becomes much clearer. Baseball returned, but attendance per opening dropped hard from the 1993 reference point.
By 1998, raw attendance had climbed back above 1993, but MLB had also expanded from 28 teams to 30 teams. So the return of raw attendance should be read with that expansion context in mind.
In other words: the fans did come back, but the wound was real, and the cleanest scar tissue shows up in attendance per opening.