TikTok Scraper – Videos, Profiles & Comments
Pricing
from $0.25 / 1,000 tiktok results
TikTok Scraper – Videos, Profiles & Comments
Collect TikTok videos, profiles and comments with predictable limits. Keyword search available with experimental pagination.
Pricing
from $0.25 / 1,000 tiktok results
Rating
0.0
(0)
Developer
mscraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
TikTok Scraper
Collect TikTok videos, profiles, comments and keyword search results in a consistent dataset. Export JSON, CSV, Excel or integrate through the Apify API. Provider access and platform usage are included; no provider key is required in input.
Supported modes
| Mode | Input | Output |
|---|---|---|
| Videos | Usernames/profile URLs or full video URLs | Video text, IDs, dates, author, engagement, hashtags, duration and cover URL |
| Profiles | Usernames/profile URLs | Profile ID, username, bio and available counters |
| Comments | Full video URLs | Comment text, author, likes, timestamp and reply count |
| Search | Keywords | Matching videos; deeper pagination is experimental |
Search is experimental: unmatched terms can return unrelated recommendations, so it does not guarantee keyword matches. The first search page was validated. During testing, the provider returned an application error for page two; this Actor reports that failure and keeps earlier saved results. It does not silently treat provider failures as an empty result or promise complete history. Profile-video and comment pagination passed two-page tests. Availability varies by source.
Short links, private content, follower lists, media downloads and reply-thread expansion are not supported in this version. Media links may expire. Missing fields are null. IDs are strings to preserve precision.
Quick start
{ "mode": "videos", "profiles": ["khaby.lame"], "maxItems": 10, "maxItemsPerSource": 10, "maxRequests": 3 }
Choose a mode, supply matching sources, and set total/per-source result caps. With no input, Videos mode uses khaby.lame and saves at most 20 records. See examples/ for search, profile and comment inputs.
Pricing
- $0.25 per 1,000 unique records saved (video, profile or comment).
- $0.10 per 1,000 confirmed empty-check units ($0.0001 per unit).
- No start event. Platform usage included.
A confirmed empty check is a successful provider response containing a validated empty list. Its fee follows provider billing units; every currently supported endpoint costs one unit per attempt. A nonempty response is not also billed as an empty check. Provider errors, ambiguous data not found errors, malformed responses, duplicates and filtered records are not empty checks. Partial results already saved remain chargeable when a later request fails. Profile lookups and retries consume the request allowance.
The Actor checks the run budget before making requests and saving records. It needs enough budget for either one result or one empty check before requesting data. Set the maximum charge in Apify to control total spending.
Usage safeguards
Requests are bounded per run and coordinated across concurrent runs. Free accounts receive a shared trial allowance of 3 provider units per 30-day window; all free trials share a developer-managed pool. Paid accounts default to 1,000 units per 24-hour window. Shared provider caps can stop any run earlier. Windows begin on first use; these are safety allowances, not provider subscription reset dates. Contact the developer for larger allowances.
The shared request rate is capped at 90 requests per minute across all runs. Each run can select a lower rate. Paid provider access is managed by the developer; the global usage guard can stop runs when the shared allowance is exhausted.
Output
The default dataset contains records matching schemas/tiktok-record.schema.json. OUTPUT contains status, record count, confirmed empty checks, requests, retries and warnings. item-limit, request-budget, charge-limit and usage-limit are explicit stop reasons. Exceptions mark the run failed rather than hiding missing data.
Local development
Node.js 22 or newer:
npm cinpm run checknpm run build# Set RAPIDMINE_API_KEY in the environment (never in input or source).apify run
Cloud execution requires managed provider credentials, Redis/Upstash credentials, billing events and identity verification. Local execution uses bounded requests without shared cloud allowances. Tests use synthetic responses and an isolated Redis instance; they do not consume provider quota. redis-server is required.
Related scrapers for social media and website research
Add context to TikTok video and creator research with public posts, community discussions and website traffic estimates.
- X (Twitter) Scraper — Collect public profiles, timeline posts and follower lists to compare a brand’s activity on X.
- Reddit Scraper — Find Reddit posts by keyword and collect discussion comments for qualitative audience research.
- Similarweb Quick Scraper — Retrieve estimated website visits, traffic sources and top countries for domains associated with creators or brands.
Run each Actor separately and combine its exported data in your own workflow. Each Actor has its own input, output and pricing.