TikTok Comments Scraper - Comments & Replies from Any Video
Pricing
from $0.28 / 1,000 comments
TikTok Comments Scraper - Comments & Replies from Any Video
Paste TikTok video links, get every comment and reply as clean rows: text, likes, reply threads, author, language, pinned and creator-liked flags, mentions, hashtags, tagged shop products and image comments. No login, no proxy, no cookies.
Pricing
from $0.28 / 1,000 comments
Rating
0.0
(0)
Developer
Nada Hanad
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Share
Paste TikTok video links and get every comment as a clean row: the text, likes, when it was posted, who wrote it, the language, whether the creator pinned or liked it, and, if you want them, the full reply threads. $0.40 per 1,000 comments. No login, no cookies, no proxy.
What data you get
Per comment or reply:
text,likes,replyCount,createdAt, and TikTok's detectedlanguage- Reply threads: every reply is its own row with
parentCommentId, so a flat CSV still rebuilds the conversation - Creator signals:
pinnedByAuthorandlikedByAuthor, the comments the creator chose to pin or like - Commerce signals:
taggedProducts(TikTok Shop products tagged in the comment) andpurchaseIntent, TikTok's own flag for a comment that reads like someone wanting to buy mentions,hashtags, andimageUrlsfor comments posted as pictures- Author:
authorUsername,authorNickname,authorId,authorProfileUrl,authorAvatarUrl - The video:
videoId,videoUrl, and the comment count TikTok shows for it
Every row has the same columns, so exports to CSV, Excel or Google Sheets stay tidy.
How to use
- Paste video links into TikTok video links, one per line. Share links (
vm.tiktok.com/...,tiktok.com/t/...), photo posts and bare video ids work too. - Choose how many comments per video, and whether to include replies.
- Run it, then download the rows as JSON, CSV or Excel, or pull them through the API.
Input
| Field | Type | Default | Description |
|---|---|---|---|
urls | array | — | TikTok video links or ids. Also accepts postURLs, videoUrls, url and startUrls. |
maxCommentsPerVideo | integer | 100 | Top-level comments per video. 0 means all of them. |
includeReplies | boolean | false | Also collect replies, each as its own row. |
maxRepliesPerComment | integer | 20 | Replies per comment when replies are on. 0 means all. |
includeRaw | boolean | false | Add TikTok's untouched comment object as raw. |
maxConcurrency | integer | 3 | Videos worked on in parallel. |
timeoutSecs | integer | 30 | Per-request timeout. Slow requests are retried. |
proxyConfiguration | object | off | Not needed. Available for very large volumes. |
Output example
One row from a real run, with the commenter's identity replaced by placeholders:
{"ok": true,"commentId": "7680437555809010439","videoId": "7680396878776700174","videoUrl": "https://www.tiktok.com/@seansvv/video/7680396878776700174","text": "whatever, they never tell us what rule we're breaking anyways","createdAt": "2026-09-01T05:40:35.000Z","likes": 519,"replyCount": 6,"isReply": false,"parentCommentId": null,"replyToCommentId": null,"language": "en","pinnedByAuthor": false,"likedByAuthor": true,"purchaseIntent": false,"mentions": [],"hashtags": [],"taggedProducts": [],"imageUrls": [],"authorUsername": "example_user","authorNickname": "Example User","authorId": "6820000000000000000","authorSecUid": "MS4wLjABAAAA...","authorProfileUrl": "https://www.tiktok.com/@example_user","authorAvatarUrl": "https://p16-common-sign.tiktokcdn-eu.com/...","videoCommentCount": 1215,"inputUrl": "https://www.tiktok.com/@seansvv/video/7680396878776700174","scrapedAt": "2026-09-19T13:52:56.157Z"}
A video that cannot be read comes back as one row with ok: false and a plain reason, such as
video not found or not public or the creator has turned comments off for this video. Those rows are free.
Pricing
- $0.0004 per comment or reply, which is $0.40 per 1,000. The 50 comments in the example input cost two cents.
- You pay only for comments written to your dataset. Videos that fail, links that are not TikTok videos, and duplicates are never charged (see the FAQ).
- Set a maximum cost on the run and it stops cleanly when it gets there.
Paid Apify plans pay less: 10% off on Bronze, 20% on Silver and 30% on Gold and higher tiers.
Use cases
- Brand and campaign monitoring: what people say under your videos, your competitors' and your creators'.
- Influencer vetting: whether an audience is real people talking or bots, and whether the creator engages.
- Product research for TikTok Shop: comments with tagged products and purchase intent show demand in the audience's own words.
- Sentiment and topic analysis: clean text with a language code, ready for an LLM or a classifier.
- Giveaways and contests: every entry in the comments, with timestamps and profile links.
- Community management: find the questions under a viral video that still have no reply.
Integrations
curl -X POST "https://api.apify.com/v2/acts/clearfetch~tiktok-comments-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"urls": ["https://www.tiktok.com/@tiktok/video/7106594312292453675"], "maxCommentsPerVideo": 200}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("clearfetch/tiktok-comments-scraper").call(run_input={"urls": ["https://www.tiktok.com/@tiktok/video/7106594312292453675"], "includeReplies": True})for c in client.dataset(run["defaultDatasetId"]).iterate_items():if c["ok"]:print(c["likes"], c["authorUsername"], c["text"][:80])
Works with the Apify integrations for n8n, Make, Zapier, Google Sheets, Slack and webhooks, with scheduled runs, and with AI agents through the Apify MCP server.
FAQ
Why do I get fewer comments than TikTok shows? The number under a video counts replies too, and it includes comments TikTok hides from everyone: filtered, deleted, or restricted. On a video showing 1,215, this Actor collected 673 comments and 310 replies, which is everything TikTok would serve.
What does "duplicates are never charged" mean? TikTok's comment pages overlap: its ranking shifts while you page through, so the same comment can come back again later. On that same video, 109 of the first 782 comments TikTok returned were repeats. This Actor drops them before they reach your dataset, so you do not pay for them.
Do I need a proxy? No. TikTok serves comments to Apify's own servers. The proxy option is there for very large volumes, if you start seeing rate-limit errors.
Can it find videos by hashtag, keyword or profile? No. It takes video links. If you already have a list of videos from another tool or a spreadsheet, paste it in.
Do image links keep working? For a few weeks. TikTok signs comment image links with an expiry date, so download the images you need to keep.
Is this legal? It reads public comments that anyone can see without an account, and it does not log in or use cookies. Comments contain usernames, which are personal data under laws such as the GDPR, so you are responsible for having a lawful reason to process them and for storing them appropriately.
More tools from clearfetch
- TikTok Scraper: hashtags, profiles, sounds and video stats in one Actor
- TikTok Profile Scraper: followers, likes and the latest videos of any account
- TikTok Video Scraper: full stats for any video link
- Google Trends Scraper: interest over time, by region and related queries, plus today's trending searches
Changelog
- 1.0.0 (2026-09) — first release: comments and replies by video link or id, share-link resolution, reply threading, creator pin and like flags, tagged products, purchase intent, image comments, duplicate removal, plain-language reasons for videos that cannot be read.