TikTok Followers Scraper - Export Followers & Following
Pricing
Pay per event
TikTok Followers Scraper - Export Followers & Following
Export the followers of any public TikTok account, the accounts it follows, or both. One row per account with handle, display name, bio, follower count, video count, likes and verification, plus the profile itself. For audience research and influencer vetting. No login.
Pricing
Pay per event
Rating
0.0
(0)
Developer
SR
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
2
Monthly active users
24 days ago
Last modified
Categories
Share
TikTok Followers Scraper: export follower and following lists
TikTok Followers Scraper exports the followers of any public TikTok account, the accounts that profile follows, or both, as one clean row per account. Use it for audience research, influencer vetting, competitor analysis and lead lists. Each row includes a handle, display name, profile URL, bio, counts, verification status and avatar when TikTok supplies them. You can include the requested account itself as a separate row with its profile statistics. No TikTok login, cookies or developer account are required.
What does the TikTok Followers Scraper do?
Give it one or more TikTok profiles and choose a list: followers, following or both. The scraper reads the public follower list or following list of each account and returns every account it receives, up to the limit you set. Results land in an Apify dataset that you can download as JSON, CSV or Excel, or read through the Apify API in your own pipeline.
- Export a TikTok followers list or following list for many accounts in one run.
- Get the requested profile's own numbers: followers, following, videos, total likes, friends, bio link, organisation flag and more.
- Keep track of which list each row came from with
result_typeandof_account. - Missing values stay null. The scraper never invents a zero.
How to use the TikTok follower scraper
- Open the actor's input page and add the profiles you want, for example
duolingo,@zachkingorhttps://www.tiktok.com/@duolingo. - Choose
followers,followingorbothinlistType. - Set how many followers and how many followed accounts you want per profile.
- Start the run, then export the dataset or read it through the API.
Input
Give profiles as an array of profile URLs, @handles or bare handles. A comma-separated or newline-separated string also works. Invalid entries are ignored; at least one usable account is required. Exact repeated handles are processed once. Capitalization is preserved.
| Field | Default | Meaning |
|---|---|---|
profiles | Required | TikTok accounts to inspect. |
listType | followers | followers, following or both. |
maxFollowersPerProfile | 200 | Maximum followers per requested account, up to 5,000. |
maxFollowingPerProfile | 200 | Maximum followed accounts per requested account, up to 5,000. |
includeProfile | true | Include the requested account as its own billed profile row. |
country | us | Country sent with the list request; it can affect ordering. |
language | en | Language sent with the request. |
proxyCountryCode | Empty | Optional country from which to request the data. |
For compatibility, a zero or null list limit uses the default of 200. Null includeProfile also means true. Each side has its own limit: requesting both lists with a limit of 200 for each can return 400 relationship rows for one account, plus its account row.
Example input that exports the accounts Zach King follows:
{"profiles": ["zachking"],"listType": "following","maxFollowingPerProfile": 200}
TikTok Followers Scraper output
The dataset contains one row per requested account when includeProfile is enabled, followed by one row per returned follower or followed account. All requested account rows appear first, in the order of your input. Relationship rows follow in the same account order; when you request both lists, followers come before following. The position field numbers the final dataset from one.
Use result_type to distinguish account, follower and following. Relationship rows have of_account, which identifies the account whose list supplied the row. The same person can appear in the lists of two different requested accounts, and those remain separate relationships. Duplicate people within one side of one account are removed.
Every row retains these fields: handle, url, nickname, author_id, sec_uid, bio, follower_count, following_count, video_count, total_likes, author_verified, is_private, is_live, avatar_url and position. Relationship rows also contain verified_reason. Requested account rows additionally contain bio_link, friend_count, following_visible, is_organization, region, language and created_at.
Statistics are integers when provided. Missing source values remain null; they are never presented as a measured zero. A row also includes source, platform, fetched_at, profile_url, profile_id, name and followers for combining profiles across data sources. These fields supplement the original names. row_id identifies a relationship within the requested account and list type.
A real following row from the example input above (run on 5 October 2026; the run returned the account row plus 181 followed accounts):
{"result_type": "following","handle": "lindseystirling","url": "https://www.tiktok.com/@lindseystirling","nickname": "Lindsey Stirling","author_id": "6706905670807634949","sec_uid": "MS4wLjABAAAARbjngGE67wPghxm4CNSMqtLlrCvCRUxzifKdkg7r7F5OrG5JSECT1INkuQADOYkx","bio": "Snow Waltz Tour 2026 ✨\nLATAM Duality Tour 2026 💛💙\nMaster of Tides Cruise 2027 ⚓️","follower_count": 5200000,"total_likes": 119900000,"author_verified": true,"verified_reason": "verified","avatar_url": "https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/65cf214b91d69c3aa77ad7922ce4a008~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=9640&refresh_token=358c32a3&x-expires=1791410400&x-signature=nk8af6HmAphirkmCIYTrk2RQKdY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=81f88b70&idc=useast5","is_live": false,"following_count": 174,"video_count": 1404,"is_private": false,"of_account": "zachking","position": 2,"source": "tiktok-followers-scraper","platform": "tiktok","fetched_at": "2026-10-05T22:45:48.240Z","row_id": "[\"following\",\"zachking\",\"6706905670807634949\"]","profile_url": "https://www.tiktok.com/@lindseystirling","profile_id": "6706905670807634949","name": "Lindsey Stirling","followers": 5200000}
Use cases for a TikTok follower list export
- Influencer vetting. Look at who actually follows a creator: how many followers are verified, how many have videos of their own, and how many look like empty accounts.
- Audience overlap. Export the followers of two or more accounts and compare
author_idvalues to see how much audience two creators or brands share. - Competitor research. Read the following list of a competing brand to see which creators, partners and publications it follows.
- Creator discovery and outreach. Collect the accounts a well-known creator follows, filter by
follower_countandauthor_verified, and build a shortlist of similar creators. - Snapshots over time. Run the same profile weekly and compare datasets by
fetched_atto see who joined a list.
Compared with other ways to get a TikTok followers list
| Approach | What you get | Limits |
|---|---|---|
| Scrolling the list in the TikTok app | The names you can see on screen | Manual, no counts per follower, nothing to export |
| Browser extensions and export websites | A CSV of the list for one account | Usually tied to your own logged-in session, one account at a time |
| TikTok's official research access | Structured data for approved researchers | Application and approval required, not open to most businesses |
| This TikTok followers scraper | One row per follower or followed account, with counts, verification and the profile row, for many accounts per run | Public data only; TikTok decides how much of a very long list it serves |
The scraper runs on Apify, so you can schedule it, call it from the API, or connect it to integrations such as Google Sheets, webhooks and automation tools without your own TikTok login.
Pricing
The existing pay-per-event price is unchanged. A valid run incurs one run_start event. Each delivered follower or followed-account row incurs one follower event. Each delivered requested-account row incurs one profile event. Turning off includeProfile removes those account rows and their profile charges.
| Event | Free plan | Paid plans |
|---|---|---|
| Run started | $0.0005 per run | $0.0004 per run |
| Follower or following row | $0.0007 per row | $0.0005 per row |
| Requested profile row | $0.0007 per row | $0.0005 per row |
Only delivered rows incur row charges. A valid search that returns no rows has no follower or profile charge, while its existing run-start charge still applies. Invalid input is handled without a run-start charge. Free Apify plans receive at most ten dataset rows per run, including requested profile rows. Paid plans can collect up to the requested limit for each account and side, subject to what TikTok makes available.
As an example, exporting 1,000 followers of one account with its profile row on a paid plan costs one run start, 1,000 follower rows and one profile row: about $0.50.
Empty lists and source limits
A public account can hide its following list independently of its privacy setting. Such a list is reported as list_hidden; the account's public profile and available followers can still be returned. A private account can hide both lists. An unknown handle is reported as no_such_account and contributes no invented account row.
TikTok can stop serving a long list before its full count is reached. The summary records listsTruncatedByTikTok when the source reports this condition. If a later page is refused, rows already collected are retained. The errors record names the affected account and reason. warnings and partial describe incomplete collection.
Summary and exports
Read the default dataset for rows and the summary key-value record for totals. The summary includes requested accounts, returned account rows, followers, following, pages read, unknown accounts and source truncation counts. The errors record is written when an account or list cannot be read. Download the dataset in JSON, CSV or Excel through Apify's dataset export tools.
Counts and list membership change over time. fetched_at records when a row was collected, so repeated runs can be compared as snapshots. A returned list is a view of the accounts served at that time, rather than a guarantee that every follower of a very large profile is available.
FAQ
Can I collect both followers and following?
Yes. Set listType to both and specify the limit for each side independently. The result type and of_account preserve which relationship each row represents.
Why is a public account's following list empty?
The account may have hidden that list. Public profile visibility and following-list visibility are separate settings. Check the account row's following_visible field and the errors record.
Does including the requested profile cost extra?
Yes. Each delivered account row incurs one profile event at the existing listed price. Set includeProfile to false to collect only relationship rows.
Can I use the data for audience overlap?
Yes. Compare returned author_id or handle values across requested accounts, and keep of_account to identify each relationship. A person following both accounts appears once under each account.
Is this a TikTok following list viewer?
It works as one for public accounts, without logging in: the following list comes back as a dataset you can sort and filter rather than a page you scroll. Hidden lists and private accounts stay hidden.
Do I need a TikTok account or login to export followers?
No. The scraper reads only what TikTok shows publicly and needs no TikTok login, cookies or developer access.
Is it legal to scrape TikTok followers?
The scraper collects only publicly visible profile information. Follower lists contain personal data, so make sure your use complies with the privacy rules that apply to you, such as GDPR, and with TikTok's terms. If you are unsure, ask your legal advisor.