TikTok Comments Scraper - Replies, Likes & Commenters

Eimantas V · @amethyst

Scrape TikTok comments and replies from video links or profiles: text, likes, reply counts, dates and commenter IDs. No login, no browser, flat monthly price.

About

TikTok Comments Scraper extracts comments and replies from TikTok videos: the comment text, likes, reply count, date, language, whether the creator liked or pinned it, mentions, hashtags, images, and the commenter's username, name and IDs. Paste video URLs, short links, video IDs or profiles, and get one row per comment. No login, no API key, no browser.

{
  "text": "no but seriously, where the hell have you been, loca?!?",
  "likeCount": 238445,
  "replyCount": 910,
  "createdAt": "2022-01-07T21:24:00.000Z",
  "authorUsername": "lionsgate",
  "authorVerified": true,
  "language": "en",
  "videoUrl": "https://www.tiktok.com/@billieeilish/video/7050551461734042926",
  "videoCommentCount": 196967
}

Measured: 100 comments from one video in 2.6 seconds; 20,371 comments and replies from 8 videos in under 3 minutes.

What does TikTok Comments Scraper do?

It reads TikTok's public comment lists the way TikTok's own web player does, one page of 50 comments at a time, and turns every comment into a clean row. Turn on replies and each comment's thread follows it, with the parent's ID on every reply, so whole conversations can be rebuilt from one flat table.

  • Every input you have. Video URLs (/video/ and /photo/ posts), vm.tiktok.com and vt.tiktok.com short links, bare video IDs, and profiles (@username or the profile URL) for comments on their latest videos.
  • Comments and replies. Up to the number you choose per video and per comment; replies carry parentCommentId, and a reply to a reply also names the reply it answers.
  • Creator signals. likedByCreator, pinned and isByCreator show which comments the creator engaged with or wrote.
  • Commenter identity. Username, display name, numeric user ID, secUid, profile link, avatar and verified badge on every row.
  • Clear errors, no duplicates. Videos that are deleted or private and profiles that do not exist return an error row instead of failing the run; duplicates and comments your date filter leaves out are skipped.
  • Built for automation. Run it on a schedule, call it from the API, or connect it to an AI agent through the Bytewells MCP server.

Why it is fast and cheap

There is no browser and no login. Each request is one small JSON call to TikTok's public comment endpoint that returns 50 comments, so 1,000 comments take about 20 requests and a few seconds. That is why a run needs so little compute. If TikTok rate-limits the run's own address, the request is repeated through the platform's datacenter proxy.

What data can you extract from TikTok comments?

FieldExampleWhat it is
textno but seriously, where the hell have you beenThe comment as written, with emoji
likeCount238445Likes on the comment
replyCount910Replies under it (null on replies)
createdAt2022-01-07T21:24:00.000ZWhen it was posted, ISO 8601 UTC
languageenThe language TikTok detected
authorUsername / authorNicknamelionsgate / LionsgateThe commenter's handle and display name
authorId / authorSecUid106956873395757056The commenter's stable TikTok IDs
authorProfileUrl / authorAvatarUrlhttps://www.tiktok.com/@lionsgateProfile link and picture
authorVerifiedtrueTikTok's verified badge
isReply / parentCommentId / replyToCommentIdtrue / 7050578069283963694Thread structure
position41Rank in TikTok's order of the video's comments
likedByCreator / pinned / isByCreatortrue / false / falseWhat the creator did with it
labels["Liked by creator"]Badges TikTok shows on the comment
mentions / mentionedUserIds / hashtags["@nasa"]Mentions with user IDs, and hashtags
imageUrls["https://p16-comment-sign..."]Images posted in the comment
videoId / videoUrl / videoAuthorUsername / videoCaption7050551461734042926The video the comment is on
videoCommentCount196967All comments TikTok counts on the video
inputhttps://www.tiktok.com/@billieeilish/video/7050551461734042926What you entered, so rows join back to your list

How to scrape TikTok comments

  1. Click Try for free and paste video URLs, short links, video IDs or profiles into Videos or profiles, one per line.
  2. Set Comments per video, and Replies per comment if you want threads. Max comments in total caps the whole run.
  3. Click Start. A video's top 100 comments take about 2 seconds.
  4. Read the results from the run's dataset as JSON.

How much does it cost to scrape TikTok comments?

One flat monthly rental, shown on this page, with a free trial. There is no per-comment fee: scrape as many comments as you need.

Runs use your credits for compute and any proxy traffic, as every Actor does. TikTok's comment API answers without a proxy, so compute is the whole cost. Measured on Bytewells: 100 comments in 8 seconds at 512 MB for $0.0002 of credits: well under $0.01 per 1,000 comments.

Input

{
    "targets": [
        "https://www.tiktok.com/@billieeilish/video/7050551461734042926",
        "https://vm.tiktok.com/ZMhvqjqjq/",
        "@nasa"
    ],
    "maxCommentsPerVideo": 100,
    "maxRepliesPerComment": 10,
    "videosPerProfile": 3,
    "maxItems": 5000
}
FieldDefaultNotes
Videos or profiles(example video)Video URLs, short links, video IDs, @username or profile URLs, one per line
Start URLsemptyThe same, in the URL-list shape other Actors output
Max comments in total1,000Comments and replies across the run
Comments per video100Top-level comments per video, top comments first
Replies per comment00 = no replies
Only comments posted afteremptyA date (2026-01-31) or a period ("7 days"); older comments are skipped
Videos per profile3Latest videos per profile, newest first (at most ~12)
Profile videos posted after / beforeemptyDate range for the videos picked from profiles
ProxyoffNot needed; turn on the platform's proxy only if a run reports BLOCKED

Output

