TikTok Comment Insights ๐ŸŽต Themes, Questions & Buyers avatar

TikTok Comment Insights ๐ŸŽต Themes, Questions & Buyers

Pricing

from $0.90 / 1,000 results

Go to Apify Store
TikTok Comment Insights ๐ŸŽต Themes, Questions & Buyers

TikTok Comment Insights ๐ŸŽต Themes, Questions & Buyers

Turn a TikTok comment thread into answers. Top terms and phrases, buyer-intent questions, unanswered questions ranked by likes, and the commenters carrying the thread โ€” plus every comment as a row. Paste video URLs. No login, no API key.

Pricing

from $0.90 / 1,000 results

Rating

0.0

(0)

Developer

GatherWorks

GatherWorks

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Stop exporting comments and reading them. Get the themes, the questions people actually asked, the ones showing buying intent, and who is carrying the thread. Every comment the analysis was built from comes back with it, at no extra cost.

No account, no cookies, no API key. Paste video links and run.


๐Ÿ” What is the TikTok Comment Insights scraper?

Paste TikTok video URLs. You get one row per video carrying the analysis, with that video's comments nested underneath it:

  • ๐Ÿท๏ธ the terms and two-word phrases people repeat
  • โ“ how many comments are questions, and the top ones by likes
  • ๐Ÿ’ฐ comments showing buying intent โ€” price, link, shipping, "where can I get"
  • ๐Ÿ‘ฅ the commenters carrying the thread
  • ๐Ÿ“Š how many unique people are talking, and how engagement sits across comments

โšก What can it do?

  • ๐Ÿ“ฆ Analyse many videos at once and compare threads side by side.
  • โ“ Surface the questions being asked, ranked by likes โ€” the ones worth replying to.
  • ๐Ÿ’ฐ Find buying intent without reading a thousand comments.
  • ๐Ÿ”ข Cut noise by analysing only comments above a like threshold.
  • ๐Ÿ“„ Read the raw comments in the same dataset โ€” every one the counts were taken over, included.
  • ๐ŸŒ Handle other languages โ€” terms and phrases are counted as written.
  • ๐Ÿ“„ Export anywhere. JSON, CSV, Excel โ€” the dataset is yours.

๐ŸŽฏ The summary is the product

Every other way of getting this hands you a spreadsheet of comments and leaves the reading to you. A thousand-comment thread is a day's work to skim and nobody does it twice. Here the thread arrives already counted: what is repeated, what is asked, what looks like a customer โ€” with the highest-liked questions and buying signals quoted in the row itself, and the whole analysed thread there as rows alongside it.

โšก Speed and accuracy

Speed. Measured on a real run: 40 comments analysed and summarised in 9 seconds.

Accuracy. Comments are de-duplicated by ID, so the same comment is never counted twice. Counts are numbers, not display text. Question and buying-intent detection is keyword and punctuation based, so it is reproducible: a question mark counts in any language, and the keyword lists themselves are English. The top five matches of each kind are quoted in the summary row, and every analysed comment comes back with it so you can re-derive any count yourself. Common filler words are excluded from term counts, and terms appearing only once are left out.

๐Ÿšซ This is counting, not sentiment analysis

There is no model here guessing at mood. Everything reported is a count over the text of the comments. That means the numbers are reproducible and checkable โ€” the top-ranked questions and buying signals come back quoted in the summary row, and every comment the counts were taken over comes back too โ€” and it means this will not tell you whether a thread is happy, only what it says.

๐Ÿ“Š What data does it return?

The dataset has two ready-made tables, switched with the view selector above the results. Video insights gives one row per video โ€” that is what a default run fills. Comments unwinds the nested comments array back into one row per comment. Export either as JSON, CSV or Excel.

Video insights โ€” one row per video you asked for, on every run:

