TikTok Scraper — Profiles, Hashtags, Search & Videos
Under maintenancePricing
from $0.001 / actor start
TikTok Scraper — Profiles, Hashtags, Search & Videos
Under maintenanceScrape TikTok profiles, hashtags, search & video URLs. Returns enriched post, video and music metadata plus engagement stats, with optional media downloads.
Pricing
from $0.001 / actor start
Rating
0.0
(0)
Developer
API HEROS
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
TikTok Scraper
Turn TikTok into structured, ready‑to‑use data. Scrape profiles, hashtags, keyword search, and direct video URLs in one run — and get clean JSON with post text, author details, video & music metadata, hashtags, and live engagement stats, plus optional MP4 / cover / avatar / subtitle downloads.
⚡ Fast · 🎯 4 sources in one Actor · 💰 Pay only for results · 🔌 API · Webhooks · Zapier · Make · MCP
🎯 Who is this for?
- Marketers & agencies tracking competitors, campaigns, and creator performance.
- Researchers & analysts building datasets on trends, hashtags, and audience behavior.
- Growth & sales teams discovering influencers and leads at scale.
- Product & data teams feeding TikTok signals into dashboards, ML models, and AI agents.
✨ Key features
- ✅ Four sources, one Actor — profiles, hashtags, search, and direct video URLs together.
- ✅ Rich, structured output — 20+ fields per video, including nested author, video, and music objects.
- ✅ Downloadable media — save MP4 videos, cover images, avatars, and subtitles to the Key‑Value Store.
- ✅ Live engagement metrics — likes, comments, shares, plays, and saves for every post.
- ✅ Stable extraction — reads TikTok's server‑rendered state, so it survives UI changes that break API‑based scrapers.
- ✅ Built‑in anti‑bot handling — stealth browser, human‑like pacing, and Apify Proxy support.
- ✅ Fair, transparent billing — you're charged only for successful results; captchas and empty pages cost nothing.
- ✅ Error transparency — failed pages return clear, structured error records instead of silent gaps.
📊 What you get
Every successful result is a fully structured record:
{"id": "7619037602552761622","text": "BEST LUXURY SPORT CARS! Do yall agree? #bmw #lexus #porsche","createTimeISO": "2026-03-19T18:37:12+00:00","authorMeta": {"name": "ascenddailys","nickName": "AscendDaily","verified": false,"signature": "Daily automotive content","profileUrl": "https://www.tiktok.com/@ascenddailys"},"musicMeta": {"musicName": "original sound","musicAuthor": "swake","playUrl": "https://.../audio.mp3"},"videoMeta": {"height": 1280, "width": 720, "duration": 51,"definition": "720p", "format": "mp4","playUrl": "https://.../video.mp4","coverUrl": "https://.../cover.jpeg"},"diggCount": 21200, "commentCount": 109, "playCount": 366000,"shareCount": 387, "collectCount": 3166,"hashtags": [ { "name": "bmw" }, { "name": "porsche" } ],"webVideoUrl": "https://www.tiktok.com/@ascenddailys/video/7619037602552761622"}
Author profile metrics (follower count, total likes, post count) are resolved from the author's profile and included on profile scrapes; on search, hashtag, and direct‑URL results they may appear as
0until the profile is resolved.
🚀 How to use
Provide at least one source — a username, hashtag, search term, or URL. Everything else is optional.
{"profiles": ["tiktok"],"hashtags": ["sportcars"],"search": ["sport cars"],"startUrls": ["https://www.tiktok.com/@tiktok/video/7666171661670010142"],"resultsPerPage": 50,"shouldDownloadVideos": false}
Examples
| Goal | Input |
|---|---|
| Scrape a profile | "profiles": ["tiktok"] |
| Scrape a hashtag | "hashtags": ["fyp"] |
| Keyword search | "search": ["dance challenge"] |
| Find creators | "search": ["user:comedian"] |
| One specific video | "startUrls": ["https://www.tiktok.com/@user/video/123"] |
⚡ Why teams choose this Actor
| Capability | TikTok Scraper | Typical alternatives |
|---|---|---|
| Sources | profiles + hashtags + search + URLs | usually one source only |
| Output depth | 20+ fields (author, video, music, stats) | 10–15 flat fields |
| Extraction | server‑rendered state (survives redesigns) | private API (breaks weekly) |
| Billing | pay per successful result only | often billed per attempt |
| Media download | MP4 + cover + avatar + subtitle | rarely supported |
| AI / automation | API, webhooks, Zapier, Make, MCP | inconsistent |
💰 Pricing
Pay‑per‑event — you only pay for what you keep. Each successfully scraped result is billed at a small per‑item rate; a captcha, private account, or empty page produces a structured error record and costs nothing. A minimal Actor‑start fee and standard platform usage also apply. See the Pricing tab for current rates and volume tiers.
🔌 Integrations & automation
- Apify API — start runs and pull results programmatically from any language.
- Webhooks — get notified the moment a run finishes.
- Zapier & Make — connect TikTok data to 1,000+ apps with no code.
- MCP / AI agents — a valid input + dataset schema means the Apify MCP Server exposes this Actor as a tool for LLMs out of the box.
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/","transport": "streamable-http","headers": { "Authorization": "Bearer <APIFY_TOKEN>" }}}}
🛡️ Reliability
TikTok aggressively defends against bots. This Actor is engineered to stay reliable:
- Stealth browser fingerprinting and human‑like request pacing.
- Rotating Apify Proxy support (set a country, e.g.
US, for geo‑specific results). - Automatic retries with backoff, and clear structured errors when a page can't be scraped.
| Symptom | Recommended fix |
|---|---|
| Captcha / verify page | Use Apify Proxy (residential); lower volume; retry later. |
| Empty hashtag results | Set a proxy country (TikTok geo‑filters some tags). |
| 403 / 429 bursts | Reduce maxConcurrency to 1–2. |
| Slow on huge profiles | Cap resultsPerPage (e.g. 100–200). |
❓ FAQ
Is scraping TikTok legal? Scraping publicly available data is generally permissible, but you must respect TikTok's Terms of Service and applicable privacy / data‑protection laws. You are responsible for how you use the data.
Do I need proxies?
No setup is required — the Actor works with Apify Proxy out of the box, which we recommend for the best success rate. For geo‑specific results, set proxyCountryCode (e.g. US).
Can I download the actual videos?
Yes. Enable shouldDownloadVideos (and optionally covers, avatars, subtitles) and the files are saved to the run's Key‑Value Store with download URLs injected back into each record.
How is billing calculated? You're charged only for successfully scraped results. Failed pages (captcha, private, empty) are returned as error records and are not billed.
How fast is it?
Most runs return results within seconds to a couple of minutes, depending on resultsPerPage and target size.
Does it work with AI agents? Yes — the Actor is exposed through the Apify MCP Server and can be called by LLM‑based agents and tools.
🤝 Support
This Actor is actively maintained. If you run into an issue or have a feature request, open an Issue on this page and we'll get back to you. Custom integrations and tailored data needs are welcome.
⚖️ Legal & compliance
Use this Actor responsibly and in accordance with TikTok's Terms of Service, applicable privacy laws, data‑protection regulations, and platform rate limits. Do not use it to collect private data without authorization or to violate platform policies. The provider is not liable for misuse.
Ready to turn TikTok into data? Click Try for free above and run your first scrape in seconds. 🚀