Tiktok Scraper
Pricing
from $0.40 / 1,000 results
Tiktok Scraper
Extract TikTok data from profiles, videos, and hashtags using URLs or search queries. Scrape usernames, followers, likes, shares, videos, music, and post details. Export data, run via API, automate schedules, monitor runs, or integrate with your tools.
Pricing
from $0.40 / 1,000 results
Rating
0.0
(0)
Developer
Data Doping
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
All-in-one TikTok data extraction for profiles, videos, followers, comments, search, hashtags, and music — in a single Apify Actor.
Fill only the input sections you need. Empty sections are skipped automatically. Results are split into separate, labeled datasets so each data type has its own clean table.
Built for influencer research, competitor intelligence, social listening, content analytics, lead generation, and data pipelines.
Why Choose This Scraper?
- One actor, seven workflows — profiles, videos, followers/following, comments, creator & video search, hashtags, and music
- Structured output — separate datasets for posts, profiles, connections, comments, search, hashtags, music, and errors
- Clockworks-style post views — Overview, Posts, Authors, Music, and Video tabs inside the Posts dataset
- Flat, export-ready fields — captions, engagement, author info, music, and video URLs without nested JSON cleanup
- Optional profile analytics — engagement rate, averages, posting frequency, and viral post count
- Mixed inputs — usernames, profile URLs, video URLs, video IDs, hashtags, and music IDs in the same run
- Partial success — one failed target does not stop the rest; errors are recorded in a dedicated dataset
- Export to JSON, CSV, Excel, or integrate via the Apify API
Built for Real-World Use Cases
Influencer & Creator Research
Audit creator profiles, recent posts, engagement patterns, and audience connections in one run.
Competitor & Market Intelligence
Track what competitors post, which sounds they use, and how their content performs.
Social Listening & UGC Research
Scrape comments and replies on viral videos; search creators and videos by keyword.
Hashtag Monitoring
Measure hashtag reach and track related videos by tag.
Lead Generation & Audience Building
Export follower and following lists with profile metadata for outreach or enrichment.
Data & AI Pipelines
Feed structured TikTok datasets into dashboards, warehouses, or LLM workflows.
What You Can Scrape
| Section | What you get |
|---|---|
| 👤 Profiles | Bio, followers, likes, video count, verification, region; optional recent posts and analytics |
| 🎬 Videos | Full video metadata, author, engagement, music, download URL; optional related videos |
| 👥 Followers & Following | Follower or following accounts with avatars and counts |
| 💬 Comments | Top comments and optional replies per video |
| 🔍 Search | Creator accounts by keyword; video search results go to Posts |
| #️⃣ Hashtags | Hashtag metadata plus videos using the tag |
| 🎶 Music | Sound metadata plus videos using the sound |
Setup
This actor requires a DataDoping API key.
- In the Apify Console, open Settings → Environment variables for this Actor.
- Add
API_KEYwith your DataDoping API key. - Save and run.
For local development, copy .env.example to .env and set API_KEY there.
Input
Only fill the sections you need. At least one section must have input or the run exits with an error.
Example — profiles + videos
{"profiles": ["taylorswift", "https://www.tiktok.com/@tiktok"],"includeRecentPosts": true,"maxPostsPerProfile": 50,"includeProfileAnalytics": true,"videoUrls": ["https://www.tiktok.com/@tiktok/video/7306132438047116586"],"includeRelatedVideos": true,"maxRelatedVideos": 20}
👤 Profiles
| Field | Default | Description |
|---|---|---|
| Profiles | — | Usernames, profile URLs, or user IDs. One per line. Duplicates removed. |
| Include Recent Posts | true | Fetch recent videos for each profile. |
| Posts Per Profile | 50 | Max recent posts per profile (min. 10). |
| Include Profile Analytics | true | Compute engagement rate, averages, posting frequency, viral post count. |
🎬 Videos
| Field | Default | Description |
|---|---|---|
| Video URLs or IDs | — | TikTok video URLs or numeric video IDs. |
| Include Related Videos | true | Collect videos related to each input video. |
| Related Videos Per Input | 20 | Max related videos per input (min. 10). |
👥 Followers & Following
| Field | Default | Description |
|---|---|---|
| Profiles for Followers / Following | — | Source profiles to scrape connections from. |
| Scrape Followers | true | Collect accounts that follow the profile. |
| Scrape Following | false | Collect accounts the profile follows. |
| Maximum Items Per Profile | 1000 | Max followers or following per source profile (min. 10). The DataDoping/TikTok API typically exposes only the first ~1,000 connections per profile regardless of this limit — large accounts like @tiktok cannot return all followers through this endpoint. |
Followers & following at scale: Connections are fetched from DataDoping with
max_timepagination. Duplicates are skipped by user id. If the API returns an error-shaped empty page after partial results, the run exits with what was collected so far.
💬 Comments
| Field | Default | Description |
|---|---|---|
| Video URLs or IDs for Comments | — | Videos to scrape comments from. |
| Include Replies | true | Collect replies for each comment. |
| Comments Per Video | 100 | Max comments per video (min. 10). |
| Replies Per Comment | 20 | Max replies per comment (min. 10). |
🔍 Search
| Field | Default | Description |
|---|---|---|
| Creator Search Keywords | — | Keywords to find TikTok creators (e.g. fitness, ai). |
| Video Search Keywords | — | Keywords to find TikTok videos. |
| Results Per Search Query | 100 | Max results per keyword (min. 10). |
#️⃣ Hashtags
| Field | Default | Description |
|---|---|---|
| Hashtags | — | Hashtag names or URLs, with or without #. |
| Posts Per Hashtag | 50 | Max videos per hashtag (min. 10). |
🎶 Music
| Field | Default | Description |
|---|---|---|
| Music URLs or IDs | — | TikTok sound URLs or numeric music IDs. |
| Videos Per Sound | 50 | Max videos per sound (min. 10). |
Output
Results are stored in typed datasets in the Output dropdown, and every row is also mirrored into All results (the default dataset used by Export).
| Dataset | Contents |
|---|---|
| 📦 All results | Every scraped row — used by Export |
| 📱 Posts | Videos/posts from Profiles, Videos, Hashtags, Music, Video Search |
| 🎞️ Related Videos | Related videos when Include Related Videos is enabled |
| 👤 Profiles | Profile rows and optional analytics |
| 👥 Followers & Following | Follower and following accounts |
| 💬 Comments | Comments and replies |
| 🔍 Search | Creator search results (video search → Posts) |
| #️⃣ Hashtags | Hashtag metadata (videos → Posts) |
| 🎶 Music | Sound metadata (videos → Posts) |
| ⚠️ Errors | Failed inputs with error messages |
Profile example
{"type": "profile","sourceInput": "taylorswift","username": "taylorswift","nickname": "Taylor Swift","bio": "This is pretty much just a cat account","profileUrl": "https://www.tiktok.com/@taylorswift","avatar": "https://...","verified": true,"followerCount": 33400000,"followingCount": 0,"likeCount": 273700000,"videoCount": 83,"scrapedAt": "2026-06-25T12:04:47.692Z"}
Post / video example
{"type": "post","sourceInput": "taylorswift","videoId": "7606213554449992991","videoUrl": "https://www.tiktok.com/@taylorswift/video/7606213554449992991","captionPreview": "I never want to forget a single detail of this hysterical shoot…","playCount": 16200000,"likeCount": 1700000,"commentCount": 71300,"shareCount": 47900,"collectCount": 51100,"authorUsername": "taylorswift","authorNickname": "Taylor Swift","authorVerified": true,"musicTitle": "original sound","musicAuthor": "Taylor Swift","musicOriginal": true,"durationSeconds": 26,"createdAt": "2026-02-12T...","scrapedAt": "2026-06-25T12:04:47.692Z"}
Comment example
{"type": "comment","videoId": "7306132438047116586","textPreview": "The way her voice has matured still gets me","likeCount": 41678,"replyCount": 54,"authorUsername": "kyler","authorNickname": "Kyler<3","createdAt": "2023-11-27T...","scrapedAt": "2026-06-25T12:39:10.000Z"}
Error example
{"type": "error","sourceInput": "https://www.tiktok.com/@tiktok/video/7234567890123456789","error": "Video not found","workflow": "videos","scrapedAt": "2026-06-25T12:39:12.000Z"}
Notes
- Public data only — only publicly available TikTok content is returned.
- Empty sections are skipped — you do not need to clear unused workflow fields.
- Freemium limits apply on the free plan (caps on list sizes and per-section maximums). Paid Apify users receive full configured limits.
- Duplicate inputs are removed automatically within each list.
- Numeric minimums — most limit fields require at least
10. - Related videos depend on upstream API availability; some video IDs may return errors (check ⚠️ Errors).
- Per-target failures are logged and written to the errors dataset; other targets continue processing.
Related Actors
Prefer a focused single-purpose scraper? These actors cover individual workflows:
- TikTok Profile Scraper
- TikTok Followers Scraper
- TikTok Following Scraper
- TikTok Comments and Replies Scraper
Responsible Data Use
Use this actor only for lawful and ethical processing of publicly available data. Respect TikTok's terms of service and applicable privacy and data-protection regulations in your jurisdiction.