FieldNotes
๐Ÿ”— videoUrl, videoCaptionWhich video
๐Ÿท๏ธ videoAuthorHandle, videoAuthorNameWho posted it
๐Ÿ“Š videoLikesCount, videoCommentsCount, videoViewsCountThe video's own numbers
๐Ÿ”ข commentsAnalysed, uniqueCommentersSize of the thread analysed
โ“ questionCount, questionSharePctHow much of the thread is asking something
๐Ÿ’ฐ purchaseIntentCount, purchaseIntentSharePctComments about price, links or buying
๐Ÿท๏ธ topTerms, topPhrasesWhat people repeat, with counts
๐Ÿ‘ฅ topCommentersWho posts most in the thread
โ“ topQuestionsThe five highest-liked questions, with their like counts
๐Ÿ’ฐ topPurchaseIntentThe five highest-liked buying-intent comments
๐Ÿ“Š totalCommentLikes, medianCommentLikesEngagement across the thread โ€” the total, and the middle comment's like count
โš ๏ธ errorWhy a URL returned nothing, where one did

Comments โ€” one row per comment, each carrying the video it came from:

FieldNotes
๐Ÿ”— videoUrl, videoAuthorHandleThe video and who posted it
๐Ÿ’ฌ commentTextThe comment
๐Ÿ“Š likesCount, repliesCountEngagement on it โ€” including how many replies it drew
๐Ÿท๏ธ authorHandle, authorDisplayNameWho wrote the comment
๐Ÿ“… publishedAtWhen, ISO 8601

๐Ÿšง A narrow like filter stops rather than running away. Set one and the filter may skip at most maxScanned comments per video before the Actor stops and returns what it found, saying so in the log. Comments your filter removes are never stored and never billed.

๐Ÿšซ What it does not return

  • Sentiment or emotion scores. See above โ€” this counts, it does not judge.
  • Whether a question was answered. Questions are ranked by likes, not by whether anybody replied to them.
  • Word-splitting for scripts written without spaces. Term and phrase counts split on whitespace, and the filler-word list is English.
  • Comments on private or deleted videos.
  • Translations. Text comes back in the language it was written in.
  • Replies to comments. The thread comes back as top-level comments. repliesCount tells you how many replies a comment drew; the replies themselves are not returned, and are not billed for.

๐Ÿ’ฐ How much does it cost?

You pay per event, for what the run actually produces โ€” never for runtime, and never on a subscription.

Standard rate: ๐Ÿ’ต $0.0015 per comment analysed. That is the only charge โ€” the summary built from those comments, and the comment rows themselves, are included:

RunCost
๐ŸŸฉ 5 videos ร— 200 comments (1,000 comments)๐Ÿ’ต $1.50
๐ŸŸจ 25 videos ร— 200 comments (5,000 comments)๐Ÿ’ต $7.50
๐ŸŸง 10 videos ร— 1,000 comments (10,000 comments)๐Ÿ’ต $15.00

You set the number of comments per video, so you set the bill before you run.

A video with no comments is free. So is one that cannot be analysed, and so is a comment your like filter removes. A month you do not run it costs nothing at all โ€” there is no plan to keep alive.

What you get for that

Included here
๐Ÿท๏ธ Repeated terms and phrases, countedโœ…
โ“ Questions surfaced and ranked by likesโœ…
๐Ÿ’ฐ Buying-intent comments identifiedโœ…
๐Ÿ‘ฅ Top commentersโœ…
๐Ÿ“„ Every raw comment the counts were taken overโœ… free
๐Ÿ“Š The whole summary on top of the commentsโœ… free
๐Ÿ’ณ Minimum spendnone

๐Ÿš€ How do I use it?

  1. Paste one or more TikTok video URLs.
  2. Set comments to analyse โ€” 200 is enough for steady themes.
  3. Optionally set a minimum comment likes to cut noise on huge threads.
  4. Leave ๐Ÿ“„ Also return every comment as a row on to get the thread as rows as well, or switch it off for a smaller dataset at the same price.
  5. Run and read the Video insights table. Comments holds one row per comment.

โš™๏ธ Input

FieldNotes
๐Ÿ”— videoUrlsTikTok video URLs or bare video IDs
๐Ÿ”ข maxCommentsPerVideoHow many comments each summary is built from, and what you are billed on. Default 200
๐Ÿ“„ includeCommentRowsAlso return every analysed comment as a row. On by default โ€” switching it off does not change the price
๐Ÿ”ข minLikesAnalyse only comments above this like count. No default โ€” off unless set
๐Ÿšง maxScannedHow many comments a like filter may skip before stopping. Default 400
{
"videoUrls": [
"https://www.tiktok.com/@tiktok/video/7106594312292453675"
],
"maxCommentsPerVideo": 200,
"includeCommentRows": true
}

