TikTok Comments Scraper
Pricing
from $1.00 / 1,000 comments
TikTok Comments Scraper
Scrape the comments and replies of public TikTok posts - text, authors, likes, and timestamps.
Pricing
from $1.00 / 1,000 comments
Rating
0.0
(0)
Developer
Harpoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape the comments and replies of any public TikTok post - text, authors, likes, and timestamps - as one clean dataset. Paste post URLs, press Start, and export JSON/CSV/Excel.
What can this Actor do?
- All comments on a post - top-level comments paginated up to your
max_commentscap. - Replies included (optional) - fetch each comment's replies too; they are fetched in parallel and capped per comment so runs stay fast.
- Author details - username, nickname, id, and avatar for every commenter.
- Engagement signal - likes per comment, plus the comment's own reply count.
- Reply threading - replies carry
is_reply: trueand theirparent_comment_id, so you can rebuild threads. - Deduplicated - a comment never appears twice, even across pages.
Why use this Actor?
- No code required - the input form is prefilled with a working example; press Start and it runs as-is.
- Fast replies - replies are fetched concurrently (configurable), not one-by-one.
- Reliable at scale - rotating proxy pool, request hedging, and automatic retries handle TikTok's variability.
- Clean schema - a single flat row per comment, ready for your warehouse, sheet, or dashboard.
- Pay per result - you only pay for the comments that actually land in the dataset.
How to use it
- Open the Input tab.
- Paste one or more post URLs into Posts.
- Set Max comments per post (default
100). - Leave Include replies on to also capture replies, and set Max replies per comment (default
20). - Press Start and download your data from the Output tab.
{"posts": ["https://www.tiktok.com/@mahmoudridaabbas/video/7510595766524710149"],"max_comments": 100,"include_replies": true,"max_replies_per_comment": 20}
Accepted post references: https://www.tiktok.com/@user/video/<id>, /photo/<id>, or a bare numeric post id.
Output
One dataset row per comment (and per reply):
{"id": "7679295720671396616","post_id": "7510595766524710149","post_url": "https://www.tiktok.com/video/7510595766524710149","text": "free palestina❤🩹","created_at": 1787975380,"like_count": 141,"reply_count": 2,"is_reply": false,"parent_comment_id": "","author_id": "7614149955695461394","author_username": "fladosinagaa331","author_nickname": "tipis tipis 🜲","author_avatar_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-alisg-avt-0068/a66dd4701510d688a34ef0cb5...","language": "en","scraped_at": "2026-09-18T14:07:26Z"}
A reply to that comment looks like:
{"id": "7679295720671396620","post_id": "7510595766524710149","post_url": "https://www.tiktok.com/video/7510595766524710149","text": "@fladosinagaa331 ❤🩹","created_at": 1787975450,"like_count": 3,"reply_count": 0,"is_reply": true,"parent_comment_id": "7679295720671396616","author_id": "7614149955695461394","author_username": "fladosinagaa331","author_nickname": "tipis tipis 🜲","author_avatar_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-alisg-avt-0068/a66dd4701510d688a34ef0cb5...","language": "en","scraped_at": "2026-09-18T14:07:26Z"}
| Field | Description |
|---|---|
id | Comment id |
post_id | Numeric id of the post |
post_url | Canonical post URL |
text | Comment text |
created_at | Unix creation timestamp |
like_count | Likes on the comment |
reply_count | Number of replies the comment has |
is_reply | true for replies, false for top-level comments |
parent_comment_id | The top-level comment a reply belongs to (empty for top-level) |
author_id / author_username / author_nickname / author_avatar_url | Commenter identity |
language | Detected comment language |
scraped_at | When the row was collected (ISO 8601) |
Pricing
This Actor is billed per 1,000 results (one result = one comment or reply). See the Pricing tab for the current rate. A run that returns no comments is not charged.
FAQ
Do I need cookies or a login? No. Public posts only - no TikTok account required. The Actor uses a managed signature service and rotating residential proxies under the hood.
Do replies count toward max_comments? No. max_comments caps top-level comments; replies are additional rows bounded by max_replies_per_comment.
How do I turn replies off? Clear Include replies in the input. Top-level comments are always fetched.
Can I run several posts at once? Yes. Add one post URL per line; they are fetched in parallel.
Limitations
- Only public posts.
- Comments TikTok hides or filters are not returned.
- Very large threads take longer; raise
max_replies_per_commentorTT_REPLY_CONCURRENCY(PROXY_*/secrets) to tune speed versus depth. - Result order follows TikTok's own comment ranking.
Integrate with your stack
Export the dataset as JSON, CSV, Excel, or XML, or pull it from the Apify API. You can also run this Actor from the Apify MCP server so AI agents can call it directly.