Tiktok Profile Scraper
Pricing
from $3.00 / 1,000 results
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
an hour ago
Last modified
Categories
Share
Scrape TikTok profiles and their video or repost history. The actor emits a profile row (rowType=profile) with full account metadata and then individual post rows (rowType=video or rowType=repost) for each piece of content. Without a session cookie the actor returns profile info plus approximately 14 recent videos from search; with a sessionCookie it can retrieve the full video history up to 500 posts. Reposts are available without a cookie.
What this actor does
- Accepts TikTok usernames (with or without @) and/or full profile URLs
- Emits a dedicated profile row per account with follower/following/like/video counts and account settings
- Emits separate post rows for each video or repost, selectable via
contentTypes - Retrieves up to ~14 recent videos without authentication via search fallback
- With a
sessionCookieor fullcookiesexport, retrieves the complete video history (up to 500 posts) - Reposts (videos the user has shared from other creators) are extracted without a cookie
- Empty fields are omitted
Output per profile row
rowType— always"profile"for profile rowsuserId— TikTok user IDsecUid— TikTok secUidusername— @handledisplayName— display name / nicknameverified— verification badge statusprivateAccount— whether the account is privatebio— profile bio textbioLink— clickable link in bio (if set)followerCount— total followersfollowingCount— total accounts followedheartCount— total likes received across all videosvideoCount— number of public videosavatarLarger— large avatar image URLavatarMedium— medium avatar image URLcreateTime— account creation Unix timestampcommentSetting— comment permission settingduetSetting— duet permission settingstitchSetting— stitch permission settingprofileUrl— canonical TikTok profile URLscrapedAt— ISO 8601 scrape timestamp
Output per video/repost row
rowType—"video"or"repost"contentKind— same as rowType for filtering conveniencepostId— unique post IDpostUrl— canonical post URLcaption— post caption textcreateTime— Unix publication timestamplikeCount— total likescommentCount— total commentsshareCount— total sharesplayCount— total plays/viewsauthor.id— video author's user IDauthor.username— video author's @handleauthor.displayName— video author's display nameauthor.verified— author verification statusmusic.id— music IDmusic.title— music namemusic.authorName— music artistvideo.width— video widthvideo.height— video heightvideo.duration— video duration in secondshashtags— array of{id, name}hashtag objectsprofileUsername— the queried username that produced this rowscrapedAt— ISO 8601 scrape timestamp
Input
| Field | Type | Default | Description |
|---|---|---|---|
usernames | array | — | TikTok usernames to scrape (with or without @) |
profileUrls | array | — | Full TikTok profile URLs as alternative or additional input |
contentTypes | array | ["profile","videos"] | Which rows to emit: any combination of "profile", "videos", "reposts" |
maxPostsPerProfile | integer | 30 | Maximum post rows per profile (0 = skip posts) |
includeProfileInfo | boolean | true | Include profile metadata in the profile row |
sessionCookie | string | — | TikTok sessionid cookie value — required for full video history |
cookies | array | — | Full browser cookie export as JSON array (Cookie-Editor format) |
ttwid | string | — | TikTok ttwid device cookie — enables immediate video listing |
Example: Profile info and recent videos (no cookie)
{"usernames": ["natgeo"],"contentTypes": ["profile", "videos"],"maxPostsPerProfile": 10}
Example: Reposts only
{"usernames": ["khaby.lame", "charlidamelio"],"contentTypes": ["reposts"],"maxPostsPerProfile": 50}
Example: Full video history with session cookie
{"usernames": ["natgeo"],"contentTypes": ["profile", "videos"],"maxPostsPerProfile": 200,"sessionCookie": "your_sessionid_value_here"}
Example: Multiple profiles — profile metadata only
{"usernames": ["natgeo", "bbcnews", "cnn"],"contentTypes": ["profile"],"maxPostsPerProfile": 0}
Use cases
- Influencer research — pull profile stats and recent video performance for creator discovery and vetting
- Competitive benchmarking — track a competitor brand account's posting frequency and engagement trends over time
- Audience and content auditing — export a creator's complete video history for content strategy or brand safety review
- Repost tracking — identify what external content a creator is amplifying through reposts
- Social media archival — build structured archives of public TikTok accounts for research or compliance purposes
- Agency reporting — collect cross-account profile snapshots for client portfolio dashboards
FAQ
Do I need a TikTok account or cookies?
Not for profile metadata or reposts. For the complete video list you need a sessionCookie or full cookies export, because TikTok's video listing API blocks unauthenticated datacenter requests.
How many videos can I get without a cookie?
Approximately 14 recent videos are available via TikTok's public search fallback. For full history, provide a sessionCookie.
How do I get my sessionCookie?
Install the Cookie-Editor browser extension, log into TikTok, click the icon, find the cookie named sessionid, and copy its value. Paste that value into the sessionCookie field.
What is the difference between sessionCookie and cookies?
sessionCookie accepts only the sessionid value and is sufficient for follower/repost mode. cookies accepts the full browser cookie export (Cookie-Editor JSON format) and provides the complete session context including msToken and ttwid — this gives the most reliable video list retrieval.
What is ttwid?
A non-personal device tracking cookie from TikTok. Providing your browser's ttwid value lets the actor bypass the typical 7-day device-aging period that TikTok applies to new (unknown) devices. Find it in browser DevTools under Application → Cookies → tiktok.com.
What is a repost? A video from another creator that the profile owner has re-shared to their own followers using TikTok's repost feature. The original author and post ID are preserved in the output.
What does includeProfileInfo: false do?
The profile row is still emitted but without the detailed metadata fields (follower counts, bio, settings). Useful when you only want the post rows.
Can I scrape private accounts? Profile metadata for private accounts is visible, but their video grid is not accessible without being an approved follower.
Related TikTok Scrapers
Build a complete TikTok data pipeline with our full suite: