TikTok User Search Scraper
Pricing
from $3.50 / 1,000 results
TikTok User Search Scraper
Finding the right TikTok creators by hand is slow. Search any keyword and get full profiles in bulk: username, bio, bio link, followers, likes, videos, verified, TikTok Shop and live status. Built for influencer discovery and lead gen. No login.
Pricing
from $3.50 / 1,000 results
Rating
0.0
(0)
Developer
Crawl Craft
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
What is TikTok User Search Scraper?
TikTok User Search Scraper is an Apify Actor that turns any keyword into a list of public TikTok profiles. Type a niche, brand or name, and the Actor returns username, bio, bio link, followers, likes, videos, verification and TikTok Shop status for every account found, plus live status when profile enrichment is on. No TikTok login is needed.
- Keyword to profiles in bulk: use it as a TikTok profile scraper for many keywords or TikTok search links in one run, with one row per account.
- Full profile details: exact following, friends and likes-given counts, bio link, shop and commerce info, privacy and duet/stitch/comment settings, and story status.
- Account creation date and language: optional extra fields for deeper creator research.
- Ready to export: download the dataset as JSON, CSV or Excel.
- No login needed: you can run a TikTok user search without login, straight from the Apify Console.
- Pay per profile: $5 per 1,000 results on the Free plan, less on paid plans, and failed searches are not charged.
To start, click Try for free, enter a keyword such as cats and press Start.
What data can you extract from TikTok user search?
As a TikTok user profile scraper, the Actor returns one record per profile found. The TikTok profile data below uses the exact field names of the dataset, and you can export it as JSON, CSV or Excel. Some fields can be empty (null) when TikTok does not provide a value; the notes in the table explain the cases.
| Field | Description | Example |
|---|---|---|
id | TikTok's numeric account ID. | 7158366277701010438 |
name | The @handle of the account. | catso14147 |
profileUrl | Link to the TikTok profile (the search link on error rows). | https://www.tiktok.com/@catso14147 |
nickName | Display name of the account. | world wide cats |
verified | True when TikTok shows the blue verification badge. | false |
signature | Profile bio text. | Cats from all over the world |
bioLink | Website link shown in the bio, if any. | null |
avatar | Profile picture (720 px). | https://p16-common-sign.tiktokcdn.com/...720:720.jpeg |
commerceUserInfo | Business / commerce account details as TikTok reports them. | {"commerceUser": false} |
privateAccount | True for private accounts. | false |
roomId | ID of the running live stream, empty when the account is not live. | "" |
ttSeller | True when the account sells through TikTok Shop. | false |
createTime | Account creation time in unix seconds. | 1666692899 |
hasActiveStory | True when the account has a story online right now. | false |
following | Accounts this profile follows. | 0 |
friends | Mutual follows. | 0 |
fans | Number of followers. | 2730918 |
heart | Total likes (hearts) on the account's videos. | 15197373 |
video | Number of public videos. | 410 |
digg | Videos this account has liked. | 0 |
followDatasetUrl | Always null in this Actor (kept for a stable output shape). | null |
originalAvatarUrl | Profile picture URL as served by TikTok. | https://p16-common-sign.tiktokcdn.com/...720:720.jpeg |
region | Creator region. TikTok does not show it to logged-out visitors, so it is null. | null |
isUnderAge18 | False for every profile with full details; null when the details could not be loaded. | false |
user | The full TikTok user object: IDs, avatars, settings and flags. | {"uniqueId": "catso14147"} |
stats | Following, followers, likes, videos and likes given. | {"followerCount": 2730918} |
scrapedAt | When the record was created (ISO 8601, UTC). | 2026-10-08T16:21:58.822Z |
secUid | TikTok's stable secure account ID. | MS4wLjABAAAA... |
avatarThumb | 100 px profile picture. | https://p16-common-sign.tiktokcdn.com/...100:100.jpeg |
avatarLarger | 1080 px profile picture. | https://p16-common-sign.tiktokcdn.com/...1080:1080.jpeg |
customVerify | Custom verification text shown by TikTok, if any. | null |
enterpriseVerifyReason | Business verification reason, if any. | null |
followStatus | Follow status reported in search (0 for logged-out visitors). | 0 |
isLive | True when the account was live while scraping. | false |
createTimeISO | Account creation time (ISO 8601, UTC). | 2022-10-25T10:14:59.000Z |
avgHeartsPerVideo | Likes received divided by videos. | 37066.76 |
language | Profile language code. | ar |
isOrganization | 1 for organization accounts, 0 otherwise. | 0 |
searchQuery | The keyword that found this profile. | cats |
input | Same as searchQuery, for mapping results back to your input. | cats |
searchRank | Position in TikTok's results for the query (1 = first). | 1 |
searchCursor | Result position reached after the page that held this profile. | 10 |
searchFollowerCount | Follower count as shown in the search results. | 2700000 |
searchTotalFavorited | Likes count as shown in the search results. | 15197373 |
profileEnriched | True when profile details beyond the search result were loaded. | true |
profileSources | Detail source labels for this profile. | ["api", "page"] |
profileError | Why some profile details are missing, if they are. | null |
processor | Name and version of the scraper that produced the record. | tiktok-user-search-scraper/1.0 |
platform | Always tiktok. | tiktok |
error | Error message on rows for queries that returned nothing. | null |
errorCode | NO_RESULTS, SEARCH_FAILED or EXCEPTION on error rows. | null |
url | TikTok search link of the query (error rows only). | https://www.tiktok.com/search/user?q=cats |
The dataset also ships ready-made views: Profiles overview, Engagement stats, Account details, Profile settings, Search results and Errors.
Use cases for TikTok profile data
- TikTok creator discovery: search a niche keyword, then sort by
fans,heartandavgHeartsPerVideoto shortlist creators. - TikTok influencer search: compare the
fansandvideocounts of the accounts a niche keyword returns. - Influencer sheets: build a TikTok influencer finder sheet with
name,profileUrl,fansandsignaturefor each account. - Lead generation: collect
bioLinkandsignaturefor a TikTok lead generation list of accounts that publish a website in their bio. - Bio links: use the Actor as a TikTok bio link scraper to collect the websites accounts publish in
bioLink. - TikTok Shop research: filter on
ttSellerandcommerceUserInfoto see commerce accounts in a category. - Creator benchmarking: compare
fans,video,followingandfriendsacross a niche for TikTok creator research. - Audience analytics: use
heart,diggandavgHeartsPerVideofor TikTok creator analytics. - Brand monitoring: search your brand name to collect TikTok user data for matching accounts. Filter on
verifiedto build a TikTok verified accounts list. - Outreach lists: export profile links, bios and bio links to build a TikTok influencer outreach list in a spreadsheet.
- Live creator tracking: use
isLiveandroomIdto see which accounts were live when the run happened.
How to scrape TikTok profiles by keyword
A TikTok account search needs only a keyword and a profile count.
- Create a free Apify account.
- Open TikTok User Search Scraper.
- Add keywords or TikTok user-search links in TikTok search links or keywords and set Profiles per query.
- Choose whether to collect full profile details and the account creation date and language.
- Click Start and wait for the run to finish.
- Download the dataset as JSON, CSV or Excel.
How to find TikTok creators in a niche
Enter your niche as a keyword, for example fitness coach, in urls or searchQueries. As a TikTok creator search scraper, the Actor returns the accounts TikTok lists for that search, in TikTok's result order, with searchRank showing each position. That saves you from scrolling the app, and it lets you find TikTok influencers by keyword in one run.
How to find small TikTok creators
Search a narrow, specific keyword and sort the dataset by fans ascending. Because every row has fans, heart and video, the results from this TikTok creator scraper make small accounts with active content stand out. You can also use avgHeartsPerVideo to spot small creators whose videos get strong likes.
How to find TikTok Shop creators
Run your product keyword and filter rows where ttSeller is true. Rows also carry commerceUserInfo, so you can see how TikTok reports commerce details for each account. The same flow lets you find TikTok Shop sellers and creators in one export.
How to find TikTok live creators
Search your keyword and filter rows where isLive is true. isLive reflects whether the account was live while the profile was collected, and roomId holds the live stream ID when it is. Turn on Account creation date and language to get live status.
How to export TikTok profiles to CSV or Excel
Open the finished run, go to the Storage tab and choose CSV or Excel under export. You can export TikTok profiles to Excel or CSV in one click, using the same field names as the table above.
How much does it cost to scrape TikTok profiles?
TikTok User Search Scraper uses tiered pay-per-event pricing: $5 per 1,000 results on the Free plan, and less on paid plans. One profile row is one main_result event. On the Free plan, a run that saves 1,000 profiles costs $5. Rows for queries that returned no profiles or could not be searched are not charged. Each run also has a small start charge of $0.00005 (the Actor Start event).
| Apify plan | Price per 1,000 results |
|---|---|
| Free | $5 |
| Bronze | $4.5 |
| Silver | $4 |
| Gold / Platinum / Diamond | $3.5 |
Free-plan users get up to 10 profiles per run, and paid Apify plans have no per-run profile cap. See the Pricing tab for current rates.
⬇️ Input
Provide at least one keyword or TikTok search link; if both lists are empty, TikTok User Search Scraper searches for cats. You can paste TikTok user-search links, any TikTok search link with a q= keyword, profile links (a profile link searches for that handle, which works as a quick TikTok user lookup) or plain keywords.

