Skip to content

Latest commit

Β 

History

138 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

StubHub Ticket Marketplace Dataset

UpdatedΒ RecordsΒ Rebrowser

Daily snapshots of StubHub resale ticket listings, events, and venues with seating details, delivery types, and availability data across sports, concerts, and theater.

This repository contains a preview sample of the StubHub dataset published by Rebrowser. If you're doing academic research, you may be eligible for free access to a much larger slice β€” see Free Datasets for Research.

This dataset contains 3 entities, each in its own folder: Event Listings (event-listings), Events (events), Venues (venues). See below for a full field breakdown, sample counts, and data distributions for each.

Found this useful? ⭐ Star this repo to help us keep publishing fresh data. Found an error? Let us know.


Event Listings

Per-event ticket listings from StubHub with section, row, seat, quantity, delivery type, ticket class, and creation timestamp.

138,799,859 total records from 2024-03-31 to 2026-09-06, up to 30,000 rows in this sample (0.02% of full dataset). Exported as one file per day, up to 1,000 rows each, last 30 days retained.

Data Growth

Field Type Fill Rate Description
_primaryKey string 100% Unique identifier for this record
_firstSeenAt datetime 100% First time this record was seen
_lastSeenAt datetime 100% Last time this record was updated
listingId string 100% Unique listing ID (numeric, e.g., 9833690568)
eventId string 100% Event ID this listing belongs to (join with stubhub_events)
price πŸ”’ float 100% Ticket price in dollars including all fees (e.g., 212.35)
faceValue πŸ”’ float 86% Face value of ticket in dollars (original printed price, 0 or null if not available)
section string 100% Section name/number (e.g., 116, 325, 104)
row string 91% Row within section - letter (A, B, GG), numeric (1-20+), or null if unassigned
seat string 62% Seat range (e.g., "5_6", "1_6", "12_13") or null if unassigned
seatFrom string 37% Starting seat number (e.g., "1", "5", "12")
seatTo string 16% Ending seat number (e.g., "6", "13")
quantity float 100% Number of tickets available in this listing (1-25, typically 2-8)
availableQuantities array 100% Purchasable quantities (e.g., [1,2,3,4] means you can buy 1, 2, 3, or 4 tickets)
ticketClass float 100% Ticket class ID (e.g., 594=Lower, 407=Upper, 954=Upper Level)
ticketClassName string 100% Ticket class name (Lower, Upper, Mezzanine, Club Level, Plaza Level, etc.)
ticketTypeId float 100% Ticket type ID (10=Mobile Transfer, 11=Mobile, 9=Mobile Entry, 1=Print-at-Home)
ticketTypeName string 100% Ticket delivery type (Mobile Transfer ticket, Mobile ticket, Print-at-Home ticket)
listingTypeId float 100% Listing type ID (1=standard ~95%, 14=other ~5%)
starRating πŸ”’ float 99% Deal star rating 1-5 (5=best deal, null ~0.5-11% of listings)
dealScore πŸ”’ float 98% Deal quality score 0-10 (e.g., 9.676, higher=better value)
discount πŸ”’ float 56% Discount factor vs avg price (e.g., 0.798=~80% off avg, negative=above avg)
seatQualityScore πŸ”’ float 98% Seat quality score (e.g., 4.533, higher=better seat position)
isSeatedTogether bool 100% Whether tickets are seated together (true ~94-96%, false ~4-6%)
isSpeculativeRow bool 100% Whether row is speculative/unconfirmed (true ~1-4%, false ~96-99%)
listingNotes array 100% Listing notes/disclosures (Clear view, Front Row of Section, Limited view, Aisle seat, etc.)
createdAt datetime 100% Listing creation timestamp

πŸ”’ Premium fields are included in the data files but their values are replaced with [PREMIUM]. To access real values, use our website.

Field Distributions

