TikTok Trending Scraper
Pricing
from $0.75 / 1,000 trending video results
Go to Apify Store

Python (
Node.js (
TikTok Trending Scraper
Scrape trending videos from TikTok Explore feed with country targeting, engagement metrics, author info & media links. Fast HTTP-only, no login or proxy.
Pricing
from $0.75 / 1,000 trending video results
Rating
0.0
(0)
Developer
Axery
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
📈 TikTok Trending Scraper
Discover and scrape real-time trending videos from TikTok's Explore feed with optional region/country targeting. Get ranked viral content, creator profiles, engagement metrics, sounds, and media URLs — without logging in or using expensive headless browsers.
✨ Features
- 🚀 Real-time Trending Videos: Extracted directly from TikTok's Explore feed engine.
- 🌍 Region & Country Targeting: Surface what's viral in specific countries (e.g.,
US,ID,GB,JP,BR,DE,FR, etc.) or global. - ⚡ Super Fast & Lightweight: Pure HTTP-only extraction (~0.5s per batch), no slow browser emulation.
- 🛡️ No Login or API Key Required: Fully anonymous, zero setup or credentials needed.
- 📊 Complete Engagement Stats: Plays, likes (diggs), comments, shares, saves (collects), and duration.
- 🎬 Rich Media & Audio Data: High-res covers, direct playback URLs, and background sound/music metadata.
- 🔁 Paginated Scraping: Fetch from 1 up to 500 trending videos per run with rank numbering.
🎯 Use Cases
- Content & Viral Research: Spot viral sounds, memes, and hooks before creating your next campaign.
- Competitor & Market Intelligence: Analyze video styles, durations, and creator formats that dominate per country.
- Influencer & Creator Discovery: Find fast-growing creators riding the current algorithm wave.
- Automated Social Dashboards: Ingest daily trending feeds directly into BI tools, Google Sheets, or databases.
📥 Input Parameters
| Field | Type | Default | Description |
|---|---|---|---|
content_type | string | "video" | Mode: "video" (real-time Explore feed). Legacy modes ("hashtag", "creator", "music") return an informative deprecation notice as TikTok discontinued them at the source in 2026-Q1. |
country_code | string | "US" | 2-letter ISO country code (e.g. US, ID, GB, JP, BR, DE, FR). Leave empty for global trending. |
limit | integer | 20 | Maximum number of items to return (1 to 500). |
period | string | "7" | Trending window in days (7, 30, 120). Kept for legacy compatibility. |
industry_id | string | "" | Optional industry filter ID for hashtag mode. |
sort_by | string | "popular" | Sort criteria (popular or rise). |
proxyConfiguration | object | {"useApifyProxy": false} | Optional Apify proxy settings. |
Example Input
{"content_type": "video","country_code": "US","limit": 20}
📤 Output Structure
Each item returned in the dataset represents a trending video ranked by TikTok's algorithm:
{"_input": {"content_type": "video","country_code": "US","limit": 20},"_source": "S1-explore-api","_scrapedAt": "2026-10-21T01:48:09Z","_rank": 1,"id": "7696513215093558546","desc": "Check out this amazing viral video! #trending #fyp","createTime": 1792400000,"author": {"id": "7117389664750683162","uniqueId": "viralcreator","nickname": "Viral Creator","verified": false,"avatarThumb": "https://p16-sign-va.tiktokcdn.com/..."},"stats": {"playCount": 18700000,"diggCount": 1300000,"commentCount": 3255,"shareCount": 55300,"collectCount": 19700},"video": {"duration": 28,"width": 1080,"height": 1920,"cover": "https://p16-sign-va.tiktokcdn.com/...","playAddr": "https://v16-webapp-prime.tiktok.com/..."},"music": {"id": "7117389664750683999","title": "Original Sound - Viral Creator","authorName": "viralcreator","playUrl": "https://sf16-ies-music-va.tiktokcdn.com/..."}}
💻 Integration Examples
Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run_input = {"content_type": "video","country_code": "US","limit": 20}run = client.actor("axery/tiktok-trending-scraper").call(run_input=run_input)for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"#{item['_rank']} @{item['author']['uniqueId']}: {item['stats']['playCount']:,} plays")
Node.js (apify-client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: '<YOUR_API_TOKEN>',});const input = {content_type: 'video',country_code: 'US',limit: 20};const run = await client.actor('axery/tiktok-trending-scraper').call(input);const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Fetched ${items.length} trending videos.`);
⚡ Performance & Reliability
- High Success Rate: Employs browser TLS fingerprint impersonation to prevent bot blocking.
- Low Compute Cost: Consumes minimal compute units (0.001 CU per run) due to asynchronous HTTP fetching.
- Graceful Deprecation Handling: If deprecated modes (
hashtag,creator,music) are requested, returns an explicit diagnostic message instead of an ambiguous empty dataset.