TikTok Profile, Video & Comments Scraper + Growth Tracker avatar

TikTok Profile, Video & Comments Scraper + Growth Tracker

Pricing

from $1.00 / 1,000 profiles

Go to Apify Store
TikTok Profile, Video & Comments Scraper + Growth Tracker

TikTok Profile, Video & Comments Scraper + Growth Tracker

Scrape TikTok profiles, videos and comment threads in bulk: followers, likes, plays, engagement rate, bio emails & links, music, hashtags, captions/transcripts and every comment with replies. Track follower & view growth between runs. No browser, no login.

Pricing

from $1.00 / 1,000 profiles

Rating

0.0

(0)

Developer

Aleksandr Jelohhin

Aleksandr Jelohhin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Get clean, export-ready TikTok data for profiles, videos and comment threads in bulk: followers, total likes, plays, shares, saves, engagement rate, emails and links from bios, music, hashtags, transcripts from TikTok's captions, and every comment with its replies.

Turn on growth tracking and schedule it: each run tells you how many followers, likes, plays and comments each account or video gained since the last run, per day and in percent.

No TikTok account, no cookies, no browser. Fast and cheap, with flat per-result pricing.

Why this one

  • Flat, predictable pricing. No add-on fees on top of each result. Comments and transcripts are billed per item delivered, and failed or empty lookups are free.
  • Metrics you'd otherwise compute in a spreadsheet: engagement rate, plays per follower, average likes per video, follower/following ratio, video age.
  • Growth tracking built in. You don't have to diff exports yourself.
  • Exact counters. TikTok's own heartCount overflows to a negative number for very big accounts. We read the exact values, so 2.7B likes stays 2.7B.
  • Flat rows. Every column exports cleanly to CSV / Excel / Google Sheets, with no nested authorMeta.* to unpick.
  • Bulk-friendly input. Usernames, @handles, profile links, video links, photo posts, vm.tiktok.com / vt.tiktok.com share links and bare video IDs all go in one list. Duplicates are merged.
  • Banned / deleted accounts reported, not dropped. You get a free not-found row with TikTok's reason, which helps when you're vetting a list of creators.

What you can do with it

  • Influencer vetting: paste 500 handles and get followers, total likes, average likes per video, verification, business/seller flags and the contact email from each bio.
  • Campaign reporting: track the plays, likes, shares and saves of your sponsored videos daily, with growth per day.
  • Competitor & creator tracking: follower growth of competitors or your roster, week over week.
  • Comment mining & sentiment: full comment threads with replies, likes, and whether the creator liked or pinned each comment.
  • Content research: transcripts of what's said in a video, its sound, hashtags and mentions.

Input

FieldWhat it does
ProfilesUsernames (mrbeast, @khaby.lame) or profile links
VideosVideo / photo links, share links (vm.tiktok.com/…) or video IDs
Comments per videoTop-level comments per video (0 = off)
Replies per commentReplies under each scraped comment (0 = off)
Add transcriptSpoken text from TikTok's captions, in your preferred language
Track growth + Tracker nameCompare every profile/video with the previous run of the same tracker
ProxyApify Proxy recommended; switches to residential automatically if TikTok blocks

Example:

{
"profiles": ["mrbeast", "https://www.tiktok.com/@khaby.lame"],
"videos": ["https://www.tiktok.com/@tiktok/video/7106594312292453675", "https://vm.tiktok.com/ZMhvqkFWM/"],
"maxCommentsPerVideo": 100,
"maxRepliesPerComment": 5,
"includeTranscript": true,
"trackGrowth": true,
"monitorName": "my-creators"
}

Output

The dataset has a type column (profile, video, comment, not-found) and a view for each. Export it as JSON, CSV, Excel, XML or RSS, or read it through the API.

Profile (the growth numbers are illustrative)

