Dimension Labs · Case Study
April 2026
Seattle Mariners · 2025 Season

When the roof is closed, Mariners fans rate their experience lower. Here's what the fan voice revealed about why.

An analysis of 56,788 post-game survey responses across 81 games, decomposing a 14-point satisfaction gap into the operational frictions that drive it.

56,788 responses 81 games ~10 roof-closed games 8 operational domains
The headline finding

Roof-closed games need a different operational playbook. The fan data tells us why — and fans tell us how to fix it.

The Mariners measure fan experience after every home game: a 0–10 rating plus open-text feedback. This data is joined with information about the ticket holder and game-day events, including weather. Across the 2025 season we pointed the AI agent at a simple question — does weather meaningfully affect how fans rate their experience at the park?

The answer came back clear. Fans rate their experience measurably and significantly lower when the roof is closed. The gap is real, it's consistent, and it survives every statistical check we ran against it. But "it rains in Seattle" isn't an actionable finding — so we asked the agent to keep going.

Roof closure alone isn't the problem. One specific condition changes everything.
Mean experience rating · weather conditions compared to roof-closed subgroups · 2025 season

From here the agent went deeper. It cross-referenced every fan rating against the full game-day record — weather, attendance, day of week, promotions on the calendar, entry gate, seat section — looking for the condition that actually moved the dial. It tested and retested, ruling out what didn't matter until a pattern emerged that did.

The finding: roof closure by itself barely moves the rating. A roof-closed game without a giveaway rates about the same as a cloudy game — a little worse than sunny, but nothing fans describe as meaningfully different. It's only when a roof-closed day coincides with a giveaway that fan experience drops below the worst weather the sky can produce. Something operational is happening on those specific game days that doesn't happen on any other.

The structured data told us when and how much. To understand what and why, the agent turned to the thousands of open-text comments fans wrote about their experience. Read at scale, a clear story emerges.

  1. Roof closure itself isn't the root cause — it's acting as a proxy for games run in a more constrained "event mode" (more reroutes, gate constraints, crowd compression, stricter flows).
  2. The experience hit concentrates at high-volume public entry gates (especially Centerfield and Rightfield), not at premium entrances. That points to entry operations + giveaway handling as the mechanism.
  3. Giveaways create a scarcity/fairness dynamic ("first X fans") that becomes much more emotionally salient when operations are constrained: small breakdowns feel unfair rather than merely inconvenient.
  4. Uneven giveaway inventory across gates (some entrances "out," others still stocked) is a recurring failure mode; combined with "no re-entry/no switching gates after entry," it produces "I was early but still missed out."
  5. Eligibility/entry-path "gotchas" (e.g., Team Store entry, ticket-type redemption flows, member entrances) convert what fans expected to be a simple promo into a rules problem — often discovered only after they've already entered.
  6. Queueing and wayfinding breakdowns (single-file scanning, gate closures, confusing lines that get moved) raise friction precisely at the moment fans are trying to secure the giveaway, increasing perceived chaos.
  7. Staff interaction quality becomes the last-mile amplifier: when the giveaway fails, dismissive/rude interactions ("laughed," "attitude," "turned away") turn a logistics issue into a reputational moment, disproportionately pulling down overall experience.
  8. Net effect: roof-closed giveaway nights don't necessarily have more giveaway dissatisfaction, but when dissatisfaction occurs, it's more damaging because the environment makes problems harder to resolve and more likely to feel unfair.

That's the actionable insight: roof-closed games with giveaways aren't a weather problem to weather — they're a distinct operational mode that calls for a distinct operational playbook. The rest of this case study lays out the evidence, the mechanism, and the specific plays.

The Findings

How the penalty works — and where it concentrates.

Five findings build the case. Together they move from evidence (the penalty is real and measurable) to where it lands (it spreads across every operational domain) to the operating mode (four specific frictions describe it) to the trigger (one scheduling decision amplifies it) to who absorbs it (the fans the organization most needs to protect).

