TikTok Hashtag Scraper - Video Analytics
Pricing
from $3.00 / 1,000 hashtag video founds
TikTok Hashtag Scraper - Video Analytics
Scrape public TikTok videos from one or more hashtags and get views, likes, comments, shares, saves, engagement rate, creator data, music metadata, captions, timestamps, thumbnails, and quality filters. Cookieless, provider-backed, MCP-ready.
Pricing
from $3.00 / 1,000 hashtag video founds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape public TikTok hashtag videos and export clean engagement data for social listening, creator research, trend tracking, and campaign analysis. Enter one or more hashtags and get one structured row per TikTok video with views, likes, comments, shares, saves, captions, creator metadata, music metadata, timestamps, thumbnails, and engagement rate.
This actor is provider-backed with ScrapeCreators as the primary source and SociaVault as fallback. It does not require a TikTok account, cookies, browser sessions, or user-supplied API keys. It is designed for Apify MCP and AI agents: flat output fields, predictable pricing, compact rows, and a RUN_SUMMARY key with provider and per-hashtag diagnostics.
What It Extracts
| Field | Example |
|---|---|
hashtag | fitness |
videoUrl | https://www.tiktok.com/@runner/video/7412345678901234567 |
caption | Best running shoes #running #fitness |
createdAt | 2024-06-01T00:00:00.000Z |
playCount | 250000 |
likeCount | 12000 |
commentCount | 340 |
shareCount | 210 |
collectCount | 90 |
engagementRate | 0.0502 |
authorUsername | runner |
authorNickname | Runner |
authorVerified | true |
durationSeconds | 32 |
coverUrl | TikTok thumbnail URL |
hashtags | ["running", "fitness"] |
musicTitle | Original sound |
musicAuthor | runner |
The default dataset is built for analysis in spreadsheets, BI tools, notebooks, and AI-agent workflows. OUTPUT and RUN_SUMMARY include counts by hashtag, provider attempts, provider status codes, filtered-out rows, duplicate skips, charge count, and estimated PPE cost.
When To Use
Use this actor when you need to collect videos attached to specific public TikTok hashtags. It is a good fit for social listening, campaign tracking, influencer discovery, content strategy, competitor monitoring, UGC research, and building a dataset of posts around a niche.
Use the quality filters when you want only meaningful rows. For example, set minViews to 100000 to collect viral hashtag videos, minLikes to 5000 to focus on proven engagement, or includePhotoPosts to false to keep video posts only. Filtered-out videos are not saved and are not charged as result events.
Do not use this actor for trending hashtag discovery. Use tiktok-trending-hashtags-scraper for "what hashtags are trending right now?" workflows. Do not use it for comments, transcripts, media downloads, creator profile scraping, or broad keyword search. Use the related actors listed below for those jobs.
Input
{"hashtags": ["fitness", "booktok"],"maxVideosPerHashtag": 50,"region": "US","minViews": 10000,"includePhotoPosts": true,"providerOrder": "scrapecreators-first","includeRawData": false}
| Input | Description |
|---|---|
hashtags | Hashtag names with or without #, such as fitness or #booktok. |
hashtagUrls | TikTok /tag/ URLs, such as https://www.tiktok.com/tag/skincare. |
maxVideosPerHashtag | Max saved and charged rows per hashtag. Default 50, max 10000. |
region | Two-letter region code used to localize results. Default US. |
minViews | Keep only rows with at least this many plays/views. |
minLikes | Keep only rows with at least this many likes. |
minComments | Keep only rows with at least this many comments. |
minShares | Keep only rows with at least this many shares. |
minDurationSeconds | Keep only videos at least this long. |
maxDurationSeconds | Keep only videos no longer than this. |
includePhotoPosts | Include TikTok image carousel posts. Default true. |
maxPagesPerHashtag | Safety cap for provider pagination. Default 20. |
providerOrder | Provider route: ScrapeCreators first, SociaVault first, or force one provider. |
includeRawData | Attach raw provider payload to each row for debugging. Default false. |
Pricing
| Event | Price |
|---|---|
| Actor start | $0.00005 per run |
| Hashtag video found | $0.003 per saved video on the free tier, lower on higher Apify tiers |
Only saved, filter-passing rows are charged as hashtag-video-found. If a video is fetched but fails minViews, minLikes, duration, or photo-post filters, it is dropped before charging. The actor logs a cost cap before collecting data and reports actual charged rows in RUN_SUMMARY.
Example: two hashtags with maxVideosPerHashtag: 50 can save at most 100 charged rows. At $0.003 per video plus the start event, the maximum PPE cost is about $0.30005 before higher-tier discounts.
API Examples
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('khadinakbar/tiktok-hashtag-scraper').call({hashtags: ['fitness', 'booktok'],maxVideosPerHashtag: 25,minViews: 10000,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.slice(0, 3));
Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("khadinakbar/tiktok-hashtag-scraper").call(run_input={"hashtags": ["fitness", "booktok"],"maxVideosPerHashtag": 25,"minViews": 10000,})items = list(client.dataset(run["defaultDatasetId"]).iterate_items())print(items[:3])
Reliability Notes
This actor uses public-data provider APIs rather than browser scraping. That keeps it cookieless and avoids the most common TikTok browser-blocking issues. ScrapeCreators is tried first by default because it usually returns rich TikTok hashtag objects. SociaVault is available as a fallback or as the primary path for provider comparison.
Provider errors, empty hashtags, and invalid inputs are surfaced in RUN_SUMMARY with actionable diagnostics. Empty valid hashtags finish successfully with zero rows instead of pretending data exists. True upstream provider outages are marked clearly so you can retry later or switch provider order.
Related Actors
tiktok-trending-hashtags-scraper- discover trending hashtags by country or industry.tiktok-video-search-scraper- search TikTok videos by keyword or hashtag with broader search controls.tiktok-video-comments-scraper- extract comments from known TikTok video URLs.tiktok-profile-scraper- extract public creator profile data.tiktok-ads-scraper- analyze TikTok Creative Center top ads.
Legal And Compliance
This actor extracts publicly available TikTok hashtag data through provider APIs. It does not bypass authentication, collect private account data, or require user cookies. TikTok content belongs to its respective creators and rights holders. Use the exported data responsibly and comply with TikTok's Terms of Service, privacy laws, copyright rules, and your local regulations. This actor is not affiliated with, endorsed by, or sponsored by TikTok or ByteDance.