{
"type": "profile",
"username": "mrbeast",
"nickname": "MrBeast",
"followers": 144599186,
"following": 346,
"likes": 1543257983,
"videos": 483,
"avgLikesPerVideo": 3195151,
"followersPerFollowing": 417916.72,
"bio": "Checkout My New Book!👇",
"bioLink": "http://themostdangerousgames.com",
"emails": [],
"verified": true,
"privateAccount": false,
"isOrganization": false,
"isSeller": false,
"profileUrl": "https://www.tiktok.com/@mrbeast",
"growth": {
"since": "2026-10-20T07:00:00.000Z",
"days": 1,
"change": { "followers": 41200, "likes": 2900000, "videos": 1 },
"perDay": { "followers": 41200, "likes": 2900000, "videos": 1 },
"changePercent": { "followers": 0.03, "likes": 0.19, "videos": 0.21 }
}
}

Video

{
"type": "video",
"id": "7478435819724934446",
"url": "https://www.tiktok.com/@garyvee/video/7478435819724934446",
"description": "Please please never ever ever ever ... make yourself lesser than anyone. #lifeadvice #garyvee #selfesteem",
"createdAt": "2025-03-05T21:11:00.000Z",
"authorUsername": "garyvee",
"authorFollowers": 15500000,
"plays": 306700,
"likes": 21500,
"comments": 354,
"shares": 1974,
"saves": 4270,
"engagementRate": 9.16,
"playsPerFollower": 0.02,
"durationSecs": 26,
"musicTitle": "original sound - GaryVee",
"hashtags": ["lifeadvice", "garyvee", "selfesteem"],
"subtitleLanguages": ["eng-US"],
"transcript": "You feel lesser than in a room? …",
"coverUrl": "https://p16-common-sign.tiktokcdn-eu.com/…"
}

Comment (replies have isReply: true and a parentCommentId)

{
"type": "comment",
"videoId": "7106594312292453675",
"commentId": "7127915639835460357",
"parentCommentId": null,
"isReply": false,
"text": "THERES FROGS IN MINECRAFT SINCE WHEN!!!!",
"likes": 8,
"replyCount": 1,
"createdAt": "2022-08-04T07:13:57.000Z",
"likedByCreator": false,
"pinnedByCreator": false,
"authorUsername": "a.o.r.xx",
"authorProfileUrl": "https://www.tiktok.com/@a.o.r.xx"
}

The run's SUMMARY record (key-value store) lists each input's status, counts and charges.

Growth tracking

  1. Turn on Track growth between runs and give it a Tracker name.
  2. Schedule the task (daily or weekly) in Apify Console → Schedules.
  3. The first run records a baseline (growth: null). Every later run adds a growth block comparing it with the previous run: change, change per day and change in percent.

The last 60 snapshots per profile/video are kept in the key-value store tiktok-growth-<name> on your account. Use a different name per list.

Pricing

Pay per result, with no subscription and no add-ons:

EventPrice
Profile scraped$0.001
Video scraped$0.0015
Comment or reply scraped$0.0003
Transcript extracted (only when a video has captions)$0.001

1,000 profiles cost $1. One video with 1,000 comments costs about $0.30. A video with its transcript costs $0.0025. Not-found inputs, failed lookups and videos without captions are free.

Limits and good to know

  • What it covers: the profiles and videos you give it, plus their comments. It does not list a profile's videos, hashtag feeds or search results. TikTok only serves those to signed-in browser sessions, and we don't fake those. To find videos, start from links you already have: a list, a spreadsheet, or another tool's output.
  • Transcripts come from TikTok's own captions (auto-generated or the creator's). Videos without captions get transcript: null and are not charged for it.
  • Media URLs (playUrl, coverUrl, images) are signed by TikTok and expire after some hours. Download them soon after the run if you need the files.
  • Comments: you get the comments TikTok shows logged-out visitors. On some videos that's far fewer than the comment counter, because the counter also includes replies and comments TikTok hides, filters or has deleted. A reply thread TikTok hides comes back empty. You're only charged for comments actually delivered.
  • Counters such as plays are rounded by TikTok on some videos (e.g. 1.6M → 1600000).
  • Private accounts return profile stats but no video data. Deleted / banned items return a not-found row.
  • Only public data is collected. Make sure your use complies with TikTok's terms and with privacy law (e.g. GDPR) where you process personal data such as usernames or emails.