TikTok Profile Scraper avatar

TikTok Profile Scraper

Pricing

from $13.99 / 1,000 result items

Go to Apify Store
TikTok Profile Scraper

TikTok Profile Scraper

Scrapes TikTok profile metadata and optional video feeds by username or profile URL. Returns follower counts, bios, verified status, and nested video and comment data in a flat schema.

Pricing

from $13.99 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

1

Bookmarked

43

Total users

3

Monthly active users

15 days ago

Last modified

Share

ParseForge

TikTok Profile Scraper

Scrape TikTok profile data and recent videos for any list of usernames or profile URLs, up to a million profiles per run. Every profile returns follower counts, bio, verified status, and optional video feeds with play counts, likes, comments, music metadata, and hashtags. No login or API key. Export to CSV, JSON, Excel, or XML.

TikTok's official API requires a developer account, app review, and strict rate limits that throttle large-scale profile research. This Actor reads public profile pages directly, so you can feed it a list of usernames or profile URLs and get structured data back without any authentication. It handles millions of profiles per run and optionally dives into each profile's recent videos and their comments, all in one fixed schema.

Who uses itWhat they scrape TikTok for
Influencer marketing agenciesBuild a database of creator profiles with follower counts, engagement rates, and recent content for campaign vetting.
Brand safety analystsAudit a list of TikTok profiles for bio links, verification status, and content history before partnership decisions.
Social media researchersTrack profile growth, posting frequency, and content themes across a cohort of TikTok creators over time.
Recruitment teamsIdentify niche creators by scraping profiles from a target list and filtering by follower range or content category.

What it does

This Actor collects TikTok profile metadata and optional video feeds by username or profile URL, and returns each profile as a flat row with nested video and comment objects when enabled.

  • ๐Ÿ‘ค Profile metadata: username, display name, bio, follower count, following count, likes total, verified badge, and avatar URL.
  • ๐ŸŽฌ Video scraping: enable to pull recent videos with play count, hearts, shares, comments count, music track, hashtags, and publish date.
  • ๐Ÿ’ฌ Comment scraping: nested inside each video, collect comment text, author, and timestamp for deeper engagement analysis.
  • ๐Ÿ“… Date filters: restrict videos to a custom date range with publishedAfter and publishedBefore so you only get fresh or historical content.
  • ๐Ÿ”ข Engagement filters: set minimum and maximum hearts per video to isolate top performers or low-engagement outliers.
  • ๐Ÿ“Œ Pinned post control: exclude pinned videos from results to focus on organic, chronological content.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with TikTok data

๐Ÿ“Š Vet influencer rosters at scale.

An agency feeds a list of 500 TikTok usernames, enables video scraping with a 30-video limit, and exports follower counts, average hearts, and recent hashtags to score each creator for a beauty brand campaign.

๐Ÿ” Audit brand safety across profiles.

A compliance team scrapes 200 profiles with video comments enabled, filters videos from the last 90 days, and reviews bio links and comment sentiment before approving a sponsorship deal.

๐Ÿ“ˆ Track creator growth week over week.

A researcher runs the Actor weekly on the same 50 usernames, collects follower counts and video publish dates, and plots growth curves to identify rising TikTok personalities in the fitness niche.

๐ŸŽต Map music trends by creator.

A music label scrapes 100 dance-creator profiles with video scraping on, extracts music track names from the last 60 days, and spots which songs are gaining traction organically.

Why choose this scraper

What you get
No API key neededScrapes public profile pages directly, bypassing TikTok's developer registration and rate limits.
Bulk profile listsFeed in up to a million usernames or URLs per run from a prefill or your own CSV.
Nested video dataOptionally collect recent videos per profile with play counts, likes, shares, and music metadata.
Comment depthEnable comment scraping to pull text and author details nested inside each video object.
Fixed output schemaEvery profile, video, and comment returns in a consistent structure ready for CSV, JSON, Excel, or XML export.

How it compares

This Actor focuses on profile-list scraping with nested video and comment depth, while other TikTok scrapers emphasize hashtag or search-based discovery.

FeatureParseForgeTikTok ScraperTikTok Data Extractor
Scrape by username listYesNot listedYes
Nested video data per profileYesNot listedNot listed
Nested comment data per videoYesNot listedNot listed
Video date range filtersYesNot listedNot listed
Video engagement filters (min/max hearts)YesNot listedNot listed
Exclude pinned videosYesNot listedNot listed