Delivery Type Distribution (ticketTypeName)
Value Count Share
Mobile Transfer ticket 99,964,995 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘ 72.1%
Mobile ticket 36,127,254 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 26.0%
Print-at-Home ticket 1,291,248 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.9%
Ticket delivery method: Mobile Transfer 372,921 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.3%
Delivery method: Mobile Transfer 370,001 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.3%
Delivery method: Mobile 198,905 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.1%
Ticket delivery method: Mobile 198,197 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.1%
Physical ticket 196,761 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.1%
Delivery method: Print-at-Home 6,370 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.0%
Ticket delivery method: Print-at-Home 6,305 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.0%
Top Ticket Classes (ticketClassName)
Value Count Share
Upper 28,995,530 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 41.4%
Lower 19,176,163 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 27.4%
Balcony 4,845,906 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 6.9%
Upper Level 3,113,493 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 4.5%
Middle 3,044,162 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 4.4%
Floor 2,586,482 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 3.7%
Mezzanine 2,465,251 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 3.5%
200 Level 1,931,099 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 2.8%
Loge 1,918,369 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 2.7%
Upper Tier 1,882,120 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 2.7%

Events

Daily snapshot of StubHub events with start time, venue ID, availability state, and event type flags for market-level tracking.

9,709 total records from 2025-10-05 to 2026-09-06, up to 9,709 rows in this sample (100.0% of full dataset). Exported as one file per day, up to 1,000 rows each, last 30 days retained.

Data Growth

Field Type Fill Rate Description
_primaryKey string 100% Unique identifier for this record
_firstSeenAt datetime 100% First time this record was seen
_lastSeenAt datetime 100% Last time this record was updated
eventId float 100% Unique StubHub event ID (e.g., 159257629)
name string 100% Full event name (e.g., Arizona Diamondbacks at Los Angeles Dodgers)
url string 100% Full StubHub URL for the event
eventStartDatetime datetime 100% Event start datetime (UTC)
isTbd bool 100% Event datetime is TBD (to be determined)
isDateConfirmed bool 100% Event date is confirmed
isTimeConfirmed bool 100% Event time is confirmed
eventState float 100% Event state code (1=active, 4=postponed, 5=cancelled, 6=unknown, 11=TBD)
eventAvailabilityState float 100% Event availability state (0=available, 1=limited, 2=soldout)
venueId float 100% StubHub venue ID (join with stubhub_venues)
minPrice πŸ”’ float 29% Minimum ticket price in dollars
medianPriceBucket float 86% Median price bucket (0-3 scale)
isUnderHundred bool 100% Event has tickets under $100
hasActiveListings bool 100% Event has active ticket listings
ticketsRemaining πŸ”’ float 1% Number of tickets remaining on StubHub
isFastSelling πŸ”’ bool 21% Event is fast selling (top 10% of daily sales)
onSaleDateTime datetime 87% When tickets go on sale (UTC)
rescheduledFromDate string 0% Original date if event was rescheduled
isParkingEvent bool 100% Event is a parking pass
isMultidayEvent bool 100% Event spans multiple days

πŸ”’ Premium fields are included in the data files but their values are replaced with [PREMIUM]. To access real values, use our website.

Field Distributions

Event State Distribution (eventState)
Value Count Share
1 8,468 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘ 87.2%
11 975 β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 10.0%
4 173 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 1.8%
6 92 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.9%
5 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.0%

Venues

StubHub venue directory with name, city, country, and timezone offset for geographic and venue-level event analysis.

218 total records from 2025-10-12 to 2026-09-06, 220 rows in this sample (100.9% of full dataset). Exported as a single file, overwritten daily.

Data Growth

Field Type Fill Rate Description
_primaryKey string 100% Unique identifier for this record
_firstSeenAt datetime 100% First time this record was seen
_lastSeenAt datetime 100% Last time this record was updated
venueId float 100% Unique StubHub venue ID (e.g., 1817)
name string 100% Venue name (e.g., Dodger Stadium)
addressCity string 100% Venue city (e.g., Los Angeles)
addressFull string 100% Full venue location (e.g., Los Angeles, CA, USA)
addressCountryCode string 100% Country code (US, CA, GB, etc.)
addressCountry string 100% Full country name (USA, Canada, etc.)
timezoneOffset float 100% Timezone offset in milliseconds from UTC

