OrbTop

Whatnot Scraper - Livestream Marketplace Data

ECOMMERCESOCIAL MEDIABUSINESS

Whatnot Livestream Marketplace Scraper

Scrape live shopping shows and product listings from Whatnot, the dominant US livestream auction platform for collectibles. Returns show titles, hosts, viewer counts, categories, and — when you drill into a specific show — the auction and buy-now products listed inside it.


Whatnot Scraper Features

  • Pulls live and scheduled shows from any Whatnot category tag (sports cards, Pokémon, TCG, toys, sneakers, comics, and 15+ more).
  • Captures host details — username, profile image, premier-shop status — so each show is already attributed to a seller.
  • Drills into individual livestreams to extract every product line item: title, price (USD), auction-vs-buy-now, quantity, and listing status.
  • Reports point-in-time activity — active_viewers and total_watchlist_users — for trend tracking and demand modeling.
  • Two modes: categories for the show feed, livestreams for in-show products. Pick one per run, or chain runs.
  • Returns flat JSON. Array fields are plain string arrays. No nested objects to unpack.

What Can You Do With Whatnot Data?

  • Resellers — track which shows are pulling viewers in your vertical, then study auction prices for inventory benchmarks.
  • Collectible pricing services — sample current bids and buy-now prices across a category to ground market value.
  • Market analysts — count concurrent livestreams per category as a leading indicator of demand for sports cards, TCG, sneakers, and other collectible verticals.
  • CRM enrichment — pipe seller usernames and premier-shop flags into prospecting pipelines for high-volume hosts.
  • E-commerce intel — compare Whatnot listing volume against eBay, StockX, or Goldin for the same SKUs.

How Whatnot Scraper Works

  1. Pick a mode. categories walks a single tag page like /tag/sports_cards and returns the shows it surfaces. livestreams takes specific show URLs and returns the products inside each one.
  2. The scraper navigates with a real Chromium browser through a US residential proxy. Whatnot's Cloudflare clears automatically — no CapSolver keys, no manual challenges.
  3. While the page mounts, the scraper intercepts Whatnot's internal GetFeed and LiveShopFeed GraphQL responses, parses the JSON directly, and emits flat records.
  4. It scrolls a few times to trigger lazy-loaded pages, dedupes by record ID, and stops when maxItems is reached.

Input

{
  "mode": "categories",
  "categoryTag": "sports_cards",
  "maxItems": 50,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"],
    "apifyProxyCountry": "US"
  }
}
Field Type Default Description
mode string categories categories returns livestream shows for a tag. livestreams returns the products inside specific show URLs.
categoryTag string sports_cards Whatnot category-tag slug. Examples: sports_cards, trading_card_games, toys, sneakers, comics, coins_and_money. Whatnot uses underscores, not hyphens.
livestreamUrls array [] List of https://www.whatnot.com/live/<uuid> URLs (used in livestreams mode).
maxItems integer 15 Cap on returned records. The default keeps runs under the Apify tester's 5-minute budget; bump it for larger pulls.
proxyConfiguration object Apify residential US Residential US proxy required. Whatnot geofences listings to US IPs and sits behind Cloudflare. Datacenter IPs are blocked before the first byte.

Drill into a specific livestream

{
  "mode": "livestreams",
  "livestreamUrls": [
    { "url": "https://www.whatnot.com/live/0c3621ad-012a-49a5-9174-aa25c04ab724" }
  ],
  "maxItems": 30
}

Whatnot Scraper Output Fields

A single dataset schema covers both modes. The record_type field tells you whether the row is a livestream show or a product listing inside one. Fields that don't apply to a given record type are null.

Categories mode — livestream show record

{
  "record_type": "livestream",
  "id": "c2f772f5-88de-4ef5-9dbe-c293d006a8ad",
  "title": "$1 Singles NBA, NFL, MLB Sudden Death",
  "url": "https://www.whatnot.com/live/c2f772f5-88de-4ef5-9dbe-c293d006a8ad",
  "status": "PLAYING",
  "start_time": "2026-05-01T18:15:29.160Z",
  "active_viewers": 19,
  "total_watchlist_users": 1,
  "stream_service": "agora",
  "seller_username": "2farrgone",
  "seller_id": "13508717",
  "seller_profile_url": "https://www.whatnot.com/user/2farrgone",
  "seller_profile_image": "https://images.whatnot.com/...",
  "seller_is_premier": null,
  "categories": ["Football Cards"],
  "tags": ["Raw Cards", "$1 Starts", "Sudden Death"],
  "category_tag": "sports_cards",
  "thumbnail_url": "https://images.whatnot.com/...",
  "scraped_at": "2026-05-01T18:25:53.346Z"
}
Field Type Description
record_type string Always livestream in categories mode.
id string Whatnot livestream UUID.
title string Show title set by the host.
url string Canonical Whatnot URL for the livestream.
status string PLAYING, SCHEDULED, or ENDED.
start_time string ISO 8601 timestamp the show is scheduled to start (or did start).
active_viewers number Concurrent viewer count at scrape time.
total_watchlist_users number Users who have added the show to their watchlist.
stream_service string Backend streaming service (ivs, agora).
seller_username string Host's Whatnot handle.
seller_id string Whatnot internal seller ID.
seller_profile_url string Direct URL to the host's profile.
seller_profile_image string Host avatar URL.
seller_is_premier boolean true if the host is a Premier Shop. May be null when the flag isn't returned.
categories array of strings Whatnot categories for the show (e.g. "Football Cards").
tags array of strings Show tags (e.g. "Raw Cards", "$1 Starts").
category_tag string The source category-tag slug used for discovery.
thumbnail_url string Show thumbnail image URL.
scraped_at string ISO timestamp the record was extracted.

