Tiktok Comments Scraper avatar

Tiktok Comments Scraper

Pricing

from $0.40 / 1,000 comments scrapeds

Go to Apify Store
Tiktok Comments Scraper

Tiktok Comments Scraper

Fast, accurate TikTok comments scraper. Extract verified comments, likes, user profiles, and permalinks with Pay-Per-Event pricing from $0.80/1k (as low as $0.64/1k). Includes free smart anti-ban proxies ($0 bandwidth fees), keyword filters, and bulk URLs. Export clean data to JSON, CSV, or Excel.

Pricing

from $0.40 / 1,000 comments scrapeds

Rating

5.0

(2)

Developer

CodeScraper

CodeScraper

Maintained by Community

Actor stats

2

Bookmarked

113

Total users

4

Monthly active users

6 days ago

Last modified

Share

๐ŸŽต TikTok Comments Scraper โ€“ Enterprise Pay-Per-Event Extractor

Extract 100% verified, structured top-level comments and community engagement data from any public TikTok video.

Built with Crawlee and Playwright, this actor harnesses TikTok's official web endpoints to collect comments with automated pagination, smart anti-ban proxy rotation, and dynamic session management.

Pay only for the data you extract with transparent Pay Per Event pricing ($0.80 per 1,000 comments total). Compute, memory, and proxy bandwidth are 100% FREE.


๐Ÿ’ฐ Pricing & Tier Discounts

This Actor uses the transparent Pay Per Event pricing model with automatic discounts for Apify subscription tiers. Platform compute, memory, and proxy bandwidth are 100% FREEโ€”you only pay for the verified comments successfully extracted:

Pricing MetricEvent IdentifierFree (No discount)Starter (Bronze 5%)Scale (Silver 10%)Business (Gold 20%)Description
Comments Scrapedcomment-scraped$0.000500 ($0.50/1k)$0.000475 ($0.475/1k)$0.000450 ($0.45/1k)$0.000400 ($0.40/1k)Verified TikTok comment extracted
Dataset Resultapify-default-dataset-item$0.000300 ($0.30/1k)$0.000285 ($0.285/1k)$0.000270 ($0.27/1k)$0.000240 ($0.24/1k)Output record written to dataset
Total Per CommentCombined / Comment$0.000800$0.000760$0.000720$0.000640Total effective cost per comment
Total Per 1,000 CommentsCombined / 1,000$0.80 / 1k$0.76 / 1k$0.72 / 1k$0.64 / 1kBest rate on Apify Store
Actor Startapify-actor-start$0.0005$0.0005$0.0005$0.0005Flat startup fee per run (covers init)
Platform Bandwidthโ€”Free ($0.00)Free ($0.00)Free ($0.00)Free ($0.00)Smart proxy traffic is included

No comment charges for video URLs that return zero comments or fail.

๐Ÿ’ต Real-World Cost Examples by Plan:

ScenarioComments ScrapedReal Run TimeFree Plan (Base)Starter (Bronze)Business (Gold)
Quick Video Sample50 comments~15 sec~$0.04~$0.038~$0.032
Standard Video Run100 comments~25 sec~$0.08~$0.076~$0.064
Viral Video Deep Dive500 comments~1 min~$0.40~$0.38~$0.32
Creator Batch (5 videos, 200 each)1,000 comments~2-3 min~$0.80~$0.76~$0.64
Brand Listening (10 videos, 500 each)5,000 comments~6-8 min~$4.00~$3.80~$3.20
Enterprise Audit (20 videos, 1,000 each)20,000 comments~18-22 min~$16.00~$15.20~$12.80

๐Ÿš€ Key Features

  • โšก Pay-Per-Event Pricing: Only pay $0.0008 per extracted comment ($0.80 / 1,000 comments). No monthly subscription lock-in.
  • ๐ŸŽฏ 100% Non-Null Structured Data: Every output record guarantees non-null fields with clean default fallbacks.
  • ๐Ÿ”— Direct Comment Permalinks: Generates exact direct links (commentUrl) jumpable straight to each comment on TikTok.
  • ๐Ÿ›ก๏ธ Built-in Smart Proxies: Automatically routes traffic through high-speed proxies with automated rotation and $0.00 bandwidth fees.
  • ๐Ÿ” Advanced Filtering:
    • Filter by keyword or phrase (case-insensitive)
    • Minimum like threshold (minLikes) for isolating top viral comments
    • Language detection filter (languageFilter)
  • ๐Ÿ”„ Auto-Session Refresh: Automatically reloads session cookies every 100 requests to sustain long-running bulk scraping without session drops.
  • ๐Ÿ“ฑ Universal Link Support: Handles desktop URLs (tiktok.com/@user/video/...), mobile URLs (m.tiktok.com/v/...), and short redirected links (vm.tiktok.com/..., vt.tiktok.com/...).

๐Ÿ“‹ Scraped Data Fields

Every comment extracted includes:

FieldTypeDescription
idStringUnique comment ID (cid)
awemeIdStringTikTok Video ID (aweme_id)
commentUrlStringDirect permalink to the specific comment on TikTok
videoUrlStringClean, canonical URL of the TikTok video
createdAtStringISO 8601 formatted timestamp of the comment
textStringFull comment text content
likeCountIntegerTotal number of likes (digg_count)
replyCountIntegerTotal number of replies to this comment
commentLanguageStringTwo-letter ISO language code (e.g. en, es, fr)
isAuthorLikedBooleantrue if video author liked this comment
isPinnedBooleantrue if comment is pinned by video creator
user.idStringAuthor's TikTok User ID (uid)
user.usernameStringAuthor's handle (unique_id)
user.displayNameStringAuthor's profile nickname
user.secUidStringPermanent TikTok Security UID
user.urlStringDirect profile URL (https://www.tiktok.com/@username)
user.avatarUrlStringProfile avatar image link

โš™๏ธ Input Configuration

ParameterTypeRequiredDefaultDescription
videoUrlsArrayYes[...]List of TikTok video URLs to scrape. Supports desktop, mobile, and short links.
maxCommentsPerVideoNumberNo100Maximum comments to scrape per video. Set to 0 for unlimited comments.
searchKeywordStringNo""Case-insensitive keyword filter. Only comments containing this phrase are saved and charged.
minLikesNumberNo0Minimum number of likes required. Filters out zero-engagement comments.
languageFilterStringNo"all"Filter comments by language code (e.g. en, es, fr, de, ar, ja, etc.).

๐Ÿงฉ Example Input

{
"videoUrls": [
"https://www.tiktok.com/@billieeilish/video/7050551461734042926"
],
"maxCommentsPerVideo": 100,
"searchKeyword": "song",
"minLikes": 5,
"languageFilter": "en"
}

๐Ÿ“Š Example Output

{
"id": "7132239819939980037",
"awemeId": "7050551461734042926",
"commentUrl": "https://www.tiktok.com/@musiclover101/video/7050551461734042926?commentId=7132239819939980037",
"videoUrl": "https://www.tiktok.com/@billieeilish/video/7050551461734042926",
"createdAt": "2024-01-25T12:30:12.000Z",
"text": "This song is insane ๐Ÿ”ฅ๐Ÿ”ฅ",
"likeCount": 1423,
"replyCount": 12,
"commentLanguage": "en",
"isAuthorLiked": true,
"isPinned": false,
"user": {
"id": "6837712345678123458",
"username": "musiclover101",
"displayName": "Music Lover",
"secUid": "MS4wLjABAAAA...",
"url": "https://www.tiktok.com/@musiclover101",
"avatarUrl": "https://p16-sign.tiktokcdn-us.com/avatar.jpeg"
}
}

๐Ÿ’ก Practical Use Cases

  • Sentiment Analysis & NLP: Gauge audience response to brand campaigns, product announcements, and creator collaborations.
  • Influencer Engagement Audits: Quantify authentic audience interactions, creator-to-fan replies, and sentiment trends.
  • Market Research & Trend Discovery: Spot viral catchphrases, customer feedback, and common questions directly from community discussions.
  • Competitor Intelligence: Extract and benchmark customer sentiment across competitor viral videos.

โ“ Frequently Asked Questions

How does Pay-Per-Event billing work?

You are charged $0.0008 per comment ($0.80 per 1,000 comments) successfully saved to the dataset ($0.0005 for comment extraction + $0.0003 for dataset storage). A flat $0.0005 startup fee applies per run to cover browser initialization.

Are there discounts for Apify subscription tiers?

Yes! Discounts apply automatically depending on your Apify plan:

  • Free Plan: $0.80 / 1,000 comments
  • Starter (Bronze 5% off): $0.76 / 1,000 comments
  • Scale (Silver 10% off): $0.72 / 1,000 comments
  • Business (Gold 20% off): $0.64 / 1,000 comments

Are proxies included? Is there any proxy bandwidth fee?

Yes, proxies are 100% included. The actor automatically connects through high-speed proxies with automated rotation. Proxy bandwidth is completely FREE ($0.00).

The scraper validates each video URL before extracting. If a video is deleted, private, or has disabled comments, the actor skips it gracefully. You are never charged comment fees for empty or failed videos.

How do I scrape unlimited comments from a video?

Set maxCommentsPerVideo to 0. The scraper will paginate through the entire comment history until all comments are extracted or the video's end is reached.

Do active filters save me money?

Yes! If you use searchKeyword, minLikes, or languageFilter, only comments that match your criteria are pushed to the dataset. Non-matching comments are discarded during processing, saving you money.

Does it extract comment replies (nested threads)?

The actor extracts all top-level comments and provides the exact replyCount for each comment.

How can I export the data?

You can download your data directly from the Apify Console in JSON, CSV, Excel, XML, or HTML table formats, or access it via the Apify API / Python & Node.js clients.


๐Ÿง‘โ€๐Ÿ’ป Support & Contact

For custom adaptations, enterprise integrations, or bulk requirements:


๐Ÿท๏ธ Keywords & SEO Tags

tiktok-comment-scraper ยท tiktok-comments ยท tiktok-scraper ยท tiktok-api ยท scrape-tiktok-comments ยท tiktok-data-extractor ยท comment-scraper ยท tiktok-sentiment-analysis ยท social-media-scraper ยท apify-tiktok ยท tiktok-crawler ยท tiktok-engagement ยท influencer-analytics ยท pay-per-event ยท playwright-scraper ยท crawlee ยท tiktok-monitoring ยท tiktok-export