Each comment or reply is one row. The Overview view shows the key columns; Threads shows the reply structure; Commenters lists who commented; every export includes all fields.

{
  "recordType": "comment",
  "input": "https://www.tiktok.com/@billieeilish/video/7050551461734042926",
  "commentId": "7050578069283963694",
  "text": "no but seriously, where the hell have you been, loca?!?",
  "likeCount": 238445,
  "replyCount": 910,
  "createdAt": "2022-01-07T21:24:00.000Z",
  "authorUsername": "lionsgate",
  "authorNickname": "Lionsgate",
  "authorId": "106956873395757056",
  "authorSecUid": "MS4wLjABAAAAw08PMPDgEvNH0P4Sncmei7N46SQY9ZqUP7kVxFJXoyWNcpC-peauxtjk0dfYQcfd",
  "authorProfileUrl": "https://www.tiktok.com/@lionsgate",
  "authorAvatarUrl": "https://p19-common-sign.tiktokcdn-us.com/tos-maliva-avt-0068/7311142789058674693~tplv-tiktokx-cropcenter:100:100.jpg",
  "authorVerified": true,
  "isReply": false,
  "parentCommentId": null,
  "replyToCommentId": null,
  "position": 41,
  "language": "en",
  "likedByCreator": false,
  "pinned": false,
  "isByCreator": false,
  "labels": [],
  "mentions": [],
  "mentionedUserIds": [],
  "hashtags": [],
  "imageUrls": [],
  "videoId": "7050551461734042926",
  "videoUrl": "https://www.tiktok.com/@billieeilish/video/7050551461734042926",
  "videoAuthorUsername": "billieeilish",
  "videoCaption": "can’t be good at everything",
  "videoCommentCount": 196967,
  "scrapedAt": "2026-10-29T06:30:56.593Z"
}

A video or profile that cannot be read becomes a row with "recordType": "error" and an errorCode instead of failing the whole run:

errorCodeMeaning
NOT_FOUNDThe video was deleted, is private, has comments turned off, or the link is wrong; or the profile does not exist
NO_VIDEOSThe profile has no public videos, or none in your date range
BLOCKED / RATE_LIMITEDTikTok refused the request; run again later, or enable the proxy

Tips and limits

  • About 400 comments per video. TikTok shows logged-out visitors roughly the top 330-470 comments of a video, however many it has. The Actor returns all of those, and the log says how many videos had more. Replies are not affected: a popular comment's thread pages normally.
  • Profiles give their latest ~12 videos. A profile's public video list is short; for older videos, paste their URLs.
  • Comment order is TikTok's. Comments come top-first, the way TikTok ranks them, not by date. "Only comments posted after" still reads every page of a video, so use it to keep only fresh comments, not to save time.
  • Need commenter bios, followers or emails? Feed this dataset's authorUsername column into TikTok Creator & Profile Scraper.

FAQ

Is it legal to scrape TikTok comments?

This Actor collects only data that TikTok shows publicly, without logging in. Comments and usernames are personal data, which laws such as the GDPR protect. Scrape personal data only for a legitimate purpose, and ask a lawyer if you are unsure. TikTok is a trademark of its owner; this Actor is not affiliated with or endorsed by TikTok.

Can I use it through the API?

Yes. Every run can be started through the API and its dataset read as JSON. Runs can also be scheduled and can trigger webhooks.

Can AI agents use it?

Yes. Agents connected to the Bytewells MCP server can find and run this Actor as a tool.

Why did I get fewer comments than I asked for?

The video has fewer comments than your limit, TikTok stopped showing comments (about 400 per video for logged-out visitors), or TikTok hides some comments it filters. The log says which, and nothing collected before that is lost.

Can I monitor new comments on my videos?

Yes. Schedule a run with "Only comments posted after" set to "1 day" (or the gap between runs), and deduplicate on commentId.

Related scrapers

Support

Missing a field, or found a video that does not work? Report it with the input you used, and it will be looked at quickly.

FAQ

Do I need a TikTok account, login or API key?
No. It reads the comments TikTok shows to visitors who are not logged in, with no cookies, no browser and no proxy. Nothing is logged in, so no account can be banned.
How much does it cost to scrape TikTok comments?
One flat monthly rental, shown on this page, with a free trial and no per-comment fee. Runs use your Bytewells credits for compute only, because TikTok's comment API needs no proxy. Measured on Bytewells: 100 comments in 8 seconds for $0.0002, well under $0.01 per 1,000 comments.
How many comments can I get per video?
About 400. TikTok shows logged-out visitors roughly the top 330-470 comments of a video, however many it has, and the Actor returns all of them. Reply threads are not capped this way. The log says which videos had more comments than TikTok showed.
Can I scrape the comments of a whole profile?
Yes. A profile link gives the comments of its latest videos, about 12, which is what TikTok lists publicly. For older videos, paste their URLs.
Can I monitor new comments on my videos?
Yes. Schedule a run with "Only comments posted after" set to 1 day (or the gap between your runs) and deduplicate on commentId. Comments come in TikTok's ranking order, not by date.
Can I use it through the API or from AI agents?
Yes. Start runs through the Bytewells API (bytewells.com/docs/api), schedule them and read the dataset as JSON; webhooks work too. The API is Apify-compatible, so apify-client works with the Bytewells base URL. AI agents can run it as a tool through the Bytewells MCP server (bytewells.com/docs/mcp).
Is it legal to scrape TikTok comments?
It collects only data TikTok shows publicly, without logging in. Comments and usernames are personal data under laws such as the GDPR, so scrape them only for a legitimate purpose and ask a lawyer if you are unsure. This Actor is not affiliated with or endorsed by TikTok.

More Actors from the same publisher.

View all from @amethyst