Tiktok Comments Scraper
Pricing
from $25.00 / 1,000 results
Tiktok Comments Scraper
Scrape comments from TikTok videos. Extract comment text, user ID, timestamp, number of replies and replies content, number of likes, and more. Input video URLs or usernames to get all comments.
Pricing
from $25.00 / 1,000 results
Rating
5.0
(2)
Developer

Crawler Bros
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape comments from TikTok videos with ease! Extract comment text, user ID, timestamp, number of replies and replies content, number of likes, and more.
🚀 What is TikTok Comments Scraper?
TikTok Comments Scraper is a simple and powerful tool that allows you to scrape comments from TikTok videos:
- Comment text - The full text of each comment
- User ID - The unique identifier and username of the commenter
- Timestamp - When the comment was posted
- Likes (diggCount) - Number of likes on the comment
- Replies - Number of replies and their content
- Avatar - Commenter's profile picture URL
- And more metadata...
📋 How to Use
Input Options
Option 1: Scrape by Video URLs
{"postURLs": ["https://www.tiktok.com/@bellapoarch/video/6862153058223197445","https://www.tiktok.com/@username/video/1234567890123456789"],"commentsPerPost": 100,"maxRepliesPerComment": 2}
Option 2: Scrape by Username
{"usernames": ["bellapoarch", "tiktok"],"videosPerUser": 5,"commentsPerPost": 50,"maxRepliesPerComment": 2}
Option 3: Combined
{"postURLs": ["https://www.tiktok.com/@user/video/123"],"usernames": ["anotheruser"],"commentsPerPost": 100}
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
postURLs | Array | [] | List of TikTok video URLs to scrape comments from |
usernames | Array | [] | List of TikTok usernames (without @) whose videos' comments to scrape |
commentsPerPost | Integer | 100 | Maximum comments to extract per video |
maxRepliesPerComment | Integer | 2 | Maximum replies to fetch per comment (0 = skip replies) |
videosPerUser | Integer | 5 | Videos to scrape per username |
minDelayBetweenRequests | Integer | 3 | Minimum delay between actions (seconds) |
maxDelayBetweenRequests | Integer | 7 | Maximum delay between actions (seconds) |
delayBetweenPosts | Integer | 10 | Delay between scraping different videos (seconds) |
humanizeBehavior | Boolean | true | Simulate human-like behavior |
useResidentialProxy | Boolean | true | Use residential proxies (recommended) |
proxyCountry | String | "US" | Proxy country code |
maxRetries | Integer | 3 | Maximum retry attempts per video |
📤 Output
Each comment is output as a separate item with the following structure:
{"text": "Bella poarch -67.3M\nRiver flows in you -55.5M\nMirror guy -53.3M","diggCount": 246,"replyCommentTotal": 3,"createTimeISO": "2024-08-06T11:21:16.000Z","uniqueId": "username123","videoWebUrl": "https://www.tiktok.com/@bellapoarch/video/6862153058223197445","uid": "6904063862041396225","cid": "7399984975553086214","avatarThumbnail": "https://p77-sign-va.tiktokcdn.com/...","isAuthorLiked": false,"isPinned": false,"userVerified": false,"language": "en","replies": [{"text": "Great comment!","uniqueId": "replier123","diggCount": 10,"createTimeISO": "2024-08-07T10:00:00.000Z","parentCommentId": "7399984975553086214","isReply": true}]}
Output Fields
| Field | Type | Description |
|---|---|---|
text | String | Comment text content |
diggCount | Integer | Number of likes on the comment |
replyCommentTotal | Integer | Total number of replies |
createTimeISO | String | ISO timestamp when comment was posted |
uniqueId | String | Commenter's username |
uid | String | Commenter's user ID |
cid | String | Comment ID |
videoWebUrl | String | URL of the video |
avatarThumbnail | String | URL of commenter's avatar |
isAuthorLiked | Boolean | Whether video author liked the comment |
isPinned | Boolean | Whether comment is pinned |
userVerified | Boolean | Whether commenter is verified |
language | String | Detected language of comment |
replies | Array | List of reply comments (if maxRepliesPerComment > 0) |
🛡️ Anti-Detection Features
This scraper includes several anti-detection measures:
- Stealth Browser - Firefox browser with anti-fingerprinting configuration
- Residential Proxies - Uses Apify's residential proxy network (recommended)
- Human-like Behavior - Simulates mouse movements, scrolling, and random delays
- Session Rotation - Creates fresh browser sessions on failures
- Request Throttling - Configurable delays to avoid rate limiting
💰 Pricing
TikTok Comments Scraper uses pay-per-result pricing:
- $5 per 1,000 comments ($0.005 per comment)
- Apify Free plan includes $5/month free credits (~1,000 comments)
🔗 Use Cases
- Sentiment Analysis - Analyze audience reactions to content
- Market Research - Understand consumer opinions about products
- Trend Analysis - Track viral campaigns and trending topics
- Content Moderation - Monitor comments for compliance
- Competitor Analysis - Study engagement on competitor videos
- Influencer Marketing - Evaluate engagement quality
⚠️ Legal & Ethical Notice
This scraper only extracts publicly available data. Please ensure your use case complies with:
- TikTok's Terms of Service
- GDPR and data protection regulations
- Local laws regarding data collection
Do not use scraped data for:
- Harassment or stalking
- Spam or unsolicited marketing
- Any illegal activities
🔧 Integrations
Connect TikTok Comments Scraper with:
- Zapier
- Make (Integromat)
- Google Sheets
- Slack
- Webhooks
- And more via Apify integrations
📞 Support
- Issues: Report bugs on the Actor's Issues tab
- Documentation: Apify Documentation
- Custom Solutions: Contact us for custom scraping needs
Related Scrapers
- ../profile-scraper - Scrape TikTok profiles and videos
- TikTok Hashtag Scraper - Scrape videos by hashtag
- TikTok Video Scraper - Download TikTok videos