How to Scrape TikTok Hashtag & Keyword Videos in 2026
Bulk-scrape TikTok videos by hashtag or keyword — caption, views, likes, comments, shares, sound, hashtags and author — no login, no cookies, no ban risk.
If you want to scrape TikTok hashtag feeds or keyword search results at scale, the platform makes it deliberately hard. TikTok’s web app renders its hashtag and search pages through obfuscated, token-gated XHR calls, infinite-scroll pagination, and aggressive bot detection — there is no public endpoint you can just hit with curl. Yet the data behind those feeds is some of the richest social signal available: every video carries a full set of engagement metrics, the sound driving it, the hashtags it rode, and the author behind it. This guide covers what that data is worth, how to pull it by hashtag or keyword, and the exact schema you get back.
Why TikTok hashtag and keyword data is valuable
TikTok is where trends are born before they spill onto every other platform. A hashtag feed is a live ranking of what is winning attention right now in a specific niche, and a keyword search surfaces the same signal across videos that never even used the tag. Pulling that data in bulk turns a scroll-by-scroll browsing experience into a structured dataset you can sort, filter, and analyze.
Two distinct jobs benefit most:
- Trend research. Which videos, sounds, and formats are winning a hashtag like
#booktokthis week? Ranking by views or likes tells you the shape of a trend before it peaks. - Social listening. Searching a keyword such as
morning routinecatches everyone talking about a topic, not just the people who tagged it. That is the difference between monitoring a hashtag and monitoring a conversation.
The reason you cannot do this by hand is volume and structure. Scrolling a hashtag feed gives you a vague sense of “this seems popular.” A dataset of 2,000 videos with exact play counts, like counts, and author follower numbers gives you a defensible answer to what is actually performing and why.
How the scraper handles input: hashtags vs. keywords
The TikTok Hashtag & Keyword Video Scraper takes a single terms array and treats each entry as either a hashtag or a keyword. The leading # is optional — #booktok and booktok behave the same way — so you can mix both styles in one run.
The practical distinction:
- Hashtags are precise.
#readingtipspulls videos the creator explicitly tagged, so the feed is tightly on-topic. - Keywords cast a wider net.
book recommendationsmatches captions and metadata even when no hashtag was used, surfacing videos the hashtag would miss.
A strong pattern for coverage is to combine related terms in one run — for example #booktok, book recommendations, and #readingtips together. The actor de-duplicates videos automatically across all terms, so overlapping feeds never produce duplicate rows. Each saved video also records a foundForTerm field so you can trace which term surfaced it.
Input fields
| Field | Type | What it does |
|---|---|---|
terms | array | Required. Hashtags or keywords; the leading # is optional. |
maxVideosPerTerm | integer | Videos to collect per term. Default 150. |
sortBy | string | relevance, views, likes, or recent. |
minViews | integer | Keep only videos above this view count. 0 disables it. |
onlyVerifiedAuthors | boolean | Keep only videos from verified accounts. Default false. |
maxResults | integer | Global cap on total videos saved. 0 = unlimited. |
proxyConfiguration | object | Residential proxy, required by TikTok. Pre-configured for you. |
Example input
{
"terms": ["#booktok", "book recommendations", "#readingtips"],
"maxVideosPerTerm": 200,
"sortBy": "views",
"minViews": 50000
}
This run pulls up to 200 videos for each of the three terms, sorts them by view count, and discards anything under 50,000 views — leaving you a ranked shortlist of the genuinely high-performing videos in the booktok space.
Pagination, sorting, and volume
For each term the scraper searches TikTok, intercepts the result feed, and collects videos while walking the infinite-scroll pagination until it hits your maxVideosPerTerm limit. After collection it applies your minViews and onlyVerifiedAuthors filters, then sorts the output by the sortBy you chose.
Sorting matters more than it looks. Setting sortBy: "views" or "likes" with a minViews floor is how you go straight to the top-performing content without manually wading through a feed. recent flips the same machinery toward freshness — useful when you are monitoring a fast-moving hashtag for brand-new posts. relevance mirrors TikTok’s own default ordering.
On volume: add more terms and raise maxVideosPerTerm to pull thousands of videos in a single run. Because de-duplication runs across all terms, widening your term list increases coverage without inflating your result count with repeats. The global maxResults cap is your safety valve when you want a hard ceiling on dataset size regardless of how many terms you supply.
One engineering detail worth knowing: engagement counts are read from TikTok’s overflow-safe stat fields, so play and like numbers stay accurate even in the millions — you will not get a truncated 11.1M string where you expected 11100000.
Output: the exact fields you get per video
Every video in the dataset is one JSON record. The fields below are the complete per-video schema:
videoId— TikTok’s numeric video ID, your stable join key.url— direct link to the video.description— the caption text, including inline hashtags.postedAt— ISO timestamp of when the video was published.durationSec,width,height— clip length and frame dimensions.coverUrl— the thumbnail/cover image URL.playCount— view count (overflow-safe, accurate into the millions).likeCount,commentCount,shareCount,saveCount— the full engagement set.hashtags— array of hashtags used on the video.music— the sound object:id,title, andauthor.author—username,nickname,verifiedflag, andfollowerCount.foundForTerm— which of your input terms surfaced this video.scrapedAt— ISO timestamp of when the record was captured.
Realistic output example
{
"videoId": "7600000000000000000",
"url": "https://www.tiktok.com/@rose_0708/video/7600000000000000000",
"description": "my fav reads this month 📚 #booktok",
"postedAt": "2026-02-20T09:12:00.000Z",
"durationSec": 22,
"width": 576,
"height": 1024,
"coverUrl": "https://p16-sign.tiktokcdn.com/...",
"playCount": 11100000,
"likeCount": 2100000,
"commentCount": 8400,
"shareCount": 30200,
"saveCount": 410000,
"hashtags": ["booktok", "book", "fyp"],
"music": { "id": "72...", "title": "original sound", "author": "rose" },
"author": { "username": "rose_0708", "nickname": "rose", "verified": false, "followerCount": 2859 },
"foundForTerm": "booktok",
"scrapedAt": "2026-06-03T18:00:00.000Z"
}
You can export the full dataset as JSON, CSV, Excel, or HTML, or pull it programmatically through the Apify API and webhooks.
▶ Run the TikTok Hashtag & Keyword Video Scraper — turn any hashtag or keyword into a ranked dataset of videos with full engagement stats, sounds, hashtags and authors. No login, no cookies, no ban risk. $5 per 1,000 videos.
Schema design for downstream use
A few choices pay off when you load this into a warehouse or notebook:
- Use
videoIdas the stable join key. Captions get edited and authors get renamed; the video ID does not. - Keep
hashtagsas an array. Flattening it to a string forces a painful migration the first time you want to group by tag. - Store the four engagement counts as integers, not strings. They already arrive overflow-safe, so there is no parsing of
2.1M-style abbreviations to do — keep them numeric. - Record
scrapedAton every row. Engagement counts climb over time, so a video’s stats are only meaningful relative to when they were captured. To track velocity, re-run on a schedule and keep each snapshot. - Denormalize
author.followerCountif you do creator analysis. Pulling it onto the top level makes “engagement-per-follower” filtering trivial in SQL.
Use cases
The README centers five jobs this dataset does well, and each maps to a concrete workflow:
- Trend analysis. Rank a hashtag by views to see which videos, sounds, and formats are carrying it. Pull the same hashtag weekly and diff the top 50 to watch a trend rise and fade in near real time.
- Content research. Benchmark the top-performing posts in your niche — caption hooks, video length, which sounds recur — and reverse-engineer the format that wins before you produce your own.
- Competitor monitoring. Track which videos in your space are breaking out, who is making them, and how fast their authors are growing. The
authorblock plusplayCountturns a hashtag feed into a competitive scoreboard. - Dataset building. Assemble labelled TikTok datasets for analytics or ML — caption text, engagement metrics, and hashtags make clean training triples for content-classification or virality-prediction models.
- Creator scouting. Filter by author follower count and engagement to spot rising creators riding a hashtag before they blow up — ideal for influencer outreach or talent scouting.
The common thread is the same one that makes any social scrape valuable: breadth across a topic plus freshness over time. A single snapshot of a hashtag is a curiosity; a scheduled feed of the top videos in a category, refreshed weekly, is an intelligence product you can build a workflow — or a business — around.
Cost math
Pricing is $5 per 1,000 videos on a pay-per-result model — you pay for videos saved, not for runs attempted. A realistic trend-monitoring setup of five hashtags at 200 videos each is ~1,000 videos per run, or about $5 per refresh. Run it weekly across that niche and you are looking at roughly $20/month for a continuously refreshed view of what is winning in your space.
Compare that to building it yourself. TikTok forces residential proxies, token-gated XHR interception, infinite-scroll pagination, and overflow-safe stat parsing — and every one of those breaks when TikTok ships a web update. The managed actor absorbs that maintenance, and because it runs login-free over residential proxies, there is no account to get banned.
FAQ
Should I use a hashtag or a keyword?
Both work, and you can mix them in one terms array. Drop the # or keep it — the actor handles either. Keywords cast a wider net by matching captions and metadata; hashtags are more precise because they only catch videos the creator explicitly tagged. For broad topic coverage, supply a few of each and let de-duplication merge the results.
How do I get only the top-performing videos?
Set sortBy: "views" (or "likes") and add a minViews floor — for example 50000 — to discard low-reach videos before they ever hit your dataset. The output comes back ranked, so the highest-performing videos are at the top.
How many videos can I pull in one run?
Thousands. Add more terms and raise maxVideosPerTerm, and use maxResults as a hard global cap when you want to bound dataset size. Results are de-duplicated across all terms, so overlapping hashtags never inflate your count with repeats.
Do I need a TikTok login or cookies?
No. The scraper collects only publicly available video data through residential proxies — no account, no credentials, and no ban risk. That is what keeps it stable and account-safe.
Are the engagement numbers accurate for viral videos?
Yes. Counts are read from TikTok’s overflow-safe stat fields, so playCount and likeCount stay exact into the millions rather than collapsing into a rounded 11.1M-style string.
Can I tell which term found a given video?
Yes. Every record includes a foundForTerm field naming the input term that surfaced it, so even after de-duplication across multiple hashtags and keywords you can trace each video back to its source query.
Wrapping up
TikTok deliberately makes its hashtag and keyword feeds hard to extract — token-gated, proxy-bound, and infinite-scrolled — but the data behind them is among the richest social signal you can collect: full engagement metrics, the driving sound, the hashtags, and the author on every video. If you need a one-off glance, the app is fine. If you want a structured, ranked, refreshable dataset for trend research, social listening, or competitor monitoring, run it as a managed scraper and let someone else carry the maintenance.
▶ Open the TikTok Hashtag & Keyword Video Scraper on Apify — scrape TikTok hashtag and keyword videos by the thousand, sorted by views, likes or recency. No login, pay per result. $5 per 1,000 videos.
This guide — how-to-scrape-tiktok-hashtag-keyword-videos.mdx — shows how to scrape TikTok hashtag and keyword videos into a clean, ranked dataset.
Related guides
TikTok Brand Mention Monitoring: A Complete 2026 Guide
Set up TikTok brand mention monitoring without a login: track every video mentioning your brand or keyword, capture full engagement metrics, and run it on a schedule for social listening.
How to Scrape Apple Podcasts Episodes in 2026
Extract podcast shows, full episode lists, MP3 audio URLs, show notes and transcripts from Apple Podcasts using the iTunes API plus RSS — no login, no browser.
How to Scrape Historical Reddit Posts and Comments in 2026
A practical guide to retrieving 10+ years of archived Reddit posts and comments via PullPush — full-text comment search, date-range queries, no login and no proxy.