Each card links to its section. Every finding is backed by the same fan-voice classification layer, anchored in fans' own words.

Finding 01 · The Evidence

The gap is real, and it's large enough to act on.

Before isolating the mechanism, we needed to confirm the signal. Across every weather condition, fan experience moves in a clean gradient — and roof-closed games sit clearly at the bottom. The gap from sunny to roof-closed is statistically robust, holds up across weekday and weekend subsets, and survives every sensitivity check. This is the evidence that something is happening. The next finding starts to explain what.

Mean experience rating falls monotonically as weather deteriorates.
0–10 scale · 2025 season · n = 53,806 responses with valid weather

Each dot represents one weather condition's mean rating; the roof-closed dot sits 0.62 points below sunny.

The difference between roof-closed and sunny is the largest pairwise gap in the data and is statistically robust across every subset tested — weekday-only, weekend-only, and excluding responses with missing weather all reproduce the pattern. A separate cross-check using top-box rate (a simpler, distribution-free measure) confirms the finding at −14.1 pp.

At the scale of a full season, this means hundreds of additional fans per roof-closed game shift out of the highest satisfaction tier. While the effect is modest for any individual fan, the cumulative impact across ~6,600 roof-closed survey responses represents a meaningful operational signal.

Finding 02 · Where It Lands

The penalty isn't one broken thing. It's the way the day operates.

If the gap came from one failed system — a broken concession line, an understaffed gate — we'd see one domain drop while the rest held steady. That's not what the data shows. Every operational domain takes a hit under roof closure, which tells us the issue isn't a single failure point. It's the way the day itself runs differently when the roof is down. The pattern points us toward investigating the conditions of the day, not the performance of any one system.

Every domain takes a hit · concessions and entertainment take the largest.
Mean domain rating · sunny vs roof-closed · 2025 season

Each row compares the same domain's mean rating across two conditions; the gap is the roof-closed penalty for that domain.

Beyond mean scores, the underlying fan sentiment shifts across all three annotated operational domains. Negative mentions rise while positive mentions decline, indicating that the penalty reflects an active increase in dissatisfaction — not merely a reduction in enthusiasm. In concessions, negative mentions rise from 13.3% to 16.4% of responses under roof closure, while positive mentions of food quality drop from 5.7% to 5.0%.

A diffuse penalty raises the central analytical question: if the effect is everywhere, what's actually broken? Aggregate rating comparisons don't answer that. The next section decomposes the penalty by issue aspect — the specific operational failures fans mention in the open-text fields.

Method: Domain-level ratings are coalesced from the survey's structured fields. Sentiment breakdowns are derived from LLM classification of the open-text verbatims against a per-domain issue-aspect taxonomy.
Finding 03 · The Operating Mode

Four frictions describe the same underlying shift in how the stadium operates.

Across thousands of fan comments, four operational frictions appear far more often on roof-closed days than on sunny ones. Read individually, they look like separate problems. Read together, they describe a single shift: the stadium operates in a more constrained mode under roof closure, and the same four friction points — concessions throughput, giveaway distribution, concourse flow, service recovery — are the surfaces where that constraint shows up to fans.

Theme A

Service recovery fails under density.

When the roof is closed and something goes wrong at the game, fans who raise the issue rate their overall experience 3.3 points lower than roof-closed fans with no issue flagged. Staff interactions — issue resolution, ushers, concession cashiers — all show sharply negative within-roof-closed gaps.

Issue Resolution
−3.27
Ushers & Seat Help
−2.39
Cashiers
−2.12
Fan voice · Issue Resolution
"Asked three different staff members where to go, got three different answers. By the time we found the right booth the giveaway was gone."
Roof Closed · April · 400-level seating
Fan voice · Ushers
"No one around to help when we needed it. Usher was nowhere to be found for the first four innings."
Roof Closed · April · Family with children

Operational reading: when density and stress rise, single-point-of-failure service breakdowns feel worse and cascade. Recovery capacity matters most when the roof is closed.

