TikTok Creator & Video Scraper avatar

TikTok Creator & Video Scraper

Pricing

from $0.01 / 1,000 results

Go to Apify Store
TikTok Creator & Video Scraper

TikTok Creator & Video Scraper

Enterprise-grade TikTok scraper that extracts 25+ data points per creator with built-in engagement analytics and video performance metrics. Perfect for influencer marketing, competitor analysis, and trend research.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

The Howlers

The Howlers

Maintained by Community

Actor stats

0

Bookmarked

49

Total users

4

Monthly active users

3 days ago

Last modified

Share

Scrape TikTok profiles, videos, and hashtags. Extract follower counts, engagement metrics, video stats, and creator data for influencer research and competitive analysis. Built by John Rippy (https://johnrippy.link/).

BYOK (Bring Your Own Key) -- you provide your own API credentials.


Before You Start

This actor requires your own API credentials to fetch real data.

Where to get your key: JSON array of cookies exported from Cookie-Editor browser extension. Helps bypass TikTok login walls and CAPTCHAs. Log into TikTok, export cookies, then paste the JSON here.

You can test with Demo Mode first (free, no key needed) to see the output format before committing.


TikTok aggressively blocks automated traffic. To stay robust, this actor automatically primes each run with fresh session cookies from a companion actor, tiktok-cookie-refresh, which runs on a schedule, solves TikTok's CAPTCHA once, and publishes anonymous cookies for the whole TikTok actor fleet to share. You do not need to configure anything — if you supply no cookies of your own, the actor fetches the latest refreshed cookies before scraping.

Cookie source priority (first available wins):

  1. sessionCookies — cookies you paste in yourself (highest priority).
  2. cookieStorageKey — cookies captured via the Cookie Manager actor.
  3. tiktok-cookie-refresh last run — automatic fleet-shared cookies (default).

Supplying your own logged-in sessionCookies still gives the most complete data (some profile fields only render for authenticated sessions), but the automatic priming is what keeps unauthenticated runs from hitting the wall.


Quick Start

Test with Demo Mode (free, no API key needed)

{
"demoMode": true,
"usernames": [
"charlidamelio"
]
}

Run with real data

{
"demoMode": false,
"scrapeType": "profiles",
"usernames": [
"charlidamelio"
],
"includeVideos": true,
"videosPerProfile": 12,
"maxResults": 50,
"minFollowers": 0,
"minViews": 0,
"sortBy": "followers"
}

Cookies are optional — leave them out and the actor auto-primes with fleet-shared anti-bot cookies. To supply your own for the most complete data, add "sessionCookies": "[{...cookie JSON...}]".


Input Parameters

ParameterTypeDefaultRequiredDescription
scrapeTypestring"profiles"NoWhat to scrape from TikTok
usernamesarray-NoTikTok usernames to scrape (without @)
hashtagsarray-NoHashtags to scrape videos from (without #)
searchQueriesarray-NoSearch terms to find creators (with scrapeType: "search")
searchReturnsCreatorsbooleantrueNoWith scrapeType: "search", return creator profiles (with real follower counts) instead of raw video rows
soundsarray-NoTikTok sound/music IDs to scrape
includeVideosbooleantrueNoScrape recent videos for each profile
videosPerProfileinteger12NoNumber of videos to scrape per profile
maxResultsinteger50NoMaximum items to return
minFollowersinteger0NoOnly return profiles with at least this many followers
minViewsinteger0NoOnly return videos with at least this many views
sortBystring"followers"NoHow to sort results
proxyConfigurationobject-NoRequired for TikTok - use residential proxies
demoModebooleantrueNoRun with sample data. Set to false for real scraping.
webhookUrlstring-NoOptional webhook URL to receive results when scraping completes
sessionCookiesstring-NoJSON array of cookies exported from Cookie-Editor browser extension. Optional — improves data completeness for authenticated-only fields. If omitted, the actor auto-primes with fleet-shared anti-bot cookies (see above).
cookieStorageKeystring-NoKey to load cookies from the Cookie Manager's Named KV Store. Use this instead of manually pasting sessionCookies. Run Cookie Manager in 'capture' mode first to store cookies, then reference the same storageKey here.
cookieKvStoreNamestring"cookie-sessions"NoName of the Named Key-Value Store where Cookie Manager saved the session. Defaults to 'cookie-sessions'.

No field is strictly required — with Demo Mode off and no cookies, the actor scrapes using auto-primed fleet cookies. Supplying your own cookies is recommended for the most complete data.


Pricing

This actor uses pay-per-event billing:

EventDescriptionPrice
Actor StartCharged once when the run starts (one event per GB of memory)$0.10
resultEach item written to the default dataset$0.00001
Profile ScrapedEach TikTok creator profile scraped with full metrics$0.05
Video ScrapedEach TikTok video extracted with engagement data$0.002

Demo mode is free -- no charges for sample data.


Troubleshooting

Empty results / blocked by TikTok

  • TikTok is rate-limiting or wall-blocking the run. Use residential proxies (proxyConfiguration → Apify Residential group).
  • Supply your own sessionCookies for authenticated access to more fields.
  • Retry — the auto-primed fleet cookies refresh on a schedule.

Missing follower counts or private profiles

  • Some fields only render for logged-in sessions. Provide your own sessionCookies from a browser where you are logged into TikTok.

No results or empty dataset

Check the run log for error messages. Common causes:

  • Invalid input format (check the examples above)
  • Usernames/hashtags that do not exist
  • Filters (minFollowers, minViews) too strict for the target

How do I test without scraping?

Enable Demo Mode in the input. This returns realistic sample data so you can verify the output format works for your workflow.


Built by John Rippy | Actor Arsenal