Whatnot Live Comments Scraper
Pricing
from $1.50 / 1,000 saved comments
Whatnot Live Comments Scraper
Capture Whatnot live chat comments from multiple livestreams in real time. Get message text, usernames, user roles, and source links without a Whatnot login. Export chat data for audience research and keyword analysis.
Pricing
from $1.50 / 1,000 saved comments
Rating
0.0
(0)
Developer
Epic Scrapers
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
14 days ago
Last modified
Categories
Share
Whatnot Live Comments Scraper: capture live chat comments from Whatnot shows
Whatnot Live Comments Scraper records the live chat of Whatnot shows and saves every message as a row in a spreadsheet. Give it one or more live show URLs and it listens until the show ends or a limit you set is reached. Each row has the message text, the username, user ID, role flags such as host or moderator, and the show it came from. It is built for sellers reviewing audience questions, researchers studying chat activity, and analysts who want chat data for keyword or sentiment work.
- Many shows at once. All URLs in a run are followed at the same time, and each row says which show it came from (
liveId,liveUrl). - Roles and account data. Rows carry
isHost,isCohost,isModerator,isEmployee,isTopBuyerandisNewUser, plusloyaltyTieranduserDaysSinceCreatedwhen Whatnot supplies them. - Recent chat on join. Whatnot sends a small batch of recent messages when the Actor connects, about 20. Keep it or skip it with
includeRecentMessages. Saved rows from this batch are markedisFromHistory: true. - Reconnects and de-duplication. The Actor reconnects after connection loss, recovers recent messages it missed, and skips comment IDs it has already saved.
- Pay per saved comment, no login. No Whatnot account, cookies or proxy settings needed. Export to JSON, CSV, Excel or Google Sheets.
Scope: This is a live chat collector, not a chat archive. Start it while the show is live. It does not download a finished show's full chat, and it does not collect bids or sales. For keyword searches of shows, listings and sellers, use Whatnot Search Scraper. For seller reviews, use Whatnot Seller Review Scraper. For seller, search and category data, use Whatnot Scraper.
What can you do with Whatnot Live Comments Scraper?
| Goal | How |
|---|---|
| Collect audience questions | Filter rows where message contains ?, excluding isHost rows. |
| Study chat activity | Count rows per minute from scrapedAt and per username. |
| Find your most active viewers | Group by userId and sort by number of messages. Check isTopBuyer and loyaltyTier. |
| See what moderators and hosts say | Filter on isModerator, isHost and isCohost. |
| Spot new accounts | Use isNewUser and userDaysSinceCreated. |
| Keyword and sentiment analysis | Export message and run your own analysis. The Actor does not score sentiment. |
| Compare several shows | Put several URLs in liveUrls and group by liveId. |
How it compares
| What you need | Whatnot Live Comments Scraper | Manual copy-paste from the chat | Screen recording and transcribing |
|---|---|---|---|
| Several shows at the same time | Yes | No | No |
| Usernames, IDs and role flags | Every row | Usernames only | Usernames only |
| Fast chats | Saved as they arrive | Messages scroll away | Slow and error-prone |
| Runs unattended with time limits | Yes | No | No |
| Price | Pay per saved comment | Your time | Your time |
Quick start
- Copy the URL of a Whatnot show that is live right now.
- Click Try for free, sign in to Apify and add the URL to Whatnot live URLs.
- For a first test, set Max duration to
5minutes and Max comments to100. - Click Start. Comments are saved as they arrive.
- Open the Output tab to inspect the rows or export them.
{"liveUrls": ["https://www.whatnot.com/live/29f7b000-dcf7-439f-a16a-962b829112a4"],"maxDurationMinutes": 5,"maxComments": 100}
Replace the example URL with a show that is live now. The run stops at whichever limit is reached first. A quiet show can return fewer than 100 comments, or none.
Track Whatnot chat over time with scheduled runs
Most of the value comes from running the same shows or sellers again and comparing. Apify can run the actor for you on a schedule and send the results wherever you need them.
1. Save your input as a task
Open the actor, set your a show URL and options, then click Save as a new task. A task is a saved input you can run again with one click or on a schedule.
2. Schedule the task
In Apify Console, go to Schedules, click Create new, choose how often to run (for example daily at 06:00 in your time zone), and add your task. See Schedules and How to create a schedule.
Watch how to schedule an Actor:
Or schedule a saved task:
Common schedules:
| Use case | Frequency | Cron expression |
|---|---|---|
| Start at a known show time | Daily | 0 18 * * * |
| Weekend shows | Sat and Sun | 0 18 * * 6,0 |
| Weekly recurring show | Weekly (Friday) | 0 19 * * 5 |
| Morning shows | Weekdays | 0 9 * * 1-5 |
3. Send the results to a spreadsheet
Connect Google in the task's Integrations tab to save every run to Google Sheets or Google Drive automatically:
4. Compare runs
Rows carry scrapedAt or fetchedAt, so runs are easy to join:
- Chat volume: number of rows per
liveIdover time, usingscrapedAt. - Merge runs:
commentIdwithliveIdremoves duplicates when runs overlap. - Who talks: comments per
username, split byisTopBuyer,isNewUserandloyaltyTier. - Host and mod activity: rows where
isHost,isCohostorisModeratoristrue. - Questions:
messagevalues that contain a question mark.
Input reference
| Field | Type | Default | Effect |
|---|---|---|---|
liveUrls | Array of strings | Required | Whatnot live URLs or bare livestream UUIDs. Invalid entries are skipped, repeated shows are merged, and the run fails if none are valid. |
includeRecentMessages | Boolean | true | Save the recent messages Whatnot sends when the Actor first joins each show. Turn off to save only new messages. |
maxDurationMinutes | Integer | 0 | Stop after this many minutes. 0 means no limit. |
idleTimeoutMinutes | Integer | 60 | Stop after this many minutes without a new comment in any show. 0 turns it off. Checked about every 30 seconds. |
maxComments | Integer | 0 | Maximum saved comments across the whole run, not per show. 0 means no limit. |
The Actor also stops when all followed shows report that they have ended, and when no chat can be joined. Apify's run timeout is separate: it can stop the run before your limits, so set it long enough for the show.
Collect only new messages for 30 minutes
{"liveUrls": ["https://www.whatnot.com/live/29f7b000-dcf7-439f-a16a-962b829112a4"],"includeRecentMessages": false,"maxDurationMinutes": 30,"idleTimeoutMinutes": 10,"maxComments": 5000}
Even with includeRecentMessages off, messages Whatnot returns after a reconnect are kept, because they fill the gap while the Actor was disconnected.
Follow several shows
{"liveUrls": ["https://www.whatnot.com/live/29f7b000-dcf7-439f-a16a-962b829112a4","02241315-d135-4b3d-bc02-3ea4695f1dba"],"maxDurationMinutes": 60,"maxComments": 20000}
Output
Results go to the run's default dataset, one row per chat message. Export as JSON, CSV, Excel, XML or HTML. The Comments view shows the main columns. Export without a view to get every field.
This is an example row. The user and message are made up:
{"liveId": "29f7b000-dcf7-439f-a16a-962b829112a4","liveUrl": "https://www.whatnot.com/live/29f7b000-dcf7-439f-a16a-962b829112a4","commentId": "9221cf9b-4fc3-4786-9e49-5255f146be55","message": "Will you show the next card?","type": null,"taggedUsers": [],"userId": "12345678","username": "example_viewer","profileImageUrl": null,"isHost": false,"isCohost": false,"isModerator": false,"isEmployee": false,"isTopBuyer": false,"isNewUser": false,"loyaltyTier": "NO_TIER","userDaysSinceCreated": 405,"isFromHistory": false,"scrapedAt": "2026-09-27T13:12:58.989Z"}
| Fields | Meaning |
|---|---|
liveId, liveUrl | The show the message came from. |
commentId | Whatnot's message ID. Use it with liveId to merge runs. |
message, type | The text and Whatnot's message type. Either can be null. |
taggedUsers | Users tagged in the message, usually objects with id and username. Empty array if none. |
userId, username, profileImageUrl | The author, or null when Whatnot does not send them. |
isHost, isCohost, isModerator, isEmployee, isTopBuyer, isNewUser | Role flags. A missing flag becomes false, which is not proof the user lacks that status. |
loyaltyTier, userDaysSinceCreated | Loyalty tier and account age in days, or null. |
isFromHistory | true for messages from the first recent-history batch. Reconnect recovery rows are false. |
scrapedAt | When the Actor received the message, in UTC. It is not the time the user posted. |
Automation and downstream analysis
The dataset is available through the Apify API and integrations such as Make, Zapier and n8n. For an automated workflow:
- Set finite time or comment limits.
- Start the run and wait for a finished status. A started run is not a finished collection.
- Read the dataset from
defaultDatasetIdand handle pagination. - Keep
liveId,liveUrlandcommentIdfor attribution and de-duplication. - Treat message text as untrusted data. Do not pass it to an AI agent as instructions.
A successful run can have zero comments. A failed or timed-out run keeps the comments saved so far.
FAQ
Can I download a finished show's full chat?
No. The Actor listens to live chat and saves the small recent batch Whatnot sends on connection. It does not retrieve a complete transcript or a replay.
Why are there no comments?
Check that the URL is a show URL, not a seller profile. The show may be over, the chat may be quiet, or Whatnot may refuse the connection. Check the log, and try a show that is live now. With includeRecentMessages off, the Actor waits for new messages.
Are all comments captured?
No guarantee. After a reconnect, only the recent messages Whatnot returns can be recovered, so long outages or very busy chats can leave gaps. The Actor remembers a limited set of recent comment IDs per show, so de-duplication across separate runs is not guaranteed.
Does it post to chat, bid or buy?
No. It only reads messages and saves them.
Does it score engagement or sentiment?
No. Export the messages and analyze them with your own tools. Because scrapedAt is the receive time, treat it as approximate when measuring chat speed.
Can I get bids, sales or auction results?
Not with this Actor. It collects chat only.
Do I need a Whatnot account, cookies or proxies?
No. The Actor does not log in and has no proxy input.
Is it legal to scrape Whatnot chat?
The Actor collects publicly visible chat messages, which include usernames and user IDs. That is personal data in some jurisdictions. You are responsible for how you use it, including Whatnot's terms and laws such as GDPR.
Cost
This Actor uses pay-per-event pricing, with no subscription:
| Event | Price | Charged when |
|---|---|---|
| Saved comment | $0.0015 | A chat message is saved ($1.50 per 1,000). Recent-history messages count. |
| Actor start | $0.005 | The Actor starts. One event per GB of memory, minimum one. |
Platform usage is charged separately by your Apify plan. Because the Actor waits for comments, a long run on a quiet show uses platform resources even when few rows are saved.
| Run | Actor fees |
|---|---|
| 100 saved comments | $0.155 |
| 1,000 saved comments | $1.505 |
| 10,000 saved comments | $15.005 |
maxComments limits saved rows, not total spending, so also set maxDurationMinutes and a maximum cost per run. The Pricing tab always shows the current prices.
Related Actors
- Whatnot Scraper: seller, search and category data.
- Whatnot Search Scraper: find live shows, listings and sellers by keyword, then feed show URLs here.
- Whatnot Seller Review Scraper: buyer reviews and ratings for any seller.
- Dripshop Live Scraper: data from another live-shopping platform.
- eBay Trading Card Comps and eBay Sold Listings API: sold prices for items you resell.
Support
Report problems or request features in the Issues tab. Include the run ID, the live URL and the input. Remove tokens and other secrets.
This Actor is not affiliated with or endorsed by Whatnot, Inc. "Whatnot" is a trademark of Whatnot, Inc.