See the Input tab for every option. This is an example input, built from the input form defaults:
{"urls": ["https://www.tiktok.com/search/user?q=cats"],"maxProfilesPerQuery": 10,"enrichProfiles": true,"enrichProfilePages": true,"dedupeAcrossQueries": false,"concurrency": 5,"max_retries": 3,"request_delay": 0,"proxyConfiguration": { "useApifyProxy": false }}
searchQueries: extra keywords, combined with the links above.maxProfilesPerQuery: the maximum profiles per query (minimum 1). TikTok may return fewer for rare keywords.enrichProfiles: works like a TikTok user info scraper by adding exact counts, bio link, shop and commerce info, privacy and duet/stitch/comment settings and story status.enrichProfilePages: adds account creation date, language, live status and organization flag. This is slower, so turn it off when you only need counts and bios.dedupeAcrossQueries: keeps an account only once, under the first query that returned it.concurrency(1-20),max_retries(1-10) andrequest_delay(0-10 seconds): optional speed and reliability tuning.
💡 Keep maxProfilesPerQuery low for a first test run.
⬆️ Output
The scraped results are shown as a dataset in the Storage tab. The table view is for convenience and doesn't show all the fields. Results come in query order, then TikTok's result order. Every profile row from a TikTok profile search carries searchQuery and searchRank.