Field Distributions

Venues by Country (addressCountryCode)
Value Count Share
US 189 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘ 87.5%
CA 13 β–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 6.0%
DE 4 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 1.9%
GB 3 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 1.4%
MX 2 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.9%
SE 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.5%
FR 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.5%
ES 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.5%
AU 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.5%
BR 1 β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 0.5%

Pre-built Views on Rebrowser

Rebrowser web viewer lets you filter, sort, and export any slice of this dataset interactively. These pre-built views are ready to open:

Event Listings

High Deal Score Listings (8+) β€” 29,436,154 records

↳ [{"field":"dealScore","op":"gte","value":8},{"sort":"dealScore DESC"}]

Listings with Face Value Data β€” 114,810,328 records

↳ [{"field":"faceValue","op":"isNotEmpty"},{"sort":"price ASC"}]

Mobile Transfer Ticket Listings β€” 87,210,854 records

↳ [{"field":"ticketTypeName","op":"is","value":"Mobile Transfer ticket"},{"sort":"price ASC"}]

Lower Level Ticket Listings β€” 16,716,570 records

↳ [{"field":"ticketClassName","op":"is","value":"Lower"},{"sort":"price ASC"}]

Multi-Ticket Listings (4+ tickets) β€” 64,289,801 records

↳ [{"field":"quantity","op":"gte","value":4},{"sort":"quantity DESC"}]

See all 25 views β†’

Events

Events with Active Listings β€” 6,233 records

↳ [{"field":"hasActiveListings","op":"isTrue"},{"sort":"eventStartDatetime ASC"}]

Active Events (Not Postponed/Cancelled) β€” 5,451 records

↳ [{"field":"eventState","op":"eq","value":1},{"sort":"eventStartDatetime ASC"}]

Fast Selling Events β€” 2,049 records

↳ [{"field":"isFastSelling","op":"isTrue"},{"sort":"minPrice ASC"}]

Upcoming Events (Next 30 Days) β€” 5,936 records

↳ [{"field":"eventStartDatetime","op":"gte","value":"now"},{"field":"eventStartDatetime","op":"lte","value":"now+30d"},{"sort":"eventStartDatetime ASC"}]

Events with Tickets Under $50 β€” 1,942 records

↳ [{"field":"minPrice","op":"lt","value":50},{"sort":"minPrice ASC"}]

See all 19 views β†’

Venues

United States Venues β€” 66 records

↳ [{"field":"addressCountryCode","op":"is","value":"US"},{"sort":"name ASC"}]

Canada Venues β€” 13 records

↳ [{"field":"addressCountryCode","op":"is","value":"CA"},{"sort":"name ASC"}]

International Venues (Non-US) β€” 29 records

↳ [{"field":"addressCountryCode","op":"isNot","value":"US"},{"sort":"addressCountry ASC"}]

North America Venues β€” 79 records

↳ [{"field":"addressCountryCode","op":"is","value":"US"},{"field":"addressCountryCode","op":"is","value":"CA"},{"sort":"addressCountry ASC"}]

Venues by City β€” 95 records

↳ [{"sort":"addressCity ASC"}]

See all 17 views β†’


Code Examples

import pandas as pd
from pathlib import Path

# ── Venues ───────────────────────────────────────────────────────────────────
venues = pd.read_parquet('rebrowser/stubhub-dataset/venues/data.parquet')

# Top 10 cities by number of venues
print(venues['addressCity'].value_counts().head(10).to_string())

# Venues by country
print(venues.groupby('addressCountry').size().sort_values(ascending=False).to_string())

# All venues in a specific city
nyc = venues[venues['addressCity'] == 'New York']
print(nyc[['name', 'addressFull']].to_string(index=False))

# ── Events ───────────────────────────────────────────────────────────────────
event_files = sorted(Path('rebrowser/stubhub-dataset/events/data').glob('*.parquet'))[-7:]
events = pd.concat([pd.read_parquet(f) for f in event_files])