Theme B

Concessions throughput and availability buckle.

In-Stock / Sold-Out mentions nearly double (1.2% → 1.9% of responses), and Lines & Speed complaints follow a similar pattern. Each roof-closed game surfaces ~125 fans voicing stock-out complaints specifically — a high per-fan rate on a smaller denominator.

In-Stock / Sold-Out
−1.45
Food Quality
−1.40
Lines & Speed
−1.14
Fan voice · Stock-outs
"Several booths ran out of the desired food we wanted only to find that out after waiting in line for 20+ minutes. They could have put a sign up saying out of XYZ."
Roof Closed · Lines & Speed + Stock-out
Fan voice · Lines
"It took us three full innings just to get some hot dogs. Each concession line was understaffed and had an incredibly long wait."
Roof Closed · Concessions

Operational reading: roof closure shifts dwell patterns to covered concourses and spikes simultaneous demand — exposing inventory planning gaps and throughput bottlenecks.

Theme C

Giveaway distribution friction concentrates.

Giveaways & Swag mentions rise from 1.2% of responses on sunny days to 3.3% under roof closure — the largest single-aspect lift in the data. Notably, the raw complaint count is nearly identical (218 sunny vs 222 roof-closed), but those complaints came from a fan pool one-third the size.

Mention Rate Shift
+2.14 pp
Within-Roof Diff
−1.73
N (roof-closed)
222
Fan voice · Distribution
"Handing out the schedules AFTER the game with 35,000+ people all leaving at the same time was a disaster. Please go back to handing them out as you enter the park."
Roof Closed · Giveaways & Swag
Fan voice · Run-outs
"This is the first time a giveaway FOR ALL FANS ran out before the stadium was even half empty. I am very disappointed in this."
Roof Closed · Giveaways & Swag

Operational reading: roof-closed games concentrate fans indoors and in covered zones, increasing congestion at pickup points — amplifying per-fan giveaway friction even when absolute complaint volume looks flat.

Theme D

Concourse and gate-flow mechanics pinch.

Gate Lines & Wait Time is among the most prevalent flagged issues in roof-closed responses (n = 263), and Concourse Crowd Flow shows a clean negative within-roof-closed gap. These aspects describe the same thing from different angles: covered routing plus weather-driven clustering creates pinch points.

Gate Lines (n)
263
Incremental Penalty
−0.72
Concourse Flow Diff
−0.93
Fan voice · Gates
"Gate line was absurd. We missed the first inning standing in the rain waiting to get scanned in."
Roof Closed · Security · Gate Lines
Fan voice · Concourse
"The 100-level concourse was basically a traffic jam the whole game. Couldn't move anywhere without pushing through people."
Roof Closed · Venue · Concourse Flow

Operational reading: covered concourse routing under roof-closed conditions doesn't disperse fans the way open-air pathways do. Active crowd management and wayfinding become disproportionately valuable.

Explore the full driver ranking

Every issue aspect that met the sample-size gate (n ≥ 30 in both roof-closed and sunny), ranked by three different lenses. Each lens tells a different part of the story.

Sort by:

Each bar is one issue aspect. Color denotes domain. Sorting by "within-roof diff" surfaces the aspects most strongly associated with bad ratings among roof-closed fans; sorting by "incremental penalty" surfaces the aspects whose roof-closed penalty is largest relative to the baseline gap; sorting by "prevalence" surfaces the aspects most frequently mentioned.

Method note: Effect sizes ranked directionally. Exact p-values and Benjamini–Hochberg FDR correction are computed in a stats-environment rerun; the preference ordering here matches the corrected ranking but is not itself FDR-gated.
Finding 04 · The Trigger

One scheduling decision turns a manageable shift into a measurably worse experience.

So far the analysis has treated all roof-closed games as one bucket. They aren't. One game-level condition — whether the day features a giveaway — concentrates almost all of the observed penalty.

The trigger is on the calendar, not in the forecast.

