TikTok Hashtag Scraper
Pricing
Pay per event
TikTok Hashtag Scraper
Scrape TikTok videos by hashtag. Extract video stats, captions, author info, music metadata, and engagement metrics for any TikTok hashtag. Export to JSON, CSV, or Excel.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape TikTok videos by hashtag. Extract video stats, captions, author metadata, music info, and engagement metrics from any TikTok hashtag page. No login required.
What does TikTok Hashtag Scraper do?
TikTok Hashtag Scraper discovers and extracts videos from TikTok hashtag pages. Enter one or more hashtags, and the scraper navigates to each hashtag's page, intercepts the API responses, and returns structured data about every video it finds β including play counts, likes, comments, shares, author details, and music metadata.
The scraper uses Playwright with residential proxies to load TikTok hashtag pages in a real browser, then captures video data from TikTok's internal API as the page loads and scrolls.
Who is TikTok Hashtag Scraper for?
- π£ Social media marketers tracking trending content within specific hashtags
- π·οΈ Brand managers monitoring hashtag campaigns and engagement metrics
- π¬ Content creators researching popular videos in their niche
- π Market researchers analyzing TikTok trends and viral content patterns
- ποΈ Data analysts building datasets of TikTok content by topic
- π Influencer agencies discovering creators active in specific hashtag spaces
Why use TikTok Hashtag Scraper?
- π No login required β scrapes public hashtag pages without TikTok credentials
- π¦ Complete video data β extracts 30+ fields per video including nested author, music, and video metadata
- π Engagement metrics β play counts, likes, comments, shares, saves, and reposts
- π€ Author details β profile info, follower counts, verification status for each video creator
- π΅ Music metadata β track name, artist, album, and play URL for each video's audio
- β‘ Batch processing β scrape multiple hashtags in a single run
- π° Pay per result β only pay for videos actually extracted
Data you can extract
| Field | Description |
|---|---|
id | TikTok video ID |
text | Video caption/description |
createTime | Unix timestamp of video creation |
createTimeISO | ISO 8601 formatted creation date |
webVideoUrl | Direct link to the video on TikTok |
playCount | Number of video plays |
diggCount | Number of likes |
commentCount | Number of comments |
shareCount | Number of shares |
collectCount | Number of saves/bookmarks |
repostCount | Number of reposts |
authorMeta | Nested author profile data (name, followers, verified status) |
musicMeta | Nested music/audio metadata (track name, artist, album) |
videoMeta | Nested video technical data (resolution, duration, format) |
hashtags | List of hashtags used in the video |
mentions | List of mentioned users |
isAd | Whether the video is an advertisement |
isSlideshow | Whether the video is a photo slideshow |
searchHashtag | The hashtag search that produced this result |
Pricing
TikTok Hashtag Scraper uses pay-per-event pricing:
| Event | Price | Description |
|---|---|---|
| Run started | $0.025 | One-time charge per scraper run |
| Video scraped | $0.020 | Per video extracted from hashtag results |
Example costs:
- π‘ 10 videos from 1 hashtag: $0.025 + (10 x $0.020) = $0.225
- π‘ 50 videos from 1 hashtag: $0.025 + (50 x $0.020) = $1.025
- π‘ 100 videos from 2 hashtags: $0.025 + (100 x $0.020) = $2.025
How to scrape TikTok hashtags
- π Go to TikTok Hashtag Scraper on Apify Store.
- β Click Try for free.
- π Enter one or more hashtags (without the # symbol).
- ποΈ Set the maximum number of videos per hashtag.
- βΆοΈ Click Start.
- π₯ When the run finishes, download your data in JSON, CSV, Excel, or other formats.
Input parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
hashtags | string[] | TikTok hashtags to scrape (without #) | Required |
maxVideosPerHashtag | integer | Maximum videos to extract per hashtag (1-500) | 50 |
proxy | object | Proxy configuration (residential recommended) | Auto |
Example input
{"hashtags": ["cooking", "fitness", "travel"],"maxVideosPerHashtag": 25}
Output example
Each video in the dataset contains the following structure:
{"id": "7234567890123456789","text": "The best homemade pasta recipe #cooking #pasta #foodie","textLanguage": "en","createTime": 1700000000,"createTimeISO": "2023-11-14T22:13:20.000Z","isAd": false,"authorMeta": {"id": "6812345678901234567","name": "chefmike","profileUrl": "https://www.tiktok.com/@chefmike","nickName": "Chef Mike","verified": true,"signature": "Professional chef sharing recipes","avatar": "https://p16-sign.tiktokcdn.com/...","privateAccount": false,"following": 250,"friends": 180,"fans": 1500000,"heart": 45000000,"video": 342,"digg": 12000},"musicMeta": {"musicName": "original sound","musicAuthor": "chefmike","musicOriginal": true,"musicAlbum": "","playUrl": "https://sf16-ies-music.tiktokcdn.com/...","coverMediumUrl": "https://p16-sign.tiktokcdn.com/...","musicId": "7234567890123456789"},"webVideoUrl": "https://www.tiktok.com/@chefmike/video/7234567890123456789","videoMeta": {"height": 1024,"width": 576,"duration": 45,"coverUrl": "https://p16-sign.tiktokcdn.com/...","definition": "720p","format": "mp4"},"diggCount": 250000,"shareCount": 15000,"playCount": 5000000,"collectCount": 80000,"commentCount": 3200,"repostCount": 500,"mentions": [],"hashtags": [{ "name": "cooking" },{ "name": "pasta" },{ "name": "foodie" }],"effectStickers": [],"isSlideshow": false,"isPinned": false,"isSponsored": false,"input": "cooking","searchHashtag": {"name": "cooking","views": 150000000000}}
Tips for best results
- π― Use specific hashtags β niche hashtags like
veganrecipesyield more targeted results than broad ones likefood. - π§ͺ Start small β test with 10-20 videos per hashtag before running large extractions.
- π Combine related hashtags β scrape multiple related hashtags in one run to build comprehensive datasets.
- π Monitor trending hashtags β run the scraper periodically to track how content changes over time.
- π Check engagement ratios β compare play counts to likes and comments to identify high-engagement content.
Integrations
TikTok Hashtag Scraper connects with your existing tools and workflows:
- π Google Sheets β export results directly to a spreadsheet for analysis
- π¬ Slack β get notifications when scraping runs complete
- π Webhooks β trigger downstream workflows with scraped data
- β‘ Zapier β connect to 5,000+ apps and automate your TikTok data pipeline
- π οΈ Make (Integromat) β build visual automation workflows with TikTok hashtag data
- βοΈ Google Drive β save results automatically to your Drive
- ποΈ Amazon S3 β store large datasets in cloud storage
- π Dropbox β sync scraped data to your Dropbox folder
Use TikTok Hashtag Scraper with the Apify API
The Apify API lets you programmatically start runs, fetch results, and integrate TikTok hashtag data into your applications.
Node.js example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('automation-lab/tiktok-hashtag-scraper').call({hashtags: ['cooking', 'fitness'],maxVideosPerHashtag: 25,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Scraped ${items.length} videos`);items.forEach((video) => {console.log(`${video.authorMeta.name}: ${video.text} (${video.playCount} plays)`);});
Python example
from apify_client import ApifyClientclient = ApifyClient('YOUR_API_TOKEN')run = client.actor('automation-lab/tiktok-hashtag-scraper').call(run_input={'hashtags': ['cooking', 'fitness'],'maxVideosPerHashtag': 25,})dataset = client.dataset(run['defaultDatasetId']).list_items().itemsprint(f'Scraped {len(dataset)} videos')for video in dataset:print(f"{video['authorMeta']['name']}: {video['text']} ({video['playCount']} plays)")
cURL example
curl "https://api.apify.com/v2/acts/automation-lab~tiktok-hashtag-scraper/runs" \-X POST \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"hashtags": ["cooking"],"maxVideosPerHashtag": 10}'
Use with Apify MCP Server
You can access TikTok Hashtag Scraper through the Apify MCP Server, which lets AI assistants like Claude, ChatGPT, and other LLM-based tools call Apify actors directly.
{"mcpServers": {"apify": {"command": "npx","args": ["-y", "@anthropic/mcp-apify"],"env": {"APIFY_TOKEN": "YOUR_API_TOKEN"}}}}
Then ask your AI assistant: "Scrape TikTok videos with the hashtag #cooking using automation-lab/tiktok-hashtag-scraper"
Is it legal to scrape TikTok?
This scraper only accesses publicly available data on TikTok hashtag pages. It does not require login credentials and does not access private content. Web scraping of public data is generally considered legal, but users should:
- β Review TikTok's Terms of Service before scraping
- β Comply with applicable data protection regulations (GDPR, CCPA, etc.)
- β Use scraped data responsibly and ethically
- β Avoid scraping personal data without a legitimate purpose
For more information, see Apify's guide on web scraping legality.
Frequently asked questions
How many videos can I scrape per hashtag?
You can scrape up to 500 videos per hashtag. The actual number depends on how many videos TikTok loads for that hashtag page. Popular hashtags typically have more content available.
Why am I getting fewer videos than expected?
TikTok may limit the number of videos shown on hashtag pages. The scraper scrolls to load more content, but TikTok's API may stop returning new videos after a certain point. Try reducing maxVideosPerHashtag if you consistently get fewer results.
Does the scraper need a TikTok account?
No. The scraper accesses public hashtag pages without any login credentials.
What proxy should I use?
Residential proxies are strongly recommended for TikTok scraping. The scraper uses Apify's residential proxy group by default. Datacenter proxies are more likely to be blocked.
How long does a typical run take?
A run scraping 50 videos from one hashtag typically takes 1-3 minutes. Scraping multiple hashtags or larger numbers of videos will take proportionally longer.
Can I scrape hashtags in different languages?
Yes. Enter hashtags in any language β the scraper navigates to the hashtag page as TikTok presents it. Results will include videos from creators worldwide who used that hashtag.
What happens if a hashtag doesn't exist?
The scraper handles non-existent hashtags gracefully. It will log a warning and continue to the next hashtag without crashing.
How is this different from TikTok Scraper?
TikTok Scraper focuses on user profiles and individual videos. TikTok Hashtag Scraper is specifically designed for hashtag-based discovery β finding videos by topic rather than by creator.
How is this different from TikTok Comments Scraper?
TikTok Comments Scraper extracts comments from specific TikTok videos. Use TikTok Hashtag Scraper first to discover videos, then TikTok Comments Scraper to analyze the discussion on specific videos.
Related scrapers
- π΅ TikTok Scraper β scrape TikTok profiles and individual video details
- π¬ TikTok Comments Scraper β extract comments from TikTok videos
- πΈ Instagram Scraper β scrape Instagram profiles, posts, and reels
- πΉ YouTube Shorts Scraper β extract data from YouTube Shorts