Tiktok Trending Hashtags Scraper
Pricing
$14.99/month + usage
Tiktok Trending Hashtags Scraper
Scrapes trending TikTok hashtags by region or category, capturing hashtag names, views, related tags, top videos, creators, and engagement metrics. Ideal for trend research, content planning, influencer insights, and automated discovery of high-growth hashtag opportunities
Pricing
$14.99/month + usage
Rating
0.0
(0)
Developer
Scrapio
Maintained by CommunityActor stats
0
Bookmarked
19
Total users
3
Monthly active users
3 days ago
Last modified
Categories
Share
TikTok Scraper — Extract Trending Hashtags, Analytics and Creators
TikTok Trending Hashtags Scraper pulls TikTok Creative Center's live trending-hashtag ranking — rank, video views, publish count, industry, country context, and a full popularity-trend curve — for any of 73 countries and three time windows. Unlike scraping frameworks that return raw HTML, TikTok Trending Hashtags Scraper returns typed JSON — ready for your model, your database, or your pipeline without any parsing. This guide covers every field it returns and how marketing, research, and data teams actually deploy it in ongoing pipelines.
🧭 What Does TikTok Trending Hashtags Scraper Do?
TikTok Trending Hashtags Scraper connects to TikTok Creative Center's public trend-discovery surface and returns the current trending-hashtag ranking, optional deep per-hashtag analytics, or analytics for a custom hashtag watchlist you supply. No TikTok account, login, or API key is required — it works entirely against TikTok's publicly accessible Creative Center pages.
- Fetches the live Top 100 trending-hashtag ranking for a chosen country and period (7/30/120 days)
- Enriches each hashtag with a nested
analyticsobject (views, publish count, trend curve, top creators) in the same run - Resolves analytics for your own custom hashtag list instead of the general trending ranking
- Filters the ranking by 18 TikTok Creative Center industry categories
- Isolates hashtags that newly entered the Top 100 in the selected period
- Tracks rank movement (
new/up/down/same) across runs using its own persisted rank history - Escalates through no-proxy, datacenter, and residential proxies automatically if TikTok rate-limits a request
⚡ Features & Capabilities
TikTok Trending Hashtags Scraper's capabilities split into three areas: what it collects, how it holds up across runs, and where it sits relative to the rest of the TikTok toolset in the Scrapio catalog.
Core features
- Live Top 100 ranking —
rank,hashtag_name,hashtag_id,video_views,publish_cntpulled directly from TikTok Creative Center's currentGetHashtagListendpoint, not a cached snapshot - Country and period control — 73-country enum (or
ALL) crossed with 7/30/120-day windows viacountryandtop100_period - Industry filtering — narrow the ranking to 1 of 18 Creative Center industry categories with
top100_industry - New-entrant detection —
top100_new_on_boardflag isolates hashtags that are new to the Top 100 this period - Custom hashtag analytics —
hashtag_listfetches the same field set for your own hashtags instead of the general ranking - Nested analytics blob —
top100_with_analytics/analyticsresult types addanalytics.trend,analytics.top_creators, and repeat the numeric fields for convenient downstream access - Cross-run rank tracking —
rank_diff_type/rank_change_readableare derived from a persistent, actor-owned rank-history store keyed by hashtag + country + period, not from a dead TikTok field - Automatic proxy escalation —
proxyConfigurationdrives a none → datacenter → residential fallback chain when TikTok returns a blocked status
TikTok Trending Hashtags Scraper within the Scrapio data stack
TikTok Trending Hashtags Scraper covers trending hashtags, per-hashtag analytics, and the creators behind them. For trending videos with author engagement, use tiktok-trending-videos-insights-author-engagement. For a growth-tracking view of trending videos across runs (view/like/comment/share deltas), use tiktok-trending-videos-scraper-with-video-views-count. Together these three cover TikTok's trend-discovery surface: hashtags, videos, and video growth over time.
Why do developers and data teams scrape TikTok?
TikTok's trend-discovery data attracts a specific set of buyers, since hashtag rank, view counts, and industry classification map directly onto commercial and research decisions rather than general web content.
🏢 Marketing, social, and content strategy teams
Social media managers and agencies pull rank and rank_change_readable for a target country/industry to build a weekly content calendar, prioritizing hashtags flagged "new" or "up" over ones marked "down". Combined with publish_cnt and video_views, teams can distinguish an oversaturated hashtag (high publish_cnt, flat trend) from an emerging one (low publish_cnt, rising trend curve) before briefing creators, and export the ranking straight into a content-planning sheet via CSV.
📊 AI training data and RAG indexing
The trend time series and industry_info.industry_labels are the highest-information fields for AI use: trend gives a normalized 0–100 popularity curve usable as a numeric feature, while industry_labels gives a clean categorical tag with no free-text cleanup needed. For RAG, indexing hashtag_name alongside rank_change_readable and period lets an agent answer "what's trending in [industry] right now" directly from retrieved rows. For training data, rank, publish_cnt, and video_views are consistently typed integers across every record, requiring no schema normalization before use.
📱 Competitive and market intelligence
Brands and analysts track how a competitor's owned or sponsored hashtags move through rank and rank_diff_type over successive scheduled runs, watching video_views and publish_cnt for the growth rate behind a campaign rather than a single-point-in-time count.
🔬 Research and academic use
Researchers studying platform virality use the trend popularity curve and cross-run rank_change_readable history to model how hashtags rise and fall over 7/30/120-day windows. Scope is limited to TikTok's own public Creative Center preview — no private account or message data is ever involved.
🎥 Product and SaaS development
Teams building trend-monitoring dashboards, hashtag-recommendation tools, or content-calendar SaaS products use this actor as the ingestion layer, scheduling runs per country/industry combination and writing rank, trend, and rank_change_readable straight into their own database schema.
🍚 Input Parameters
None of the eight input parameters are required — every field has a default, so an empty run returns the global Top 100 for the last 7 days.
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
result_type | No | string | What to return: top100 (Top 100 Ranking, default), top100_with_analytics (Top 100 + nested analytics), or analytics (analytics for hashtag_list) | "top100_with_analytics" |
country | No | string | Country to pull the ranking/analytics for; "ALL" (default) for global | "US" |
top100_period | No | string | Time window for the Top 100 ranking: "7" (default), "30", or "120" days | "30" |
analytics_period | No | string | Time window for analytics curves (used when result_type is analytics): "7", "30" (default), "120", "365", or "1095" days | "365" |
top100_industry | No | string | Filter the Top 100 by one of 18 Creative Center industry IDs; "" (default) = all industries | "9000000002" |
top100_new_on_board | No | boolean | Return only hashtags newly entering the Top 100 in the chosen period; default false | true |
hashtag_list | No | array | Hashtags (without #) to fetch analytics for; only used when result_type is analytics; default [] | ["rainbowpfp", "grwm"] |
proxyConfiguration | No | object | Apify proxy configuration; no proxy used by default — the actor escalates to datacenter then residential automatically on a blocked response | { "useApifyProxy": false } |
Input example
{"result_type": "top100_with_analytics","country": "US","top100_period": "7","top100_industry": "","top100_new_on_board": false,"hashtag_list": [],"proxyConfiguration": { "useApifyProxy": false }}
Supported URL types and input formats
This actor does not take page URLs as input — it drives TikTok Creative Center's own trend endpoint using country, period, and industry selectors, plus an optional plain-text hashtag list.
- Global Top 100, no filters:
{ "result_type": "top100", "country": "ALL", "top100_period": "7" }—"ALL"is normalized to theUSrequest internally, since that mirrors how TikTok's own Creative Center client resolves an unset country. - Industry-filtered Top 100 with analytics:
{ "result_type": "top100_with_analytics", "country": "GB", "top100_period": "30", "top100_industry": "10000000000" }— food & beverage hashtags trending in the UK over 30 days, with the nested analytics blob. - Custom hashtag watchlist:
{ "result_type": "analytics", "country": "US", "analytics_period": "365", "hashtag_list": ["rainbowpfp", "grwm"] }— hashtags are matched case-insensitively against the current live trending preview; a hashtag not present there returns no analytics for that combination.
📦 Output Format
Every run pushes one typed JSON record per hashtag to the dataset, in addition to writing the same array to the key-value store as output.json. Results are downloadable through Apify's standard dataset export formats (JSON, CSV, Excel/XLSX, and the Console table view) — no format-specific behavior is built into the actor itself.
Output for trending hashtags
Real, verified row from a top100 run (13 fields — the actor's full output for this result type):
{"hashtag_id": "1598391085330438","hashtag_name": "rainbowpfp","country_info": { "id": "US", "value": "United States", "label": "US" },"industry_info": { "industry_ids": ["23000000000"], "industry_labels": ["Baby, Kids & Maternity"] },"is_promoted": null,"trend": [{ "time": 1783641600, "value": 0 },{ "time": 1784160000, "value": 100 }],"publish_cnt": 176599,"video_views": 157573033,"rank": 1,"rank_diff_type": "new","period": "7","rank_change_readable": "New","scrapedAt": "2026-07-18T05:51:48.260386+00:00"}
is_promoted is honestly reported as null — TikTok's current public payload does not include a promoted/ad flag at all, and this actor never substitutes a guessed false for a field TikTok simply doesn't send.
Output for hashtag analytics
When result_type is top100_with_analytics or analytics, every row above gains a nested analytics object:
{"hashtag_id": "1598391085330438","hashtag_name": "rainbowpfp","country_info": { "id": "US", "value": "United States", "label": "US" },"industry_info": { "industry_ids": ["23000000000"], "industry_labels": ["Baby, Kids & Maternity"] },"is_promoted": null,"trend": [{ "time": 1783641600, "value": 0 }, { "time": 1784160000, "value": 100 }],"publish_cnt": 176599,"video_views": 157573033,"rank": 1,"rank_diff_type": "new","period": "7","rank_change_readable": "New","scrapedAt": "2026-07-18T05:51:48.260386+00:00","analytics": {"video_views": 157573033,"publish_cnt": 176599,"rank": 1,"industry_info": { "industry_ids": ["23000000000"], "industry_labels": ["Baby, Kids & Maternity"] },"trend": [{ "time": 1783641600, "value": 0 }, { "time": 1784160000, "value": 100 }],"top_creators": []}}
analytics.top_creators is a direct, unmodified pass-through of TikTok's own topCreators array for that hashtag — this actor does not rename or restructure its contents, so it is empty whenever TikTok's live response doesn't include creator data for that hashtag/country/period combination, and populated with whatever creator fields TikTok itself sends when it does.
Schema stability and export options
All 13 base fields (plus analytics when requested) are guaranteed present on every row, even when TikTok's own upstream field disappears — is_promoted stays in the schema as null rather than being dropped, and rank_diff_type/rank_change_readable are computed from this actor's own persisted rank-history store rather than removed when TikTok's equivalent field went dark. The analytics key is written to every export (JSON, CSV, Excel) but is not part of the default Console table view's 13 visible columns — open the row detail or switch to the JSON/CSV export to see it.
💡 TikTok Trending Hashtags Scraper Strategy Guide
🎯 Strategy 1: Real-time enrichment pipeline
Trigger a run on demand — from a content-calendar tool, a Zapier/Make webhook, or a manual Console start — with result_type: "analytics" and hashtag_list set to the hashtags a creator is considering. Read back rank, video_views, publish_cnt, and analytics.trend for each, and append them as enrichment columns on the inbound record (a content brief, a campaign row, a CRM entry) before it reaches a human reviewer. Because unresolved hashtags are simply omitted from the output rather than erroring, downstream logic can treat a missing row as "not currently trending" without extra branching.
🎯 Strategy 2: Scheduled monitoring and alerting
Use an Apify Schedule to run the actor on a recurring cadence against the same country + top100_period combination. Because this actor persists its own cross-run rank history (keyed by hashtag + country + period), every scheduled run automatically produces a real rank_diff_type of "new", "up", "down", or "same" compared to the previous run — no external diffing step is required. Alert your team when a tracked hashtag's rank_change_readable flips to "Up" or "New", or when top100_new_on_board surfaces a fresh entrant in your target industry.
🎯 Strategy 3: Bulk dataset build
For a research or training dataset spanning multiple markets, queue one run per country (or per country + top100_industry pair) and aggregate each run's dataset into a CSV or database table keyed by hashtag_id + country_info.id + period. Because every field returns as a typed primitive (strings, integers, booleans, nested objects), rows can be loaded directly into a table schema without a normalization pass. No actor-level concurrency limit is documented in the input schema, so parallelism is bounded by your own Apify plan and TikTok's anonymous-preview response size rather than a fixed cap in this actor.
Strategy comparison at a glance
| Strategy | Best for | Run pattern | Output format |
|---|---|---|---|
| Real-time enrichment | Enriching a single hashtag or short list on demand | On-demand / webhook-triggered single run | JSON appended to the calling system's record |
| Scheduled monitoring | Tracking rank movement on a fixed watchlist over time | Recurring Apify Schedule against the same country/period | Dataset diffed via rank_diff_type each run |
| Bulk dataset build | Multi-country or multi-industry research datasets | Parallel runs, one per country/industry combination | Aggregated CSV or database table |
🌴 Related TikTok Scrapers & Tools
| Scraper Name | What it extracts |
|---|---|
tiktok-trending-videos-insights-author-engagement | TikTok Ads Creative Center top ads enriched with real organic video engagement and the creator's public profile |
tiktok-trending-videos-scraper-with-video-views-count | Trending TikTok videos tracked across runs, with view/like/comment/share deltas and rank-shift status |
instagram-hashtag-engagement-scraper | Instagram posts and reels by hashtag, enriched with derived engagement metrics |
instagram-related-hashtag-stats-scraper-top-creators-with-engagement | Instagram hashtag stats, related tags, top posts, and a ranked top-creators list |
google-trends-scraper-regional-popularity-breakdown | Google Trends search-interest data broken down by region, for cross-referencing a hashtag's topic against broader search demand |
How to integrate TikTok Trending Hashtags Scraper with your stack
TikTok Trending Hashtags Scraper works with any language or tool that can make an HTTP request, via the Apify API or an official SDK.
Python
import csvfrom apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")countries = ["US", "GB", "DE"]all_rows = []for country in countries:run = client.actor("tiktok-trending-hashtags-scraper-pay-per-events").call(run_input={"result_type": "top100_with_analytics","country": country,"top100_period": "7",})for item in client.dataset(run["defaultDatasetId"]).iterate_items():all_rows.append(item)with open("tiktok_trending_hashtags.csv", "w", newline="", encoding="utf-8") as f:writer = csv.DictWriter(f, fieldnames=["hashtag_id", "hashtag_name", "rank", "video_views","publish_cnt", "rank_change_readable", "period", "scrapedAt",])writer.writeheader()for row in all_rows:writer.writerow({k: row.get(k) for k in writer.fieldnames})print(f"Saved {len(all_rows)} hashtag rows across {len(countries)} countries")
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('tiktok-trending-hashtags-scraper-pay-per-events').call({result_type: 'analytics',country: 'US',analytics_period: '30',hashtag_list: ['rainbowpfp', 'grwm'],});const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const item of items) {console.log(item.hashtag_name, item.rank, item.rank_change_readable);}
Async and scheduled pipelines
For large or recurring jobs, start the run asynchronously via client.actor(...).start() (Python) or .start() (Node.js) instead of .call(), then poll the run status or attach an Apify webhook to fire when the run finishes — no result is blocked on a held-open HTTP connection. For ongoing monitoring, an Apify Schedule triggers the run on a fixed cadence, which is what makes the rank-history-based Strategy 2 above work without any external scheduler.
🎯 Who Needs TikTok Trending Hashtags Scraper? (Use Cases & Industries)
🏢 Marketing, social, and content strategy teams
A social agency running campaigns across several markets pulls rank, rank_change_readable, and top100_industry filters per client vertical every week, feeding hashtags marked "New" or "Up" directly into the next content brief instead of relying on guesswork.
📊 AI training and RAG teams
Teams building a TikTok-trend-aware assistant index hashtag_name, industry_info.industry_labels, and the trend curve so the assistant can answer "what's trending in [industry] in [country] right now" from retrieved rows instead of a stale training cutoff.
📱 Competitive and market intelligence analysts
Analysts track a competitor's or their own brand's hashtags over scheduled runs, watching rank_diff_type and video_views growth to time a campaign push or catch a competitor's hashtag losing momentum before a report is due.
🔬 Researchers
Academic and market researchers studying platform virality pull the trend popularity curve and cross-run rank history across countries and industries to model how trends propagate — scoped to TikTok's own public preview data only.
🎥 Product and SaaS builders
Teams building hashtag-recommendation tools or trend dashboards schedule runs per country/industry and write rank, trend, and rank_change_readable straight into their product's own database as the ingestion layer.
Is it legal to scrape TikTok?
Yes — scraping publicly accessible data, like TikTok Creative Center's trending-hashtag ranking, is generally lawful; courts have distinguished scraping public web data from unauthorized computer access (hiQ Labs, Inc. v. LinkedIn Corp., 9th Cir., 2019). Separately, TikTok's Terms of Service may restrict automated access to its platform — violating a website's terms is a potential civil contract matter between you and TikTok, not a criminal one, but it is a real risk to weigh. On data protection: the base trending-hashtag ranking is aggregate, non-personal data, but the optional analytics.top_creators field can carry public creator-identifying data (handles, follower counts) when TikTok includes it, so GDPR/CCPA-style lawful-basis considerations apply specifically to that field, not to the ranking itself. TikTok Trending Hashtags Scraper returns only publicly accessible data. What you do with that data is your responsibility — consult legal counsel for commercial applications involving personal data.
❓ Frequently asked questions
Does TikTok Trending Hashtags Scraper work without a TikTok account?
Yes — it requires no TikTok login, account, or API key. It runs entirely against TikTok Creative Center's public Trends page, seeding a session by loading that page before querying the live ranking endpoint.
How does TikTok Trending Hashtags Scraper handle TikTok's anti-scraping measures?
It navigates the public Trends page with a real Playwright browser session to seed cookies before firing the ranking request through that same session, retries up to 3 times with backoff on a non-200 response, and automatically escalates from no proxy to datacenter proxy to residential proxy if TikTok returns a blocked status (403/429/503).
Can I run TikTok Trending Hashtags Scraper at scale without getting blocked?
It handles blocking through automatic proxy escalation and retries rather than a guaranteed unblockable connection; no uptime or success-rate figure is published for this behavior. Running with a residential proxy configured is the most resilient option for larger or geo-targeted volumes.
How fresh is the data TikTok Trending Hashtags Scraper returns?
It fetches live on every run — there is no caching layer. rank_diff_type and rank_change_readable, however, are intentionally computed by comparing the current live fetch to this actor's own stored result from the previous run, not from a cached value.
Why do I only get a handful of hashtags per country/period?
TikTok Creative Center's anonymous, logged-out access exposes only a small public preview of its full ranking; the actor requests up to 100 hashtags by default but returns exactly what TikTok's public preview makes available for that country and period, and logs a warning rather than padding the result when TikTok returns fewer.
Which TikTok Trending Hashtags Scraper fields work best for AI training and RAG indexing?
For RAG, index hashtag_name, industry_info.industry_labels, and rank_change_readable for direct-answer retrieval; the trend array is the richest numeric feature for a training set. All fields return as typed primitives or nested objects — no text parsing or normalization is needed before loading them into a model context or feature pipeline.
Does using analytics.top_creators raise data-protection concerns?
It can — that field is a direct pass-through of whatever public creator data TikTok's own response includes for a hashtag, and is empty when TikTok doesn't return any. The base trending-hashtag ranking itself contains no personal data; if your use case pulls analytics.top_creators, the lawful basis for storing and using that public creator data is yours to establish.
What happens if a hashtag in my custom list isn't found?
It is simply excluded from the output, and the actor logs which hashtags it couldn't resolve. This happens when a hashtag isn't present in TikTok's current live anonymous preview for the selected country and period — it is not an error condition.
Does TikTok Trending Hashtags Scraper work with Claude, ChatGPT, and other AI agent tools?
Yes, as an HTTP endpoint callable by any agent framework through the Apify API — every response is typed JSON, so an agent can parse it directly into its context window without an HTML-scraping or cleanup step.
ℹ️ Disclaimer
TikTok Trending Hashtags Scraper extracts only publicly available data from TikTok. This tool is intended for lawful use cases only. Users are responsible for complying with TikTok's terms of service and applicable data protection laws in their jurisdiction.