TikTok Engagement Rate
Under maintenancePricing
from $10.00 / 1,000 creators
TikTok Engagement Rate
Under maintenanceExtracts TikTok creator profile statistics and engagement metrics — follower and following counts, biography, and per-video engagement — from profile URLs. Delivers structured creator records to the Apify dataset.
Pricing
from $10.00 / 1,000 creators
Rating
0.0
(0)
Developer
Farhan Ali
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
TikTok Creator Stats creates a structured dataset of TikTok creator records. Each dataset item describes one profile and can include the creator's identifiers, display name, biography, profile image, follower and following counts, account flags, and computed engagement metrics derived from the profile's recent videos, along with the per-video statistics used in those calculations. Query the source by supplying one or more TikTok profile URLs, control request concurrency with max_concurrency, and retrieve records through the Apify Dataset API or export them as JSON, CSV, Excel, XML, or another supported format.
Dataset at a glance
| Property | Value |
|---|---|
| Source | tiktok.com |
| Record unit | One creator profile |
| Input methods | urls (one or more profile URLs) |
| Main identifiers | id, uniqueId (profile URL) |
| Delivery | Apify Dataset and API |
| Export formats | JSON, CSV, Excel, XML |
| Update model | Fresh records per Actor run |
| Pricing | $10 per 1,000 creators |
Coverage and available records
The Actor resolves each supplied TikTok profile URL and returns profile metadata plus engagement metrics computed from the profile's recent videos. Supported coverage includes:
- Profile identifiers, nickname, biography, and profile image.
- Follower, following, heart, video, and digg counts.
- Account flags (
privateAccount,ttSeller). videosEngagement— total likes and comments across recent videos divided by follower count.videosViewsEngagement— mean per-video engagement rate, where each video rate is(likes + comments) / views * 100.videoLastUploaded— most recent upload timestamp among the captured videos.- A
videosarray with per-video statistics used in the calculations.
Engagement metrics are computed by the Actor from captured video statistics; they are derived fields, not values published by TikTok. Private profiles and profiles with no accessible videos return partial or null engagement values.
Data dictionary
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
id | string | No | TikTok user ID | "107955" |
uniqueId | string | No | Profile URL | "https://www.tiktok.com/@kyliejenner" |
nickname | string | No | Display name | "Kylie 🤍" |
signature | string | Yes | Biography text | "this is me" |
avatarLarger | string | Yes | Profile image URL | "https://p16-sign-va.tiktokcdn.com/..." |
createTime | string | Yes | Account creation timestamp | "2015-01-01T00:00:00" |
bioLink | object | Yes | Biography link object | null |
privateAccount | boolean | Yes | Whether the account is private | false |
ttSeller | boolean | Yes | Whether the account is a TikTok seller | false |
nickNameModifyTime | string | Yes | Last nickname change timestamp | "2020-01-01T00:00:00" |
followerCount | integer | Yes | Number of followers | 395000000 |
followingCount | integer | Yes | Number of accounts followed | 125 |
heartCount | integer | Yes | Total likes received | 582000000 |
videoCount | integer | Yes | Number of videos posted | 420 |
diggCount | integer | Yes | Total diggs | 0 |
friendCount | integer | Yes | Number of friends | 0 |
videosEngagement | float | Yes | (likes + comments) / followers * 100 across recent videos | 2.34 |
videosViewsEngagement | float | Yes | Mean per-video (likes + comments) / views * 100 | 6.71 |
videoLastUploaded | string | Yes | Most recent upload timestamp | "2025-07-10T12:00:00" |
videos | array | Yes | Per-video statistics used in calculations | [{"id": "...", "stats": {"playCount": 1000000}}] |
The most stable field for deduplication is id.
Example dataset record
{"id": "107955","uniqueId": "https://www.tiktok.com/@kyliejenner","nickname": "Kylie 🤍","signature": "this is me","avatarLarger": "https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/avatar.jpeg","privateAccount": false,"ttSeller": false,"followerCount": 395000000,"followingCount": 125,"heartCount": 582000000,"videoCount": 420,"diggCount": 0,"friendCount": 0,"videosEngagement": 2.34,"videosViewsEngagement": 6.71,"videoLastUploaded": "2025-07-10T12:00:00"}
This record was produced from the profile URL https://www.tiktok.com/@kyliejenner/. The full dataset item also includes a videos array of per-video statistics; it is truncated here for readability.
Query and input reference
| Input | Type | Required | Default | Accepted values | Description |
|---|---|---|---|---|---|
urls | array of strings | Yes | — | TikTok profile URLs | List of profile links to process. |
max_concurrency | integer | No | 10 | 1–50 | Maximum number of concurrent requests. |
proxyConfiguration | object | No | Apify Residential | Apify proxy settings | Proxy configuration. |
Minimal request:
{"urls": ["https://www.tiktok.com/@kyliejenner/"]}
Request with concurrency control:
{"urls": ["https://www.tiktok.com/@kyliejenner/","https://www.tiktok.com/@justinbieber/"],"max_concurrency": 5}
Retrieve the data through the API
- Start the Actor with a JSON input containing
urls. - Wait for the run to finish, or use the synchronous run endpoint.
- Retrieve items from the run's default dataset.
- Paginate or export the dataset.
Example in Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("datascrapers/tiktok-creator-stats").call(run_input={"urls": ["https://www.tiktok.com/@kyliejenner/"],})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["uniqueId"], item["followerCount"], item["videosEngagement"])
For other languages, use the generated API tab in the Apify Console. Never place a real token in a URL or example.
Data quality and record handling
- Engagement metrics are derived by the Actor from captured video statistics, not published by TikTok.
- Engagement values are null when the profile has no accessible recent videos or zero followers.
- Private profiles return limited metadata and typically null engagement.
- Source-side changes to TikTok's profile or video response can change field availability.
- The Actor does not perform internal cross-run deduplication; each run is a fresh dataset.
- The recommended external deduplication key is
id. - Failed profiles are retried with exponential backoff and logged; they do not abort the whole run.
Export and pipeline examples
| Destination | Recommended method | Typical use |
|---|---|---|
| PostgreSQL/Supabase | Dataset API or webhook consumer | Creator analytics database |
| Google Sheets | Apify integration | Influencer shortlists |
| S3/cloud storage | Scheduled export or integration | Periodic creator snapshots |
Pricing and cost examples
The Actor charges per creator record written to the dataset, plus a one-time Actor start event. The per-result rate is $0.01.
| Creators | Estimated base cost |
|---|---|
| 100 | $1.00 |
| 1,000 | $10.00 |
Estimates depend on the verified pricing model and any selected proxy options. Standard Apify plan discounts may apply.
Limitations and responsible data use
- Collects publicly accessible TikTok profile data only.
- Availability depends on source-site uptime and rate limiting.
- Engagement metrics are estimates based on recent videos, not full historical data.
- No historical snapshots are stored unless you keep the datasets yourself.
- You are responsible for complying with TikTok's terms and applicable law when using the data.
Dataset questions
What does one dataset item represent?
One TikTok creator profile, including profile metadata, follower/following counts, and engagement metrics derived from recent videos.
Which field should I use as a unique identifier?
id is the stable TikTok user ID; uniqueId is the profile URL and is also unique.
Are fields nullable or conditional?
Yes. videosEngagement, videosViewsEngagement, and videoLastUploaded are null when the profile has no accessible videos; private profiles return limited metadata.
Can I retrieve the records as CSV or JSON?
Yes. The dataset can be exported as JSON, CSV, Excel, or XML from the Apify Console or Dataset API.
How do I paginate large datasets?
Use the Dataset API pagination, or process more profiles per run by adding them to urls.
Does the Actor return historical data?
No. Each run returns the profile and recent-video statistics visible at run time.
What counts as a billable result?
Each creator record written to the dataset is one billable result, at $0.01 per creator.
Related datasets from Data Scrapers
- TikTok Comment Scraper — comment-level records that complement creator-level engagement.
- TikTok Profile Scraper — post and profile records for the same creators.
- Instagram Post Scraper — Instagram post and engagement records for cross-platform analysis.
- YouTube Channel Scraper — channel-level metrics for the same creator economy use cases.
Data Scrapers support
Need an additional field, record type, or export workflow? Contact Data Scrapers at stardustspotlight@gmail.com. Include a sample source URL, required fields, expected record volume, and preferred delivery format.