Configure the run

Drive the Actor from a list of TikTok usernames or profile URLs, and filters run as each video is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"profiles": [
"charlidamelio",
"addisonre",
"bellapoarch",
"zachking",
"khaby.lame",
"willsmith",
"kyliejenner",
"therock",
"selenagomez",
"arianagrande",
"billieeilish",
"mrbeast",
"doja.cat",
"mileycyrus",
"jasonderulo",
"jlo",
"shakira",
"taylorswift",
"kimkardashian",
"rihanna",
"nickiminaj",
"cardib",
"badbunnypr",
"dualipa",
"edsheeran",
"brunomars",
"kendalljenner",
"mariahcarey",
"justinbieber",
"ninaagdal"
],
"maxItems": 10
}

A larger pull:

{
"profiles": [
"charlidamelio",
"addisonre",
"bellapoarch",
"zachking",
"khaby.lame",
"willsmith",
"kyliejenner",
"therock",
"selenagomez",
"arianagrande",
"billieeilish",
"mrbeast",
"doja.cat",
"mileycyrus",
"jasonderulo",
"jlo",
"shakira",
"taylorswift",
"kimkardashian",
"rihanna",
"nickiminaj",
"cardib",
"badbunnypr",
"dualipa",
"edsheeran",
"brunomars",
"kendalljenner",
"mariahcarey",
"justinbieber",
"ninaagdal"
],
"maxItems": 200
}

Pricing

Pay-per-result: $0.01866 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$1.87
1,000 results$18.66
10,000 results$186.60

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the TikTok Profile Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to TikTok through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/tiktok-profile-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results for some profiles?

Check that the profiles are public and the usernames are spelled correctly. Private or deleted accounts will be skipped. Review the run log for per-profile warnings.

Why are my video counts lower than expected?

The maxVideosPerProfile setting caps how many videos are collected per profile. Also, date filters and minHearts/maxHearts will further reduce the count. Try raising the cap or widening the filters.

The run is taking a long time with many profiles.

Scraping videos and comments adds significant time per profile. For large lists, start with includeVideos disabled to get profile metadata quickly, then re-run with video scraping on a smaller subset.

I enabled comments but don't see them in the output.

Comments are nested inside each video object, not at the profile level. Expand a video row in your dataset to find the comments array. Also verify maxCommentsPerVideo is set above zero.

Why do I get a 'cannot read properties' error in my integration?

Some profiles may have missing fields if TikTok's page structure changes. Use optional chaining in your code when accessing nested fields like videos or comments, and check the raw JSON output for the exact structure.

FAQ

QuestionAnswer
Do I need a TikTok account or API key to use this?No. The Actor reads public profile pages directly, so no login, API key, or developer registration is required.
Can I scrape private TikTok profiles?No. Only public profiles are accessible. If a profile is set to private, the Actor will skip it and log a warning.
How many profiles can I scrape in one run?You can set maxItems up to 1,000,000 profiles per run. The Actor processes them sequentially and respects platform rate limits automatically.
What video data do I get when I enable includeVideos?Each video returns play count, hearts, shares, comments count, music track name and artist, hashtags, publish date, and a direct video URL.
Can I filter videos by publish date?Yes. Use publishedAfter and publishedBefore in YYYY-MM-DD format to restrict videos to a specific date window.
How do comments work in the output?When includeComments is enabled, each video object contains a nested comments array with comment text, author name, and timestamp. You control the depth with maxCommentsPerVideo.
What format does the data export to?The Actor outputs to CSV, JSON, Excel, or XML. Nested video and comment data is stored as arrays within each profile row.
Can I scrape only profiles without videos?Yes. Keep includeVideos set to false, and the Actor returns only profile-level metadata: username, bio, follower count, following count, likes total, and verified status.
How do I input a list of profiles?Paste TikTok usernames (with or without '@') or full profile URLs into the profiles field. The Actor normalizes them automatically.
Does this Actor handle TikTok rate limiting?Yes. It includes built-in delays and retry logic to stay within TikTok's acceptable request patterns and avoid blocks.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by TikTok Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.