TikTok Scraper - Profiles, Videos, Comments & Followers
Pricing
$3.00 / 1,000 results
TikTok Scraper - Profiles, Videos, Comments & Followers
Scrape TikTok profiles, videos, comments and hashtag results. Pay per result.
Pricing
$3.00 / 1,000 results
Rating
5.0
(2)
Developer
Scrape Lads
Maintained by CommunityActor stats
3
Bookmarked
4
Total users
1
Monthly active users
9 hours ago
Last modified
Categories
Share
TikTok Scraper
Extract profiles, videos, comments, and followers from any public TikTok account or video — no login, no API key, no rate limits from TikTok's official API. Get clean structured JSON you can download, schedule, or pipe straight into your own tools.
Pay only for results. $1 per 1,000 items scraped (profile videos: $0.50 per 1,000). One of the lowest prices on the platform.
What can it scrape?
| Mode | Input | Data you get |
|---|---|---|
| Profile info | @handles or profile URLs | Followers, following, total likes, post count, bio, verified status, avatar |
| Profile videos | @handles or profile URLs | Every video with views, likes, comments, shares, saves, caption, hashtags, upload date |
| Video metrics | Video URLs | Full engagement stats for specific videos — views, likes, shares, comments, saves, duration |
| Video comments | Video URLs | Comment text, author, likes, reply count, pinned/liked-by-author flags, timestamp |
| Followers list | @handles or profile URLs | Follower profiles — username, display name, follower count, verified status |
Why use this scraper?
- No TikTok account needed. Runs headlessly against public data — no cookies to manage, no sessions to refresh.
- Cheaper than alternatives. At $1 per 1,000 results, it costs up to 40% less than comparable TikTok scrapers on the platform.
- Five modes in one actor. Profile stats, full video catalogs, per-video metrics, comments, and followers — all from a single integration.
- Structured output every time. Every field has a consistent name and type across all runs. No post-processing required to normalize the data.
- Schedule it. Run on a cron schedule to track an account or video weekly without writing any code.
How to use it
In the Console (no code):
- Click Try for free above
- Choose a Scrape mode from the dropdown
- Paste your handles or video URLs
- Set Max results and click Start Run
- Download results as JSON, CSV, or Excel from the Output tab
Via API:
// JavaScript / Node.jsimport { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('scrape-lads/tiktok-scraper').call({mode: 'profile',handles: ['@charlidamelio', '@khaby.lame', '@zachking'],maxResults: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
# Pythonfrom apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('scrape-lads/tiktok-scraper').call(run_input={'mode': 'profileVideos','handles': ['@zachking'],'maxResults': 100,})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item['caption'], item['views'])
Input reference
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | Yes | profile · profileVideos · video · comments · followers |
handles | string[] | For profile / profileVideos / followers modes | TikTok handles — @tiktok, tiktok, or full profile URL |
videoUrls | string[] | For video / comments modes | Full TikTok video URLs |
maxResults | integer | No | Max items to collect. Default: 100. Max: 1000 |
maxConcurrency | integer | No | Parallel requests (1–5). Default: 1. Keep at 1 for large runs |
Handles accept any format: @tiktok, tiktok, or https://www.tiktok.com/@tiktok — all work the same.
Output reference
Profile
{"username": "charlidamelio","displayName": "charli d'amelio","bio": "probably dancing :)","followers": 155400000,"following": 1642,"likes": 11100000000,"postCount": 2341,"verified": true,"privateAccount": false,"avatarUrl": "https://p16-sign.tiktokcdn-us.com/...","profileUrl": "https://www.tiktok.com/@charlidamelio","scrapedAt": "2026-06-29T12:00:00.000Z"}
Video (profile videos + video metrics)
{"videoId": "6768504823336815877","videoUrl": "https://www.tiktok.com/@zachking/video/6768504823336815877","authorUsername": "zachking","authorName": "Zach King","caption": "They rejected my application to Hogwarts but I still found a way in","hashtags": ["magic", "harrypotter", "fyp"],"views": 2373556960,"likes": 28492049,"comments": 312041,"shares": 1872930,"saves": 4201882,"duration": 14,"coverUrl": "https://p16-sign.tiktokcdn-us.com/...","musicTitle": "original sound - zachking","uploadedAt": "2019-12-09T00:00:00.000Z","scrapedAt": "2026-06-29T12:00:00.000Z"}
Comment
{"commentId": "7112196704363414273","videoUrl": "https://www.tiktok.com/@zachking/video/6768504823336815877","authorUsername": "user_example","text": "This is genuinely the most viewed TikTok ever and it deserves it","likes": 48201,"replyCount": 234,"isReply": false,"pinned": false,"likedByAuthor": true,"postedAt": "2021-04-12T17:42:00.000Z","scrapedAt": "2026-06-29T12:00:00.000Z"}
Follower
{"sourceProfile": "charlidamelio","connectionType": "follower","username": "user_example","displayName": "Example User","bio": "just here for the content","followers": 3820,"following": 941,"verified": false,"privateAccount": false,"profileUrl": "https://www.tiktok.com/@user_example","scrapedAt": "2026-06-29T12:00:00.000Z"}
Use cases
Influencer vetting before a campaign Pull profile stats for 50 creator candidates in a single run. Compare follower counts, posting frequency, and total engagement to shortlist based on real numbers — not self-reported media kits.
Track competitor content over time Run profile videos mode weekly on a competitor's account. Watch which formats, captions, and hashtags drive their best numbers — before the trend peaks.
Audience research from comments Scrape 500–1,000 comments from your category's viral videos. Feed the text into a sentiment model to understand what your potential customers care about and how they talk.
Lead generation from follower lists If your target buyer persona follows specific niche accounts, export their follower list. Filter by follower count or bio keywords to build a qualified outreach list.
Content strategy reverse engineering Scrape the full video catalog of the top 10 creators in your niche. Analyze upload timing, caption length, hashtag choice, and engagement rate to see exactly what drives views.
Social listening and brand monitoring Pull comments mentioning your brand, product, or keywords from relevant videos. Track sentiment shifts in real time without manual searching.
Pricing
| What | Cost |
|---|---|
| Actor start (per run) | $0.005 |
| Profile, video, comment, or follower result | $0.001 |
| Profile video result | $0.0005 |
Example costs:
- Scrape stats for 1,000 TikTok accounts → $1.00
- Pull 500 comments from a video → $0.50
- Get 200 videos from a creator's profile → $0.10
- Export 1,000 follower profiles → $1.00
Gold, Platinum, and Diamond subscribers get automatic discounts applied on top of these rates.
Scheduling and automation
Set up a weekly tracker: Actor page → Schedules → add a cron expression like 0 9 * * 1 (every Monday at 9 AM). Results accumulate in the dataset so you can diff week over week.
Connect to your stack:
| Tool | What you can do |
|---|---|
| Zapier / Make | Push new results to Google Sheets, Airtable, Notion, Slack, or 1,000+ other apps |
| Webhooks | POST results to your own endpoint the moment a run finishes |
| REST API | Trigger runs and retrieve data from any backend or script |
| MCP | Use this scraper directly inside Claude or other AI agents via the Apify MCP server |
FAQ
Is scraping TikTok legal? This actor collects only publicly visible data — the same information anyone can see on TikTok.com without an account. It does not bypass authentication, access private content, or violate any access controls. That said, you are responsible for how you use the data and for complying with TikTok's Terms of Service, GDPR, CCPA, and any other laws that apply in your jurisdiction.
Why are some fields null?
TikTok doesn't expose every field for every piece of content. Some creators hide their like counts; some older videos have no music metadata. When a field isn't available, it returns null rather than an incorrect value.
Can I scrape private accounts? No. Private profiles and their content are not visible without being an approved follower. This actor only works on fully public accounts and videos.
I got fewer results than my maxResults limit. Why? TikTok limits how many comments or videos are accessible on some content — particularly older videos or accounts with low engagement. The actor collects everything available up to your limit.
What happens if a video is deleted mid-run? That URL is skipped and logged. The run continues with the remaining URLs and still exits successfully.
How do I track a creator week over week? Use the Schedules feature to run the same task on a cron schedule. Each run appends to the same dataset, so you can export and compare results across dates.
Something looks broken or the data is wrong. TikTok updates its site regularly. Open an issue on the Issues tab with your input configuration and we will investigate and push a fix fast.