TikTok Trends Scraper (Top Ads, Hashtags & Videos)
Pricing
from $0.55 / 1,000 trend items
TikTok Trends Scraper (Top Ads, Hashtags & Videos)
TikTok Creative Center trends by country: top ads with landing page, budget and CTR percentile, trending hashtags with posts, views and a 7-day popularity curve, and trending videos with views and engagement. Each row shows its rank change since your last run. No login. $1 per 1,000 items.
Pricing
from $0.55 / 1,000 trend items
Rating
0.0
(0)
Developer
locaihost data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Features
Share
Get TikTok Creative Center's trend charts by country as rows: top ads with their landing pages, trending hashtags and trending videos. Each row also says how its rank moved since your last run. No login, no cookies.
What people use it for:
- Ad research: the top ads in a country, what they promote, where they send people and which countries they run in.
- Early hashtags: posts, views and a 7-day popularity curve for each trending hashtag, by country and industry.
- Content planning: trending videos with views, engagement rate and 6-second view rate.
- Daily tracking: schedule it and get only what's new to each ranking, plus each item's rank change.
Quick start
Paste this into the JSON tab of the input and click Start:
{"modes": ["hashtags", "videos", "topAds"], "countries": ["US"]}
You get 11 rows (3 hashtags, 4 trending videos, 4 top ads) in about 30 seconds. Add countries, industries or video categories for more: each combination is its own ranking.
What you get
Every row has a type: top-ad, hashtag or video.
| Group | Fields |
|---|---|
| Ranking (every row) | rank, previousRank, rankChange (positive = moved up), isNewToRanking, previousRunAt, id (TikTok's stable id), country, countryName, periodDays, filterIndustry, filterCategory, sortBy, sourceUrl, listKey, scrapedAt |
| Top ads | title (ad text), brand, industry, objective, likes, ctrTopPercent (CTR percentile, e.g. 26 = top 26%), budget (Low / Medium / High), durationSec, videoUrl, coverUrl, width, height, detailsUrl |
| Top ad details | details.landingPage, details.landingDomain, details.runsInCountries, details.comments, details.shares, details.keywords, details.source |
| Hashtags | hashtag, hashtagName, hashtagUrl, posts, views, popularity (daily 0 to 100 over 7 days), trend (up / down / flat), trendStage, trendDirection, momentumPct, peakDate, industries, topCreators (public handle, display name, followers) |
| Trending videos | videoUrl, title (caption), createdAt, coverUrl, categories, author (handle, display name, followers), views, organicViews, engagementRate, sixSecondViewRate, each also as ...Lifetime |
One real row (US, last 7 days, run on 2026-10-18, shortened):
{"type": "top-ad","rank": 1,"previousRank": 1,"rankChange": 0,"isNewToRanking": false,"id": "7686735943021379602","title": "Limited time flash discount! Save 10%-20% on trendy sunglasses ,Free shipping on 2+ pairs","industry": "Clothing Accessories","objective": "Conversions","likes": 7,"ctrTopPercent": 26,"budget": "Low","durationSec": 13.834,"detailsUrl": "https://ads.tiktok.com/business/creativecenter/topads/7686735943021379602/pc/en?countryCode=US&period=7","details": {"shares": 17,"landingDomain": "goodsee.shop","runsInCountries": ["US", "GB", "CA", "IT", "AU", "FR", "DE", "ES"],"source": "TikTok Ads Manager"},"country": "US","periodDays": 7,"sortBy": "for_you"}
The dataset has four views (Overview, Top ads, Hashtags, Videos) and exports to JSON, CSV, Excel or HTML. The run's SUMMARY record lists the rankings read, empty and failed, and the proxy tier used.
Price
You pay per item returned. Apify platform usage, proxies, the browser and ad landing pages are included in that price.
| Row | Free and Starter | Scale | Business |
|---|---|---|---|
| Trend item (a top ad, hashtag or trending video) | $1 per 1,000 | $0.75 per 1,000 | $0.55 per 1,000 |
Plus $0.00005 per run start. Apify's free $5 monthly credit covers about 5,000 items. Free-plan runs stop at 100 items each; any paid Apify plan removes the cap. A full US run of all three charts (11 items) costs about $0.01.
What's free: empty rankings, items skipped by onlyNew, items left out by onlyRising, minPosts or minViews, rankings that failed, and countries a chart doesn't cover (skipped and named in the status message). Bad input ends the run with a message saying what to change, and nothing is charged. To cap a run's spend, set maxItems or Maximum cost per run in the run options: the run stops cleanly when it's reached.
Limits, stated up front
The Actor reads only what TikTok shows a visitor who is not logged in. Since TikTok's 2025 redesign that is:
| Chart | Per ranking | Countries | Periods | Filters |
|---|---|---|---|---|
| Top ads | 4 ads (the ones shown publicly) | 28 | 7, 30, 180 days | 21 industries, 5 sort orders |
| Trending hashtags | top 3 | 27 | 7, 30, 90 days | 15 industries |
| Trending videos | top 4 | US, JP, VN, TH, ID | 7, 30 days | 5 categories, 3 sort orders |
- Page 1 only. Only page 1 of each ranking is public. To cover more, ask for more rankings: all 27 hashtag countries × 15 industries is 405 rankings, up to 1,215 hashtags, in one run.
- Periods are per chart. Each chart uses its nearest own period to the one you pick;
periodDayson every row says which. - Top-ads objective, ad format, language and keyword filters aren't offered. The public top-ads page doesn't take them from its address, and we only load the page as a visitor would, so we can't ask for them. Each top ad still has its
objective. - Songs and creators aren't offered. TikTok removed the public song chart, and the creator chart says "Coming soon" to logged-out visitors.
- Media links expire.
videoUrlandcoverUrlare TikTok CDN links that stop working after a few days. Download what you need to keep. - The same item can appear in several rankings (for example a hashtag in two industries) and is a row, and an item, in each.
- Personal data: only what the charts show publicly. Creator handles, display names and follower counts are kept; bios, avatars and TikTok's internal user ids are not.
Rising hashtags, trend stage and filters
Each hashtag's popularity curve is read into four extra fields, at no extra cost and with no extra request:
| Field | What it means |
|---|---|
trendDirection | rising, falling or flat: the last few days of the curve against the same number of days before them (the last 2 days of a 7-day curve, 5 of a 30-day one, 15 of a 90-day one). It counts as a move when it's 10 points or more on the curve's 0 to 100 scale. |
momentumPct | The same change in percent. Empty when the earlier days are all zero. |
peakDate | The day the curve hit its high. |
trendStage | peaking (at or near its high now), emerging (little or nothing before the last few days), rising, fading (falling, or well below its high) or steady. |
These are read from TikTok's own relative curve, so they describe the shape of interest over the period, not exact counts. They're empty when TikTok sends no curve.
Filters (rows left out are not returned and not charged):
| Input | Applies to | Keeps |
|---|---|---|
onlyRising | Hashtags | Hashtags going up now: trendStage emerging or rising, or trendDirection rising |
minPosts | Hashtags | At least this many posts in the period |
minViews | Hashtags, trending videos | At least this many views in the period (top ads have no view count) |
organicOnly | Trending videos | Reads the video chart's own organic-only ranking instead of the default one; its listKey ends in |organic |
A row with no number for a minimum is left out. Filters never change rank change: previousRank, rankChange and isNewToRanking always compare full rankings. With onlyNew, an item a filter leaves out isn't marked as returned, so it can still come back once it qualifies. If a filter is set for a chart it doesn't apply to, the status message says so.
Only new since last run, and schedules
Save your input as a task and schedule it daily under Schedules in Apify Console. Turn on onlyNew and each run returns only the items that ranking hasn't returned before. You pay for new top ads and new trends, and skipped items cost nothing. Rank change is kept per task and per ranking either way: previousRank, rankChange and isNewToRanking compare with your previous run of that same ranking.
Integrations: API, n8n, Make and AI agents
API. Run it and get the rows back in one call:
curl -X POST "https://api.apify.com/v2/acts/locaihost~tiktok-trends/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"modes": ["hashtags", "topAds"], "countries": ["US", "GB"]}'
Apify's API clients for Python and JavaScript work the same way.
n8n, Make, Zapier, Google Sheets, Slack, webhooks. Apify's built-in integrations send each run's dataset wherever you need it, for example a daily Slack message with the new top ads.
AI agents (MCP). Add this Actor to Claude, Cursor or any MCP client with https://mcp.apify.com/?tools=locaihost/tiktok-trends, then ask something like "Which hashtags are trending in the UK beauty industry this week, and which top ads are running there?"
FAQ
How much does it cost to scrape TikTok trends?
$1 per 1,000 items on the Free and Starter plans, less on Scale and Business. Ad landing pages and proxies are included. Apify's free $5 monthly credit covers about 5,000 items.
Can I use it through the API or from Python?
Yes. Use the run-sync-get-dataset-items call above, or Apify's Python and JavaScript clients. Every run's data is also available as JSON, CSV or Excel from its dataset.
Can I use it from an AI agent?
Yes. Through the Apify MCP server (https://mcp.apify.com/?tools=locaihost/tiktok-trends) any MCP client can call it with charts and countries and read the rows back.
Is it legal to scrape TikTok Creative Center?
The Actor reads public Creative Center pages, and the same public data calls those pages make for a visitor who isn't logged in. It never logs in, uses no account or cookies of its own, and returns no contact details of individuals. TikTok's terms restrict automated access, so check that your use fits them and the privacy rules that apply to you. Ad creatives are the advertisers' work: use them for research and inspiration, not republication. You are responsible for how you use the results.
Why are some fields empty?
brand is empty when the advertiser didn't give one, and details is null when includeAdDetails is off or the ad's detail page had no data. TikTok sometimes closes those detail pages to visitors who aren't logged in (it has since early November 2026); the run then notices after two tries, skips the step, and says so in its status message, so the rest of the row still arrives quickly. previousRank, rankChange and isNewToRanking are null on the first run of a ranking (there is nothing to compare with yet). Hashtags TikTok doesn't file under an industry have an empty industries list.
Why only 4 top ads per country?
That is what TikTok shows a logged-out visitor on each top-ads ranking. Pick industries and sort orders to read more rankings: each one adds up to 4 different ads.
More from locaihost data
- TikTok Creator Vetting: engagement rate, posting cadence and brand-deal share for the creators behind a trend.
- TikTok Shop Product Scraper: products, prices and sales from TikTok Shop searches and categories.
- Google Trends Scraper: check whether a TikTok trend is also growing in search.
- Website Traffic Checker: size up the landing domains the top ads send people to.
Did it help?
If this saved you time, a quick rating on the Store helps other people find it.
Support
Something not working, or a field you need? Open an issue on the Issues tab: we answer issues within 24 hours.