Export formats: JSON, CSV and Excel. When a run stores at least one row, all rows are also saved as one combined JSON file.
This is an example output for the query cats, showing selected fields with values from the dataset schema examples (not a captured run):
{"id": "7158366277701010438","name": "catso14147","profileUrl": "https://www.tiktok.com/@catso14147","nickName": "world wide cats","verified": false,"signature": "Cats from all over the world","bioLink": null,"privateAccount": false,"ttSeller": false,"createTime": 1666692899,"createTimeISO": "2022-10-25T10:14:59.000Z","fans": 2730918,"heart": 15197373,"video": 410,"following": 0,"friends": 0,"digg": 0,"avgHeartsPerVideo": 37066.76,"language": "ar","isLive": false,"searchQuery": "cats","searchRank": 1,"profileEnriched": true,"scrapedAt": "2026-10-08T16:21:58.822Z","platform": "tiktok"}
Limitations and error handling
- Result counts: TikTok may return fewer profiles than
maxProfilesPerQueryfor rare keywords. Run a small test to confirm. - Free plan: up to 10 profiles per run.
- Public data only: private accounts can appear in results with
privateAccountset totrue, but only public profile information is available. - Region:
regionis null because TikTok does not show it to logged-out visitors. - Invalid entries: entries that are not a TikTok link or a keyword are skipped. If none of your entries is valid, the run stops with an input message.
- Slower detail fields: collecting account creation date and language takes longer than the basic search fields.
Error rows
A query that returns no profiles, or cannot be searched, produces one error row with errorCode set. The Errors view lists them, and they are not charged.
| Code | Meaning | What to do |
|---|---|---|
NO_RESULTS | The query returned no profiles. | Try another keyword. |
SEARCH_FAILED | TikTok did not return results for the query. | Try again later or pick a proxy in the Proxy configuration. |
EXCEPTION | The query stopped unexpectedly. | Run it again; contact us if it repeats. |
Integrating TikTok User Search Scraper with other apps
You can start the Apify TikTok User Search Scraper from the Apify API, schedule it, and connect finished runs to other tools through Apify webhooks and integrations. See the API tab for ready-made code snippets in JavaScript, Python and the CLI, and the Apify integrations documentation for connecting results to spreadsheets and automation tools. Started through the API, it works as a TikTok user search API for keyword-driven workflows.
Other TikTok scrapers by crawl_craft
If you need videos or transcripts rather than accounts, pair this TikTok users scraper with the Actors below.
| Actor | What it extracts | When to use it |
|---|---|---|
| TikTok Video Scraper | Captions, hashtags, views, likes, comments, shares, author and music data, plus video downloads and transcripts from video URLs. | Use it once you know which videos to analyze, after finding creators here. |
| TikTok Transcript Scraper | Timestamped transcripts, subtitle languages, speech-to-text and translation, plus video and author data. | Use it when you need what creators say in their videos, not who they are. |
Is it legal to scrape TikTok?
As a TikTok data extraction tool, the Actor only extracts data that users have made publicly available on TikTok and does not extract private data such as email addresses or location. Results may still contain personal data, so only collect it with a legitimate reason, consider GDPR (Regulation (EU) 2016/679) and TikTok's terms, and consult a lawyer if you are unsure. Read Apify's guide on whether web scraping is legal and its post on ethical web scraping.
❓ FAQ
How much does TikTok User Search Scraper cost?
It costs $5 per 1,000 results on the Free plan and less on paid plans, on pay-per-event pricing with one event per profile. Free-plan users get up to 10 profiles per run. See the Pricing tab for current rates.
Do I need a TikTok account or API key?
No. You can scrape TikTok without login or an API key, using keywords or TikTok search links alone.
How many profiles can I get per keyword?
Set maxProfilesPerQuery to the number you want. TikTok may return fewer for rare keywords, and free-plan runs stop at 10 profiles.
Can I scrape private TikTok data?
No. Only public profile information is collected. Private accounts are flagged with privateAccount.
Can I get follower counts, bio links and verified status?
Yes. Each profile includes fans, signature, bioLink and verified, so a TikTok followers count scraper run gives you follower numbers, bios, website links and verification for every account.
Can I find niche accounts by keyword?
Yes. Any query that works in TikTok's own user search works here, including names, niches and brands, so you can find TikTok niche accounts by keyword in one run.
Can I use it with the API, Python or Node.js?
Yes. Start runs and read the dataset through the Apify API, with ready-made snippets in the API tab. The dataset then works as a TikTok profile API for your own tools.
Do I need proxies?
Proxy settings are optional. If you are unsure, leave the default.
What is the difference between this and a TikTok video scraper?
This Actor is a TikTok user scraper for accounts found by keyword. For video-level data, use TikTok Video Scraper.
Can I get transcripts of what creators say?
Not from this Actor. Use TikTok Transcript Scraper for transcripts.
Your feedback
Found a bug or want a new field? Open an issue in the Issues tab. For a custom solution, email hello.crawlcraft@gmail.com.