Roof-closed games without a giveaway barely register a fan-experience gap — a small dip, well within tolerance. Add a giveaway to the same day and the penalty grows nearly fourfold. The combination doesn't just add the two effects together; it triggers a categorically different fan experience. And critically: the trigger is on the calendar, not in the forecast. Weather isn't actionable. Scheduling is.

The roof-closed penalty is 3.8× larger on giveaway days.
Mean experience rating · 2025 season · within-roof-closed giveaway vs non-giveaway games

Each bar is one subset of roof-closed games. The top bar restores the sunny baseline for reference. The vertical line at 8.85 marks the sunny baseline; distance from that line is the roof-closed penalty for each subset.

Within giveaway-present games under roof closure, concessions issues roughly double compared to the overall sample. In-Stock / Sold-Out complaints rise from 1.2% to 2.2% of responses (+92%), and Lines & Speed from 1.2% to 2.2% (+86%). These rates are approximately double the overall issue lifts, confirming that giveaway logistics and roof closure interact to create compounding strain.

Issue Aspect Rate (Sunny) Rate (Roof Closed + Giveaway) Absolute Lift Relative Lift
In-Stock / Sold-Out 1.17% 2.24% +1.08 pp +92%
Lines & Speed 1.18% 2.20% +1.02 pp +86%
Food Quality 1.01% 1.74% +0.73 pp +73%
Ordering & Payment 0.41% 0.50% +0.09 pp +22%

Rate change, not relative lift, is the correct frame here. All rates are low in absolute terms; the relative lift metric inflates small-denominator shifts. Focus on the absolute lift column for operational prioritization.

Fan voice · Giveaway + roof-closed
"20-30 minute lines for every food stall. Yes, it was opening day, but everyone knew that, you should have prepared and staffed accordingly."
Roof Closed · Giveaway day · Concessions
Fan voice · Giveaway + roof-closed
"Food lines were 100 people long, Amazon Walk Out was completely out of food."
Roof Closed · Giveaway day · Concessions
Operational significance: Giveaway presence is a game-level lever the organization schedules. The 2026 giveaway calendar, crossed with roof-closure forecasts, becomes the single most useful operational-readiness signal this analysis produces.
Finding 05 · Who Absorbs It

The penalty doesn't land evenly. It concentrates on the fans the organization most needs to protect.

The penalty isn't distributed evenly across the fanbase. It lands hardest on three groups: fans seated in upper-deck sections, fans with the longest tenure as Mariners supporters, and families attending with children. Each of these segments matters disproportionately to long-term loyalty — long-tenure fans are the base, families are the future, and upper-deck fans are the volume that fills the park. A roof-closed giveaway day damages experience most for the fans the organization can least afford to lose.

Upper-deck fans, long-tenured fans, and families with children absorb the penalty most.
Mean experience rating · roof-closed penalty by fan segment · 2025 season

Each bar is the roof-closed-vs-sunny gap for that fan segment. Bars are grouped by dimension; the gap is the change in mean overall rating between the two conditions within that segment.

400-level (upper-deck) fans experience the largest penalty (−0.77), followed by the 200-level (−0.65) and 300-level (−0.60). Suite and premium seating shows the smallest gap (−0.38), consistent with climate-controlled amenities and dedicated concessions buffering the weather effect. The gradient is monotonic: higher-elevation seating corresponds to a larger penalty.

Long-tenured fans (10+ years: −0.71) and mid-tenure fans (2–3 years: −0.68) are more weather-sensitive than the overall sample — the opposite of what a "loyalty insulates" hypothesis would predict. Fans attending with children show an elevated penalty (−0.71), likely reflecting the compounding friction of navigating crowded concourses with young family members.

Analytical framing: Game-level moderators (giveaway presence) and fan-level attributes (seating, tenure, party) are separate analytical axes, not competing explanations. A long-tenured fan at a giveaway game in the 400-level is subject to all three effects simultaneously. The penalties compound.
The Playbook

A roof-closed-giveaway operations playbook.

