Whatnot Scraper
Whatnot listings with prices, live and upcoming shows with viewer counts, and sellers with followers, sold counts and ratings, with Whatnot's own filters.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
searchFor,keywords,sellerUsernames(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Pricing
$0.00095 per result = $0.95 per 1,000
| You are charged for | When | Price |
|---|---|---|
| Result returned | One listing, live show, or seller returned in the dataset. | $0.00095 |
Pay-per-event pricing: you are billed per result, not per subscription. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-09-13, and they are what you are actually charged.
Inputs
| Field | What it does | Type |
|---|---|---|
searchFor | Listings are items for sale. Live shows are Whatnot's streams, live now or scheduled. Sellers are profiles with followers, items sold and rating. | string |
keywords | What you'd type into Whatnot's search box, one search per line. Leave it empty if you only want the sellers below. | array |
sellerUsernames | Whatnot usernames, with or without the @, or links to their profiles. For listings you get what's in each seller's shop (searched with your words if you gave any). For live shows, each seller's live and upcoming shows. For sellers, their profiles. | array |
maxResultsPerSearch | The most rows from one search word or one seller. Whatnot itself stops a listing search after roughly the first thousand results. | integer |
maxResults | The most rows in the whole run. Each row returned is one charge. | integer |
category | Category names as Whatnot shows them, such as Pokémon Cards or Sneakers. Each search uses the ones Whatnot offers for it. A search where none of yours appear returns nothing, rather than other categories. | array |
minSellerRating | Only sellers rated at least this well. | string |
premierShopsOnly | Only sellers Whatnot has made Premier Shops. | boolean |
shipsFrom | Only sellers shipping from these countries. Leave it empty for all. | array |
sortBy | Price and newly listed are for listings, viewers for live shows. Whatnot sorts prices as numbers, so a list that mixes currencies isn't in true price order; pick one country under Ships from if that matters. | string |
buyingFormat | Buy It Now items, or items sold at auction in a live show. | string |
minPrice | In each listing's own currency, such as 10 for $10.00 or €10.00. | number |
maxPrice | In each listing's own currency. Yen listings rarely fit a range meant for dollars; see the README. | number |
condition | Condition labels as sellers write them, such as Near Mint, New or Used. Whatnot matches the label, so spelling counts. | array |
gradedOnly | Only items the seller marked as graded. | boolean |
autographedOnly | Only items the seller marked as autographed. Many sellers tick this box wrongly or not at all, so check the titles before trusting it. | boolean |
itemDetails | Other details Whatnot filters on, by name, for example {"Language": ["Japanese"], "Set": ["Base Set"]}. For trading cards Whatnot offers Language, Product Type, Set, Card Number, Rarity, Grade, Grading Service and Cert. Other categories can have their own. | object |
showStatus | Shows streaming right now, or shows scheduled for later. | string |
showFormat | The kind of show, as the seller set it up. | array |
brands | Brands Whatnot tags shows with, such as Disney or Nike. | array |
tags | Show tags as Whatnot shows them, such as $1 Starts or Vintage. | array |
What you get
A structured dataset — each result includes fields like:
titleusernamesellerUsernamepricecurrencyformatstatusstartTimeviewersfollowerssoldCountratingcategoryurlquantitycurrentBidbidCountsellerRatingsellerReviewssearchedForcategoriestagsdisplayNamereviewsisLiveverifiedSellerpremierShopaverageShipDaysExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
Related tools in Developer & Research Tools
Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.
GitHub Scraper
Search GitHub repos and users: stars, forks, language, topics, licence, plus user bio, company and followers. No token needed. $0.90 per 1,000 rows.
Stack Overflow / Stack Exchange Scraper
Search Stack Overflow and Stack Exchange by keyword or tag. Score, answer count, views, reputation and body text. $2 per 1,000 questions.
Package Registry Scraper (npm + PyPI)
Get npm and PyPI package metadata as JSON. Version, license, author, repo, keywords and npm monthly downloads. $2 per 1,000 packages.
arXiv Scraper
Search arXiv papers by title, author, abstract or category. Get full abstracts, authors, categories, DOI, dates and PDF links. $2 per 1,000 papers.
OpenAlex Scholarly Works Scraper
Search 250M+ OpenAlex papers with no API key. Get titles, authors, venue, year, citations, DOI, OA links and full abstracts. $2.00 per 1,000 papers.
Crossref Scholarly Works Scraper
Search 150M+ papers on Crossref: DOI, title, authors, journal, publisher, date, citations and abstract. No API key. $1.00 per 1,000 works.
Where this tool sits
- Categories
- Developer & Research Tools
Whatnot Scraper: listings, live shows and seller stats from Whatnot search
Search Whatnot the way its own box works and get rows back. Listings with price, format, status, condition label and the seller behind them. Live and upcoming shows with viewer counts and start times. Seller profiles with followers, items sold, rating and average shipping days.
Whatnot's search needs words. There is no way to pull a whole category empty-handed, and a listing search hands over about 1,050 results however many it claims to have.
| Input | Search words, Whatnot usernames, or both |
| Output | One row per listing, show or seller |
| Ceiling | 10,000 rows per run |
| Account needed | None, and no API key |
| Price | $0.95 per 1,000 rows, flat on every plan |
🛍️ What Whatnot Scraper does
Pick one of three things to get: listings, liveShows or sellers. Then give it search words, usernames, or both. Words run as searches. Usernames scope it to those shops: their items, their live and upcoming shows, or their profiles.
Every filter Whatnot's own panel offers is here, and which ones apply depends on what you asked for. Category, seller rating, Premier shops and ships-from work on listings and shows. Buying format, price, condition, graded, autographed and the per-category item details are listings only. Show status, format, brands and tags are shows only.
Filter values are names, not codes, and Whatnot offers only the commonest ones per search: 120 categories, 100 sets. A search where none of your values are on offer returns nothing rather than quietly widening, and the status message says so.
Every run spends about two minutes getting started before the first row lands.
📥 What you give it
{
"searchFor": "listings",
"keywords": ["charizard", "pokemon booster box"],
"category": ["Pokémon Cards"],
"buyingFormat": "buyItNow",
"minPrice": 20,
"sortBy": "newest",
"maxResults": 300
}
| Field | Default | What it is |
|---|---|---|
searchFor | listings | listings, liveShows or sellers. |
keywords | none, box starts at pokemon | One search per line, up to 20. |
sellerUsernames | none | Up to 100, with or without the @, or profile links. |
maxResultsPerSearch | 100, box starts at 50 | Rows from one word or one seller. |
maxResults | 1000, box starts at 100 | Rows in the whole run, up to 10,000. |
category | none | Names as Whatnot writes them: Pokémon Cards, Sneakers. |
minSellerRating | any | any, 4.0, 4.5 or 5.0. |
premierShopsOnly | off | Only Whatnot's Premier Shops. |
shipsFrom | none | Countries the seller ships from. |
sortBy | relevance | Price both ways and newest are for listings, viewer counts for shows. |
buyingFormat | any | buyItNow or auction. Listings only. |
minPrice, maxPrice | none | In each listing's own currency, so 10 is $10.00 or €10.00. |
condition | none | Labels as sellers write them: Near Mint, New, Used. Spelling counts. |
gradedOnly, autographedOnly | off | Items the seller marked as such. |
itemDetails | none | Whatnot's per-category details by name, like {"Language": ["Japanese"], "Set": ["Base Set"]}. Trading cards offer Language, Product Type, Set, Card Number, Rarity, Grade, Grading Service and Cert. |
showStatus | any | liveNow or upcoming. Shows only. |
showFormat | none | The kind of show, as the seller set it up. |
brands | none | Brands Whatnot tags shows with, like Disney. |
tags | none | Show tags as Whatnot writes them, like $1 Starts. |
Prices come in each seller's own currency, so a price sort lines raw numbers up across dollars, Canadian dollars and yen. A recent charizard run returned 95 USD listings, 2 CAD and 3 JPY. If a price range matters, set Ships from to one country first.
📤 What you get back
A real listing row from a recent run, with the image link cut short:
{
"listingId": "TGlzdGluZ05vZGU6MjI5MDE2ODQ2OQ==",
"title": "Pokemon Slakoth 99/123 Common Mysterious Treasures Pokemon LP",
"subtitle": "Light Played",
"price": 5,
"currency": "USD",
"format": "buyItNow",
"status": "ACTIVE",
"quantity": 1,
"currentBid": null,
"bidCount": null,
"inLiveShow": false,
"category": "Pokémon Cards",
"labels": [],
"description": "Pokemon Slakoth 99/123 Common Mysterious Treasures Pokemon LP",
"sellerUsername": "rva_sports_cards",
"sellerRating": 5,
"sellerReviews": 30792,
"sellerPremierShop": false,
"imageUrl": "https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5...",
"url": "https://www.whatnot.com/listing/TGlzdGluZ05vZGU6MjI5MDE2ODQ2OQ%3D%3D",
"sellerUrl": "https://www.whatnot.com/user/rva_sports_cards",
"searchedFor": "pokemon",
"scrapedAt": "2026-09-14T05:47:48.436Z"
}
| Field | What it is |
|---|---|
price, currency | In major units and in the seller's own currency. |
format, status | buyItNow or auction, and Whatnot's own status word such as ACTIVE. |
currentBid, bidCount | Filled on auction items, null on Buy It Now. |
subtitle | Usually the condition label the seller chose. |
searchedFor | Which search produced this row: the word, @seller, or @seller: word. |
Live show rows carry showId, title, the seller fields, status of live or upcoming, startTime in UTC, viewers, categories, tags, thumbnailUrl and the two links.
Seller rows carry username, displayName, followers, following, soldCount, rating, reviews, isLive, verifiedSeller, premierShop, averageShipDays, bio, profileImageUrl, url and userId.
🧾 Reading the output
| Row | How to spot it | Charged |
|---|---|---|
| A result | _sample is absent | yes |
| The sample row | _sample: true | no |
Run it with no words and no usernames and you get the one sample row, a real listing, so you can see the shape first.
There are no diagnostic rows. The status message leads with the result, then names searches that were not read or came back partial, filters Whatnot did not offer, and unknown sellers. RUN_REPORT in the key-value store has one entry per search: how many Whatnot listed, how many it served, pages read, why it stopped, and the currencies delivered.
Four dataset views are set up, overview, listings, liveShows and sellers.
▶️ How to run it
1. Open Whatnot Scraper and click Try for free. 2. Choose What to get: listings, live shows or sellers. 3. Type search words into Search words, one per line, or paste usernames into Seller usernames. 4. Add filters if you want them, set Results in total, then click Start. 5. Download the dataset as JSON, CSV or Excel, or read it from the Apify API.
💰 How much does it cost?
$0.95 per 1,000 rows. Flat on every Apify plan, no volume tiers.
You pay per row delivered. A search with no results, a search Whatnot did not answer or did not finish, a filter Whatnot does not offer for that search, an unknown seller, a repeat, and the sample row are all free.
💡 What people use it for
- Tracking what a card or a sneaker actually lists for, by running the same words on a schedule.
- Watching a set of sellers, their shop, their upcoming shows and their follower counts in one run.
- Finding shows to watch before they start, with Show status on upcoming and a viewer sort.
- Pulling seller profiles for a category to see who has the volume and the rating.
- Filtering to graded or autographed items only and keeping an eye on the asking prices.
🚧 What it does not do
- No buying, bidding or messaging. It reads public pages, nothing more.
- Search words are required for listings and shows. An empty query returns nothing on Whatnot,
so a whole category cannot be pulled without words.
- A listing search reaches about 1,050 results, 21 pages of 50, whatever the result count says.
A show search went about 9,000 deep before Whatnot started repeating itself.
- Mixed currencies break a price sort, because the numbers are compared raw. Pick one
Ships from country when it matters.
- The viewer sort is approximate. In runs of 100 live shows, 31 to 38 of the 99 steps went the
wrong way, mostly by under ten viewers.
- Some filters cannot be double-checked on the rows. Condition, item details, graded,
autographed, show format and ships-from are not in the search results, so Whatnot's own filtering is what you get. Autographed is the weakest: a baseball card search had 18 ticked, 1 titled as signed.
- Seller-scoped shows ignore most filters. That list takes no words, format, brands, tags,
rating, Premier or country.
- Every run has about two minutes of start-up before the first row.
🧭 Which marketplace scraper do you need?
| If you want | Use |
|---|---|
| Whatnot listings, live shows and sellers | This one |
| What things actually sold for on eBay | eBay Sold Listings Scraper |
| Amazon products, prices and reviews | Amazon Scraper |
| Mercado Libre deals and best sellers | Mercado Libre Scraper |
❓ Questions people ask
Do I need a Whatnot account? No. No login, no API key.
Can I get every listing in a category? Not without search words. Whatnot's search returns nothing for an empty query, so use words and narrow with Category.
Why did my filter return nothing? Whatnot only offers certain filter values per search, and a value it does not offer gets you an empty result rather than a wider one. The status message names the filter.
How do I follow one seller? Put the username into Seller usernames and leave Search words empty. Switch What to get between listings, shows and sellers for the three views.
Why are my prices out of order? Mixed currencies. Set Ships from to one country.
Is scraping Whatnot legal? These are public listing, show and profile pages. They carry personal data in places, which GDPR and similar laws cover, and Whatnot's terms govern reuse, so have a reason and read the terms. Apify's write-up on scraping and the law is a starting point, and we are not lawyers.
🆘 If something breaks
Open the Issues tab on the actor page. Send the run ID and the words or usernames you used. The status message and RUN_REPORT name which search fell short.