How we find
the hot spots.
CatchLanding helps fans choose seats where a souvenir ball may reach them. This paper explains the evidence behind the map, how recommendations are built, and what needs further validation.
Park-by-park mapping progress
Each park and season has separate first-impact and catch/final-spot tracks. An accepted location counts once per ball per track. Water, bullpens, nets and other non-seating areas count toward location coverage but never seat heat. Unclassified older dots have their own count. Corrections can revoke acceptance and reduce coverage. Progress uses recorded archive events; historical pitch-sequence gaps and unavailable footage are not silently counted as completed work. Only current actual MLB home venues and regular/postseason games are eligible. Sacramento starts in 2025; spring training and former venues are excluded.
One event, one identity
Home runs are stored by actual game, venue, date and scorer identity. The Statcast-era analytics archive contains 62,557 scored home runs at current MLB home venues from 2015–2026; 62,545 match Statcast records, and the remaining 12 retain scoring context. All 12 regular-season league totals reconcile with independent MLB team totals. The longer current-venue history has 158,851 home runs across 1912–2026. These archives overlap and must not be added together.
Each season and park has an auditable count. Missing tracking, inning, pitcher, score or weather remains unknown. The calendar contains the published 2026 regular/postseason schedule and 2027 regular season as captured October 1, 2026. Results and future schedules can change after that snapshot.
From a home run to a section
Available chart coordinates estimate horizontal direction. Projected distance and vertical launch angle constrain a modeled curve, which is checked against the current 3D seating surfaces on descent. Inside-the-park home runs and events without sufficient tracking remain in the ledger. They are not forced into spectator seats. A modeled landing must have a fair bearing, extend beyond the actual rendered fence and clear its wall height when an arc is available. A failed fit remains unmapped without changing the scored event. This checks the model’s consistency, not a measured ball flight. Read the all-park QA ↗
Seat recommendations count estimated section impacts, then identify the row with the most modeled impacts within that section. The row heat map displays relative density. Water and bullpens remain distinct landing categories and are excluded from spectator recommendations.
Oracle’s official splash-hit list identifies confirmed water destinations for uniquely matched events. It does not supply an exact XYZ point. An event remains water even if its tracking cannot place a marker in the modeled cove.
What the geometry represents
Fenway preserves its official section and row-name catalog. Other parks use published section identifiers and explicit row references, with unresolved rows left unavailable. Current Statcast fence-distance and height references strengthen the field models; differences from general club guides are retained in the research notes. Five fence references do not define every wall corner or seating surface.
Section footprints, tier elevations, chair spacing and decorative features remain approximate. Surveyed seat coordinates and inch-level accuracy have not been established. A modeled chair is not an official seat-number record.
Historical home runs currently use the present park model. Accurate historical assignments require the configuration in use for that game, including renovations, fence moves and netting changes.
Follow the bounce
A ball can hit one spot and be caught or come to rest somewhere else. Community reports store first impact and catch/final spot as separate observations, with their own section, optional row and optional dot. Fans can identify a direct catch, catch after a bounce, resting ball or unseen ending. Either location may stay unknown. Dashed connectors join observed endpoints; intermediate bounces and physical rebound paths are not inferred.
The 3D location selector keeps these stages separate. First-impact mode can include flight estimates and explicitly labeled older reports whose stage was unspecified. Catch/final mode uses accepted reports for that stage. Five impact votes and five final votes do not establish ten-vote consensus. Each ball counts once within the selected heat map and earns one contribution credit. An observed final spot is not used as the endpoint of an estimated flight.
Building foul-ball evidence
Public foul-pitch records identify the contact and game context, but the sources inspected do not publish spectator-section endpoints for every foul. The Landing Lab provides a venue/year queue, evidence link, landing timestamp, first contact, final destination and optional visible row or seat. Draft and observed-only entries remain outside recommendations. A different second reviewer must agree before a seating observation is validated.
A validated section is displayed at its modeled centre. A row appears only when identified in footage and present in the row reference. This is a reviewed sample, not a complete population archive. The separate FiveThirtyEight seed contains 393 camera-confirmed coarse zones from 906 selected 2019 events; it lacks resolved pitch identities and ticket sections and is excluded from the seat map.
Net contact and final destination are separate. A ball may stop, rebound or clear a net. Current and dated historical club notices are recorded per park; unknown net heights do not receive a default mesh. Manual visual edits are estimates and do not simulate collisions.
Fans can mark home runs and fouls
The Community page covers all 30 current parks. A report identifies the recorded ball and source, then independently marks first impact and catch/final spot with a section or area, optional visible row and optional horizontal dot. Pending locations remain blind. Corrections preserve revisions and count as one account’s vote.
The pilot accepts an area separately for each stage when ten usable accounts contribute and at least 80% agree on its destination, area and map edition. Older unspecified-stage groups retain their first-contact-category rule. A row requires the same support. A point needs at least 80% inside a 35-model-foot cluster around a submitted point. These thresholds are provisional: agreement is not proof of surveyed accuracy or independent people. Conflicting areas remain under review, and an accepted area may have no dot.
An accepted HR replaces its original modeled endpoint without increasing the HR count. Accepted foul seating observations contribute once to their section ranking. Rows stay unknown unless explicitly supported. Section-only markers use a modeled centre; they do not create a row or chair. Restricted and exterior destinations remain recorded and outside seat recommendations. Net, roof and concourse dots do not establish height.
Catch Points recognize accepted contributions and independent video matches. Founder is capped at 25 qualifying HR contributors; foul milestones count 100, 500 and 1,000 distinct accepted events. Accuracy uses owner-curated two-reviewer evidence, with at least 20 assessable reports needed for the accuracy leaderboard. A contributor cannot grade their own report. Reward redemption and sponsorship are not active.
Accounts and shared reports are stored on the running local server. Public hosting, identity/recovery, abuse controls and production monitoring remain launch work. Read the implementation and review rules ↗
Better geometry from free sources
Each reporting map links to a Google Maps comparison view and park/netting references. Independent measurement can use original USGS 3DEP point clouds, Boston’s public 3D city models, dated park photographs and official field references. A bare-earth elevation map removes structures and cannot define seating tiers. New survey/city geometry has not been imported in this release. See the measurement workflow ↗
Analytics, exposure and validation
Pre-game research excludes the selected date and later results. Completed games have a separate actual-home-run view. Monthly, handedness, pitch and game-weather breakdowns follow the selected research filters. Home runs per game include zero-home-run games; a rate is suppressed when its exposure cannot be established.
Before publishing catch probabilities, we need independent landing validation, representative video coverage, section capacity and occupancy, spectator accessibility, and year-specific geometry and netting. Large sections, missing landings and clips selected because a catch was visible can distort raw counts. A robust forecast must be calibrated on held-out games, with errors reported by park and season.
Inspect the sources
| Evidence | Source | Use |
|---|---|---|
| Scored home runs and context | Venue-history audit · Statcast-era audit | Counts, identities and available metrics. |
| Public field definitions | Baseball Savant | Interpretation of tracking fields. |
| Current fence references | 2026 Statcast dimensions | Reference distances and heights. |
| Park/row references and nets | All 30 park research cards | Catalog evidence and remaining geometry work. |
| Foul observations | FiveThirtyEight dataset · Landing Lab | Coarse precedent and event-level video review. |
Home-run history uses MLB data and Retrosheet. The information used here was obtained free of charge from and is copyrighted by Retrosheet. Interested parties may contact Retrosheet at 20 Sunset Rd., Newark, DE 19711. Player matching uses the Chadwick register under Open Data Commons Attribution 1.0; the FiveThirtyEight seed is attributed under CC BY 4.0.