The findings point to a single conclusion: roof-closed games with giveaways aren't bad weather days that the organization has to endure. They're a distinct operating mode that the organization can prepare for, staff for, and execute against differently. Below is the operational playbook the analysis points toward — issue by issue, mapped to the team that owns it. The recommended actions target the specific frictions fans named in their own words.

Domain Issue Recommended Action Evidence
Concessions / Merch In-Stock / Sold-Out Pre-stock high-demand items in covered concourse zones; add live sold-out signage plus POS/menu updates; align promotional comms with actual inventory. Strong
Fan Engagement Giveaways & Swag Return to entry-point distribution for high-demand items; per-gate allocation; clear pickup instructions; avoid end-of-game bottlenecks. Strong
Concessions / Merch Food Quality Increase QA checks during roof-closed games; focus on hot-hold times and replenishment cadence. Moderate
Concessions / Merch Lines & Speed Dynamic labor reallocation to covered stands; open supplemental grab-and-go points; add wayfinding to less-crowded stands. Moderate
Staff / Service Issue Resolution Explicitly staff "fix-it" roles during roof-closed games (guest services, supervisors); improve wayfinding and staff knowledge scripts for common questions. Strong
Venue Concourse Crowd Flow Additional wayfinding and marshaling for covered pinch points; active line management at gate screening and high-density concession stands. Moderate
Venue Restrooms Increase restroom staffing and cleaning cadence during roof-closed games where indoor density increases. Directional

Three additional action modules complement the playbook:

1. Pre-game experience risk tiering. Weather × month × day-type combinations from 2025 are classified as High, Medium, or Low risk based on observed mean satisfaction. When a roof closure is anticipated on a giveaway day, the full weather-hardened playbook activates automatically.

2. Targeted fan communications. For roof-closed + giveaway games, proactively message earlier arrival windows, giveaway pickup instructions (gate / section + cutoff times), and concessions wayfinding to reduce covered concourse congestion.

3. 2026 measurement framework. Track overall experience rating by weather condition weekly against the 2025 baseline. Monitor issue-aspect rates under roof closure (especially stock-outs and lines). Use top-box rate as a simple scorecard.

How it was built

An AI-agent analytical pipeline marries unstructured and structured fan data.

What makes this work different is the way the agent is deployed: not as a one-shot summarizer or a chatbot over the data, but as the engine of a full analytical pipeline. It reads fan text in the language fans used, joins that reading to the structured record of the game, tests what's moving together, and returns to the text to explain the movement in fans' own words.

1

Annotate every fan voice.

Classify each open-text response across an eight-domain issue-aspect taxonomy, labeling what fans talked about and how they felt about it.

2

Join unstructured to structured.

Link classifications to the game-level record — weather, giveaway scheduling, attendance, day of week — and to fan-level attributes like seating, tenure, and party.

3

Test where signals diverge.

Run statistical comparisons across conditions, apply sample-size gates, and surface effect sizes and directions that warrant closer investigation.

4

Return to the fan voice.

For each meaningful difference, drill back into the unstructured text to surface the specific language and representative verbatims that explain the gap.

The pipeline ran against 56,788 post-game survey responses across 81 games in the 2025 Mariners season. Primary statistical tests include the Welch two-sample t-test on overall rating (roof-closed vs sunny), one-way ANOVA across five weather buckets, and per-aspect effect-size rankings with Benjamini–Hochberg FDR correction on the full driver table.

Every chart in this case study — the weather gradient, the domain dumbbell, the driver rankings, the giveaway moderation chart, and the fan-level sensitivity chart — was produced from the same joined dataset. The same pipeline runs weekly against incoming survey data and can be re-pointed to any operational question with a similar structure.

What this pipeline also enables Domain-level sentiment drift tracking, real-time issue-aspect frequency monitoring against rolling baselines, fan-segment cohort analysis across seasons, and proactive identification of emerging operational risks before they surface in aggregate ratings. The same four-step loop applies to any survey or transcript-based source.