# Events by availability state (0=available, 1=limited, 2=soldout)
print(events['eventAvailabilityState'].value_counts().to_string())

# Active events with confirmed dates
confirmed = events[(events['eventState'] == 1) & (events['isTbd'] == False)]
print(f"Confirmed active events: {len(confirmed)}")

# Events with tickets under $100
print(f"Budget-friendly events: {events['isUnderHundred'].sum()}")

# ── Event Listings ───────────────────────────────────────────────────────────
listing_files = sorted(Path('rebrowser/stubhub-dataset/event-listings/data').glob('*.parquet'))[-7:]
listings = pd.concat([pd.read_parquet(f) for f in listing_files])

# Listings by ticket delivery type
print(listings['ticketTypeName'].value_counts().to_string())

# Average quantity per listing by ticket class
print(listings.groupby('ticketClassName')['quantity'].mean()
      .sort_values(ascending=False).head(10).to_string())

# Seated-together percentage
pct = listings['isSeatedTogether'].mean() * 100
print(f"Seated together: {pct:.1f}%")

Use Cases

Resale Inventory Analysis

Study ticket listing patterns across event types and venues. Analyze how section, row, and delivery method affect inventory distribution in the secondary market.

Event Supply Tracking

Monitor listing velocity for upcoming events. Identify which events have the most active resale inventory and how supply changes as event dates approach.

Venue Seating Research

Map seating section distribution across venues. Compare ticket class breakdowns (Lower, Upper, Floor, Mezzanine) to understand venue layout patterns and listing density.

Delivery Method Trends

Track the shift from physical to mobile ticket delivery across event categories. Analyze which delivery types dominate by event type and venue.


Full Dataset on Rebrowser

This repo is a 1,000-row preview sample. The full dataset is at rebrowser.net/products/datasets/stubhub

Doing academic research? You may qualify for free access to a larger slice. See Free Datasets for Research.

On Rebrowser you can:

  • Filter before you buy β€” use the web UI to apply documented filters and sortable columns. Preview results before purchasing; paid exports freeze their exact selected identities before billing.
  • Export in your format β€” CSV, JSON, JSONL, or Parquet depending on your plan.
  • Access via API β€” integrate dataset queries into your pipelines and workflows.
  • Choose your freshness β€” plans range from a 14-day lag to real-time data with no delay.
  • Select only the fields you need β€” keep exports lean. Premium fields with richer data are available on higher plans.

Pricing starts at $2 per 1,000 rows with volume discounts.


License & Terms

Free for research and non-commercial use with attribution. See license terms and how to cite.

@misc{rebrowser_stubhub,
  author       = {Rebrowser},
  title        = {StubHub Ticket Marketplace Dataset},
  year         = {2026},
  howpublished = {\url{https://rebrowser.net/products/datasets/stubhub}},
  note         = {Accessed: YYYY-MM-DD}
}

Commercial use requires a paid license β€” see pricing. Use of this data is governed by the Rebrowser Terms of Use, which may be updated at any time independently of this repository.


Disclaimer

Rebrowser is an independent data provider and is not affiliated with, endorsed by, or sponsored by StubHub. Any trademarks are the property of their respective owners. This dataset is compiled from publicly available information; we do not request or collect StubHub user credentials. By using this dataset, you agree to comply with StubHub's Terms of Service and all applicable laws and regulations. Images, logos, descriptions, and other materials included in this dataset remain the intellectual property of their respective owners and are provided solely for informational purposes. Rebrowser makes no warranties regarding the accuracy, completeness, or legality of the data and assumes no liability for how the data is used. You are solely responsible for ensuring that your use of this dataset does not infringe on the rights of any third party.

You can also find this data on Kaggle, HuggingFace, Zenodo.

About

StubHub secondary ticket market data: event listings with section, row, quantity, delivery type, ticket class, and 500+ venues across US, Canada, and Europe. Updated daily.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors