TikTok Creator & Video Scraper
Pricing
from $50.00 / 1,000 profile scrapeds
TikTok Creator & Video Scraper
Scrape TikTok creator profiles and their recent videos to extract profile data, video cover images, engagement metrics, hashtag usage, and aggregate analytics. Built with richer output including cover image URLs (for photo harvesting), per-video engagement stats, and aggregate content analytics.
Pricing
from $50.00 / 1,000 profile scrapeds
Rating
0.0
(0)
Developer
The Howlers
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
TikTok Creator & Video Scraper — Profiles, Videos, Cover Images & Analytics
Scrape TikTok creator profiles and their recent videos. Extract profile data, video cover images (for photo harvesting), engagement metrics, hashtag usage, and aggregate content analytics. Uses Camoufox stealth browser with residential proxies for reliable extraction.
Before You Start
Demo Mode is available. Set
demoMode: trueto preview the output format with sample data (free, no scraping, no cookies needed).
| Step | What to Do |
|---|---|
| 1 | Run with demoMode: true to see the output format (free) |
| 2 | Set demoMode: false and add profile URLs |
| 3 | For best results, set up Cookie Manager (see below) |
What Data Does It Extract?
Profile Data
- Username, display name, bio
- Avatar URL (high-resolution)
- Follower count, following count, total likes
- Video count
- Verified status
Video Data (per video)
- Video URL (direct link to the TikTok video)
- Cover image URL — high-quality thumbnail from TikTok CDN (the key field for photo harvesting)
- Description / caption text
- Hashtags used
- Create time
- View count, like count, comment count, share count, save count
- Video duration (seconds)
- Sound / music name
- Whether the video is a paid ad
- Per-video engagement rate
Aggregate Analytics
- Average views, likes, comments, shares, saves across all scraped videos
- Overall engagement rate
- Top performing content types (viral / high / average / low brackets)
- Most frequently used hashtags with frequency counts
- Posting frequency analysis
Quick Start Examples
1. Demo Mode (Free, No Setup)
{"demoMode": true}
Returns realistic sample data for a fictional TikTok creator with 20 sample videos.
2. Scrape a Single Profile
{"profiles": ["https://www.tiktok.com/@altered_state_comics"],"maxVideos": 10,"demoMode": false}
3. Scrape Multiple Profiles
{"profiles": ["altered_state_comics", "garyvee", "hubspot"],"maxVideos": 20,"includeAnalytics": true,"demoMode": false}
Accepts full URLs, @username, or bare usernames — all formats work.
4. With Cookie Manager (Recommended)
{"profiles": ["altered_state_comics"],"maxVideos": 30,"cookieStorageKey": "tiktok-john","demoMode": false}
5. With Manual Cookies
{"profiles": ["altered_state_comics"],"maxVideos": 20,"sessionCookies": "[paste your TikTok cookie JSON here]","demoMode": false}
6. With Webhook Delivery
{"profiles": ["altered_state_comics"],"maxVideos": 10,"webhookUrl": "https://hooks.zapier.com/hooks/catch/123456/abcdef/","demoMode": false}
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
profiles | string[] | — | TikTok profile URLs or usernames to scrape |
maxVideos | number | 30 | Max videos per profile (1-100) |
includeAnalytics | boolean | true | Include aggregate analytics in output |
demoMode | boolean | false | Return sample data without scraping (free) |
cookieStorageKey | string | — | Cookie Manager KV store key (e.g., tiktok-john) |
cookieKvStoreName | string | cookie-sessions | Named KV store for Cookie Manager |
sessionCookies | string | — | Raw JSON cookie array (manual override) |
webhookUrl | string | — | URL to POST results when complete |
proxyConfiguration | object | Residential | Proxy settings |
Output Format
{"username": "altered_state_comics","displayName": "Altered State Comics","bio": "Your local comic shop in Manchester, MO","profileUrl": "https://www.tiktok.com/@altered_state_comics","avatarUrl": "https://p16-sign.tiktokcdn-us.com/...","followers": 87,"following": 42,"likes": 1523,"videoCount": 45,"verified": false,"videos": [{"videoUrl": "https://www.tiktok.com/@altered_state_comics/video/7394...","coverImageUrl": "https://p19-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/...","description": "Cant beat an old adventure/romace comic #vintagecomics #backissues","hashtags": ["vintagecomics", "backissues"],"createTime": "2026-03-15T18:30:00.000Z","views": 771,"likes": 45,"comments": 3,"shares": 2,"saves": 8,"duration": 22,"soundName": "Original Sound","isAd": false,"engagementRate": 7.52}],"analytics": {"avgViews": 580,"avgLikes": 35,"avgComments": 4,"avgShares": 2,"avgSaves": 6,"engagementRate": 7.52,"topHashtags": [{ "tag": "vintagecomics", "count": 8 },{ "tag": "comicbooks", "count": 6 }],"contentTypes": {"viral": 0,"high_performing": 2,"average": 5,"low_performing": 3},"avgPostingFrequency": "every 3.1 days"},"scrapedAt": "2026-03-28T21:04:00.000Z"}
Cookie Manager Integration (Recommended)
TikTok aggressively blocks unauthenticated scrapers. For best results, use the Cookie Manager actor:
Step 1: Run Cookie Manager once
{"mode": "capture","platform": "tiktok","storageKey": "tiktok-yourname"}
Log into TikTok via Apify's Live View. Cookies are saved to the cookie-sessions Key-Value Store.
Step 2: Use stored cookies in this actor
{"profiles": ["altered_state_comics"],"cookieStorageKey": "tiktok-yourname","demoMode": false}
No manual cookie pasting needed. Schedule Cookie Manager to refresh every 3-5 days.
Priority Order
| Condition | What Happens |
|---|---|
sessionCookies provided | Uses manual cookies (always wins) |
cookieStorageKey provided | Loads from Cookie Manager KV Store |
| Neither provided | Attempts unauthenticated scraping (may be blocked) |
Pricing (Pay-Per-Event)
| Event | Description | Price |
|---|---|---|
profile_scraped | Per TikTok profile scraped (includes all videos + analytics) | $0.05 |
Example costs:
- 1 profile: $0.05
- 10 profiles: $0.50
- 50 profiles: $2.50
- Demo mode: $0.00
Use Cases
Photo Harvesting / Content Curation
The coverImageUrl field on each video provides a high-quality thumbnail image — perfect for building client photo libraries, social media content curation, and visual competitor analysis.
Content Strategy Research
Analyze what types of content perform best for creators in your niche. Compare engagement rates, hashtag strategies, and posting frequency across competitors.
Influencer Discovery
Scrape multiple profiles to compare follower counts, engagement rates, and content quality. Identify rising creators before they go mainstream.
Voice Training / AI Content
Collect writing samples (captions, hashtags, hooks) from successful creators to train AI content generators.
Competitor Monitoring
Schedule weekly runs to track competitor video performance, new content, and audience growth trends.
Troubleshooting
"CAPTCHA / login wall detected"
TikTok blocks unauthenticated scraping. Use Cookie Manager or provide sessionCookies.
"Profile not found or private"
- Check the username spelling
- The profile may be set to private
- Try the full URL format:
https://www.tiktok.com/@username
"Empty video list"
- TikTok may require login to show videos. Add cookies.
- The profile may have no public videos
- Try reducing
maxVideosto 5 for a quick test
"Timeout errors"
- Reduce
maxVideos(default 30 may be too many for some profiles) - Increase actor memory to 4 GB in Run Options
- TikTok rate-limits aggressively — the actor uses delays between requests
"Blocked by TikTok (403 error)"
- Make sure residential proxies are enabled (the default)
- Add session cookies via Cookie Manager — authenticated sessions are far more reliable
- Try running at a different time (TikTok's blocking varies by time of day)
"Cover image URLs are missing"
- Some videos have restricted thumbnails
- The actor extracts all available cover images
- Videos with missing covers are still included in the output (other fields are populated)
Technical Details
- Browser: Camoufox stealth browser (C++ level fingerprinting) with standard Firefox fallback
- Crawler: Crawlee PlaywrightCrawler with automatic retries (up to 3)
- Proxy: Apify residential proxies by default
- Video Enrichment: First 10 videos get detailed data from individual page visits (exact like/comment/share/save counts)
- Rate Limiting: Human-like delays between page visits (1.5s between video pages)
- Memory: 2 GB default, supports up to 8 GB
- Timeout: 5 minutes per profile (configurable)
FAQ
Q: Do I need a TikTok account?
A: No, but unauthenticated scraping may be blocked. For reliable results, use Cookie Manager to capture your TikTok session.
Q: How many videos can I scrape per profile?
A: Up to 100 per profile. The first 10 get detailed engagement data (individual page visits). Videos 11+ get estimated metrics from the grid view.
Q: Will this get my TikTok account banned?
A: The actor uses Camoufox stealth browser, residential proxies, and human-like delays. Scrape at reasonable volumes (< 50 profiles/run) and you should be fine.
Q: Can I schedule recurring runs?
A: Yes. Use Apify's scheduling for daily, weekly, or monthly runs. Combine with Cookie Manager auto-refresh for fully automated monitoring.
Q: How fresh are the cover image URLs?
A: TikTok CDN URLs typically remain valid for 2-4 weeks. For long-term storage, download the images after scraping.
Q: What's the difference between this and clockworks/tiktok-profile-scraper?
A: This actor provides richer output (engagement metrics, analytics, hashtags, sound names), Cookie Manager integration, Camoufox stealth browser, and is maintained by Actor Arsenal. The clockworks actor focuses on basic profile data and engagement analytics without cover image URLs suitable for photo harvesting.
Support
- Actor Arsenal: Full Actor Catalog
- Developer: John Rippy
Built by John Rippy | Actor Arsenal