Livestreams mode — in-show product record

{
  "record_type": "listing",
  "id": "TGlzdGluZ05vZGU6MTc2ODE2OTMxNg==",
  "title": "Mystery Pack #7",
  "url": "https://www.whatnot.com/live/0c3621ad-012a-49a5-9174-aa25c04ab724",
  "status": "ACTIVE",
  "price_usd": 5.00,
  "currency": "USD",
  "transaction_type": "AUCTION",
  "quantity": 1,
  "description": "",
  "seller_username": "ht_breaksingles",
  "seller_id": "UHVibGljVXNlck5vZGU6NTY3NDAwMzA=",
  "seller_profile_url": "https://www.whatnot.com/user/ht_breaksingles",
  "livestream_id": "0c3621ad-012a-49a5-9174-aa25c04ab724",
  "livestream_url": "https://www.whatnot.com/live/0c3621ad-012a-49a5-9174-aa25c04ab724",
  "thumbnail_url": "https://images.whatnot.com/...",
  "scraped_at": "2026-05-01T18:25:53.346Z"
}
Field Type Description
record_type string Always listing in livestreams mode.
id string Whatnot listing-node ID (base64-encoded).
title string Product title shown in the live shop.
url string Parent livestream URL.
status string ACTIVE, ENDED, or other listing-status code.
price_usd number Listing price in USD, converted from Whatnot's cents-amount payload.
currency string Currency code (typically USD).
transaction_type string AUCTION, BUY_NOW, or GIVEAWAY.
quantity number Quantity available.
description string Listing description text (often empty).
seller_username string Host running the show.
seller_id string Whatnot internal seller ID.
seller_profile_url string Direct URL to the seller's profile.
livestream_id string Parent livestream UUID.
livestream_url string Parent livestream URL.
thumbnail_url string Listing thumbnail image URL.
scraped_at string ISO timestamp the record was extracted.

FAQ

How do I scrape Whatnot?

Whatnot Scraper hits the public category and livestream pages through a real browser. Pick categories mode and a category tag, run it, and you get back the shows currently surfaced on that tag. To get product-level data, copy a livestream URL into the livestreamUrls input and switch to livestreams mode.

What data does Whatnot Scraper return?

Whatnot Scraper returns either livestream show records (host, viewer count, status, categories, tags) or in-show product listings (price, transaction type, quantity, listing status). Both record types share a flat schema with a record_type discriminator field.

Does Whatnot Scraper need proxies?

Yes. Whatnot Scraper requires Apify residential proxies pinned to the US. Whatnot is Cloudflare-protected and geofences its listing feed to US IPs — datacenter and non-US proxies see an empty splash page. The default proxy configuration in the input ships with this set up correctly.

How much does Whatnot Scraper cost to run?

Whatnot Scraper is pay-per-result. A fixed start fee per run plus $0.001 per record saved. A typical 100-record category pull is around $0.20. A 1,000-record pull is about $1.10. There's no subscription and you only pay for records that get saved to the dataset.

Why are some fields null in the output?

Whatnot Scraper uses one schema for two record types. Livestream rows have viewer counts but no price; listing rows have price but no viewers. Fields that don't apply to a given record are returned as null rather than omitted, which keeps the dataset shape consistent across runs.

Can I filter by category?

Whatnot Scraper takes a single category-tag slug per run. Whatnot uses underscores in slugs (sports_cards, trading_card_games, coins_and_money). The input enum lists 21 supported tags covering the main collectible verticals. To cover more categories, run the actor multiple times.


Need More Features?

Need a different Whatnot data shape, additional categories, or seller-profile crawling? File an issue on the actor page or email through the Apify console.

Why Use Whatnot Scraper?

  • First paid Whatnot actor on Apify — the alternatives are free, sporadically maintained, and surface fewer fields. This one is built and monitored.
  • Real schema, two modes — categories mode gives you market-level signal (which shows are live, who's hosting), livestreams mode gives you the actual auction prices. One actor covers both jobs that other scrapers split across separate tools.
  • No CAPTCHA keys, no setup — Whatnot's Cloudflare clears automatically with the bundled residential proxy. You ship input JSON, you get clean records out.