๐Ÿ“„ Output example

One real row, captured from a live run over a 40-comment thread. The comments array it carries is shown separately below.

{
"videoUrl": "https://www.tiktok.com/@khaby.lame/video/7670957230178503966",
"videoAuthorHandle": "khaby.lame",
"videoAuthorName": "Khabane lame",
"commentsAnalysed": 40,
"uniqueCommenters": 40,
"questionCount": 3,
"questionSharePct": 7.5,
"purchaseIntentCount": 0,
"purchaseIntentSharePct": 0,
"topTerms": [{ "term": "sticker", "count": 14 }, { "term": "bro", "count": 4 }, { "term": "lame", "count": 3 }],
"topPhrases": [{ "term": "mamรก venciรณ", "count": 2 }, { "term": "venciรณ cรกncer", "count": 2 }],
"topQuestions": [{ "text": "Turkmen bamy?", "likesCount": 1337 }, { "text": "Azษ™rbaycanlฤฑ var?", "likesCount": 296 }],
"topPurchaseIntent": [],
"topCommenters": [{ "handle": "toyotausa", "count": 1 }],
"totalCommentLikes": 625911,
"medianCommentLikes": 1738,
"comments": [],
"error": null
}

The same row carries the thread, which the Comments table unwinds into one row each:

"comments": [
{
"commentText": "phew, we were waiting for you ๐Ÿ˜ฎโ€๐Ÿ’จ",
"authorHandle": "toyotausa",
"authorDisplayName": "Toyota USA",
"likesCount": 75250,
"repliesCount": 123,
"publishedAt": "2026-08-07T15:16:23.000Z"
}
]

โ“ Frequently asked questions

Do I need a TikTok account? No. No account, no cookies, no API key.

Is this sentiment analysis? No. Every figure is a count over the comment text, and the comments each count was taken over come back with it.

How is buying intent detected? By looking for the things buyers actually write โ€” price, cost, link, discount, shipping, in stock, "where can I buy". The five highest-liked matches are quoted in the summary row, so you can see what was caught.

Does it work in other languages? Yes for terms and phrases, which are counted as written. Languages written without spaces between words will not split into terms, and the question and buying-intent keyword lists are English โ€” though a question mark is counted whatever the language.

Can I get the raw comments too? Yes, and they cost nothing extra โ€” every comment the analysis was built from is returned by default. Switching them off makes the dataset smaller, not cheaper.

What am I actually charged for? Comments analysed, and nothing else. Set comments to analyse per video and you know the bill before you run.

๐Ÿท๏ธ Pricing

Pay per event โ€” you are charged for output, not for platform time.

EventPriceCovers
๐Ÿ’ฌ result โ€” primary๐Ÿ’ต $0.0015One comment analysed. The only charge this Actor makes
โ–ถ๏ธ apify-actor-start๐Ÿ’ต $0.00005Starting one run, charged once per GB of memory
๐Ÿ“Š The whole summary โ€” every count, median and signalโœ… freeOn every video row
๐Ÿ“„ Every analysed comment as a rowโœ… freeIncluded, not an add-on
๐Ÿ”Ž Filteringโœ… freeComments your filter removes are not charged for
โŒ Videos that cannot be analysedโœ… freeReported, never charged

One event, one rate. You are charged per comment analysed and for nothing else โ€” the price on the card is the price of the run.

๐Ÿ… Rates by tier

The prices above are the standard rate. Higher Apify plans are billed at the discounted tiers below, automatically:

EventFREEBRONZESILVERGOLD
๐Ÿ’ฌ result๐Ÿ’ต $0.0015๐Ÿ’ต $0.0013๐Ÿ’ต $0.0011๐Ÿ’ต $0.0009
โ–ถ๏ธ apify-actor-start๐Ÿ’ต $0.00005๐Ÿ’ต $0.00005๐Ÿ’ต $0.00005๐Ÿ’ต $0.00005

๐Ÿ›‘ You are never billed past your limit

Set a maximum charge on the run and the Actor stops when it reaches it, with every video summarised up to that point complete and saved. Comments your filter removes are never billed, and neither is a video that returns nothing.