TikTok Trending Hashtags Scraper — Rank, Views & Creators
Pricing
from $0.99 / 1,000 trending hashtags
TikTok Trending Hashtags Scraper — Rank, Views & Creators
Scrape TikTok trending hashtags from Creative Center: rank, views, post count, popularity curve, and top creators. 27 countries and 7/30/90-day windows. No login — export JSON via API, Python, Node.js, or MCP.
Pricing
from $0.99 / 1,000 trending hashtags
Rating
0.0
(0)
Developer
Andrej Kiva
Maintained by CommunityActor stats
0
Bookmarked
16
Total users
5
Monthly active users
13 days ago
Last modified
Categories
Features
Share
Disclaimer: Unofficial tool — not affiliated with, sponsored by, or endorsed by TikTok / ByteDance or its affiliates. Data is read from publicly accessible pages only. No login. You are responsible for complying with applicable law (including GDPR where personal data appears) and the site’s terms. No warranty on accuracy or availability. Provided for informational and research use.
| Social discovery | Product launches |
|---|---|
| TikTok Trending Hashtags Scraper ◄── you are here | Product Hunt Scraper |
| Bluesky Scraper | Launches, reviews, comments, leaderboards |
TikTok trending hashtags scraper and TikTok API alternative — extract TikTok's own Creative Center ranking as structured JSON: hashtag, rank, video views, post count, industry labels, a popularity curve, trend stage, and the top creators driving it. Filter by country, industry chart, and 7 / 30 / 90-day window. No TikTok login, no cookies, no API token.
TikTok shows 3 hashtags per chart to logged-out users. This Actor scans the overall chart plus 20 industry charts and deduplicates, which is typically 50–60 unique hashtags per country and window.
Scrape TikTok hashtags with Python, Node.js, cURL, or MCP / AI assistants. Export JSON, CSV, or Excel from the dataset.
When to use
- See what is ranking on TikTok this week in a specific market
- Compare 7-day breakouts vs 90-day staying power
- Sweep all 27 published countries in one run
- Feed hashtag + creator handles into a briefing, dashboard, or agent workflow
When not to use
- Private accounts, chats, inboxes, or gated content — public pages only; the Actor does not log in.
- You want a published top 100 board. Logged-out Creative Center still returns 3 rows per chart (
limitandpageare ignored). Scanning every industry chart is how this Actor gets past that, and 50–60 uniques is the usual yield — not 100. - You want videos under a hashtag, comments, or profiles — this Actor only returns the Creative Center charts.
- You send
period=120expecting a 120-day chart. TikTok now returns an empty board for 120/180, not a 7-day one. This Actor remaps 120/180 to 90 instead.
Key features
- Overall chart + 20 industries — one request per chart, then deduped by hashtag. First chart wins (
overall, then industries in id order) - 27 countries — the markets TikTok publishes (US, GB, DE, BR, JP, …)
- 7 / 30 / 90-day windows —
periodand country written back on every row - Curve + trend stage — popularity series,
momentum, andtrendStage(rising/peaking/fading/steady) withpeakDate - Top creators — handle, nickname, follower count, profile URL
- Honest empty-run — the US 7-day overall chart must return at least one hashtag or the run fails as blocked. An industry chart with 0 rows is a valid empty slice
- No login — residential proxy recommended on Apify
Input
| Parameter | Description |
|---|---|
countries | ISO codes to scrape (default US). Closed list of 27 markets |
allCountries | Sweep every published market in one run |
period | 7, 30, or 90 (default 7). 120/180 are remapped to 90 |
periods | Extra windows merged with period (e.g. 7+30+90) |
scanIndustries | Scan the 20 industry charts after the overall chart (default true). false = overall chart only (3 rows) |
industries | Optional subset of industry ids. Empty = all 20 |
maxItems | Dataset cap for the whole run (default 100) |
concurrency | Parallel country × window workers, 1–12 (default 6) |
proxyConfiguration | Apify RESIDENTIAL recommended |
United States, this week:
{"countries": ["US"],"period": "7","scanIndustries": true,"maxItems": 60,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}}
Overall chart only (3 rows):
{"countries": ["US"],"period": "7","scanIndustries": false,"maxItems": 10}
All 27 countries, three windows (capped — a full industry scan is larger than maxItems):
{"allCountries": true,"periods": ["7", "30", "90"],"scanIndustries": true,"maxItems": 500,"concurrency": 4}
Output
One dataset row per unique hashtag × country × window. TikTok serves 3 rows per chart; after dedup, one country and window is typically 50–60 rows.
| Field | Description |
|---|---|
type | Always hashtag_trend |
hashtagId / hashtagName | TikTok id and name without # |
hashtagUrl | Tag page on tiktok.com |
rank / chartRank | Position on the chart where the hashtag was first seen (1 = top). rank mirrors chartRank |
chart | overall, or the industry label of that first chart |
chartIndustryId | null for overall, otherwise the industry slice id |
foundInCharts | Every chart name where the hashtag appeared (overall and/or industry labels) |
country / countryName / period | Market and window |
countryRequested / periodRequested | What you asked for |
countryFallbackApplied / periodAliasApplied | True when served ≠ requested |
views / publishCount | Window video views and post count |
industryIds / industryLabels | TikTok's own tags on the hashtag (not the chart it was found in). Labels include Games, Baby, Kids & Maternity, News & Entertainment |
popularityCurve | [{ timestamp, value }] 0–100 series |
momentum / trendDirection | Last-third vs first-third (rising / fading / flat) |
trendStage / peakDate | rising, peaking, fading, or steady, plus the UTC date of the curve maximum |
topCreators | creatorId, handle, nickname, followerCount, avatarUrl, profileUrl |
link / sourceUrl | Creative Center slice URL |
scrapedAt | ISO timestamp |
{"type": "hashtag_trend","hashtagId": "7691443554018656263","hashtagName": "tiktokscaryhorrorcontest","hashtagUrl": "https://www.tiktok.com/tag/tiktokscaryhorrorcontest","rank": 1,"chart": "overall","chartIndustryId": null,"chartRank": 1,"foundInCharts": ["overall"],"country": "US","countryName": "United States","period": 7,"publishCount": 73462,"views": 312182870,"industryLabels": [],"trendDirection": "rising","trendStage": "rising","peakDate": "2026-10-15","momentum": 288.46,"topCreators": [{"handle": "sadwds213s","nickname": "sadwd","followerCount": 116569,"profileUrl": "https://www.tiktok.com/@sadwds213s"}]}
Use cases
- Weekly trend brief for a social team (US + GB + DE, 7-day window)
- Spot low-competition reach: high
views, lowerpublishCount - Catch fading vs rising tags from
trendStagebefore you brief creators - See which industry chart a hashtag ranked on (
chart,foundInCharts) - Multi-market sweep: same hashtag appearing in many
countryrows is a cross-border signal - Hand
topCreators[].handleto a profile/enrichment workflow - Give an AI assistant the board via MCP and ask for a one-page briefing
Integration examples
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('crawloop/tiktok-trending-hashtags-scraper').call({countries: ['US'],period: '7',scanIndustries: true,maxItems: 60,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient(token)run = client.actor("crawloop/tiktok-trending-hashtags-scraper").call(run_input={"countries": ["US"], "period": "7", "scanIndustries": True, "maxItems": 60})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item.get("rank"), item.get("hashtagName"), item.get("views"))
cURL
curl "https://api.apify.com/v2/acts/crawloop~tiktok-trending-hashtags-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"countries":["US"],"period":"7","scanIndustries":true,"maxItems":60}'
MCP and AI assistants
Use this Actor from AI tools via Apify MCP. Connect your Apify account, then call crawloop/tiktok-trending-hashtags-scraper.
Example prompts:
- "Run TikTok Trending Hashtags Scraper for US, 7-day window, and return rank, hashtag, chart, views, and trendStage"
- "Sweep GB, DE, and FR for 30-day TikTok trending hashtags and list rising tags"
- "Get all 27 countries for the 7-day TikTok hashtag board and summarize cross-market repeats, then check Bluesky mentions with Bluesky Scraper"
Suite next step
For open social listening on another network, run Bluesky Scraper (posts, search, monitor). For launch-day product buzz, use Product Hunt Scraper.
FAQ
Do I need a TikTok or ads account?
No. The Actor reads the public Creative Center trends board. Nothing to log into.
Is this a TikTok API?
It is a TikTok API alternative for the public trending-hashtag board — no official TikTok Research API key required.
Why not a top-100 list?
TikTok shows 3 hashtags per chart to logged-out users and ignores page and limit. This Actor scans the overall chart and 20 industry charts, then deduplicates — typically 50–60 unique hashtags per country and window. There is no top-100 board on this surface.
Can I scrape TikTok hashtags with Python or Node.js?
Yes. Use the Apify client examples above, or call the Actor from an AI assistant via MCP.
Why did a run fail with an empty dataset?
Creative Center can block a datacenter IP. Preflight requires a non-empty US 7-day overall chart. Enable Apify RESIDENTIAL proxy. An empty industry slice is normal for some markets and is not a failure.
Is 120 days supported?
No. TikTok now returns an empty board for 120 and 180, not a 7-day one. This Actor remaps 120/180 to 90 and sets periodAliasApplied.
Can I get related hashtags or videos?
Not from this chart route. Each row is the ranking + curve + creators TikTok puts on the Trends → Hashtag charts.
Related Actors
| Actor | Role |
|---|---|
| TikTok Trending Hashtags Scraper ◄── you are here | Creative Center hashtag ranking |
| Bluesky Scraper | Posts, profiles, search, monitor |
| Product Hunt Scraper | Product launches and reviews |