Douyin Analytics Scraper
Pricing
$3.55 / 1,000 hot-search trends
Douyin Analytics Scraper
Collect Douyin hot search trend data without a Douyin login. Export ranks, hot values, video counts, source IDs, cover image URLs, source timestamps, and scrape times to an Apify dataset.
Pricing
$3.55 / 1,000 hot-search trends
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
🔥 Douyin hot-search analytics for current trend signals
For social-listening teams, China market researchers, content planners, newsroom researchers, brand teams, and developers, this Actor collects current public Douyin hot-search topics. Each saved row includes the source rank, topic text, hot and video metrics, source IDs, cover-image URLs, and source times. You get structured trend data in an Apify dataset for reports and dashboards without giving the Actor a Douyin login, cookies, or API key.
Use the dataset in Apify, export it as JSON, CSV, Excel, XML, RSS, or HTML, or read it through the Apify API.
- Review current hot-search metrics for social listening with Douyin Analytics Scraper.
- Monitor a scheduled trend snapshot with Douyin Trends.
- Export ranked topics for content planning with Douyin Trending Topics.
- Compare topic lists across runs with Douyin Hot Search Trends.
- Feed hot-search data into a dashboard with Douyin Hot Search Scraper.
📈 What you get from each Douyin trend row
Each dataset row is one distinct hot-search topic saved from Douyin. The Actor keeps the source rank order and saves the first eligible occurrence of a source topic. If the same topic appears again, the later match is ignored. Some source fields are null when Douyin does not return them.
The Actor keeps source IDs, the source URL, a snapshot ID, source and scrape times, trend metrics, and cover-image URLs. It does not collect video search or profile analytics, scrape comments, collect emails or phone numbers, download videos, audio, or images, automate logged-in accounts, translate or classify topic text, score sentiment, or access private or logged-in-only data. Other Douyin surfaces may require login. Cover-image URLs are source-hosted links and can expire or change.
▶️ Run a current Douyin hot-search snapshot
- Set Trend limit to
30for a small first run or50for the full current public list. - Start the Actor and open the dataset when the run finishes.
- Leave the limit empty when you want all available topics until the source is exhausted.
Use an Apify schedule for repeated runs. Each run keeps the source and scrape times returned with its rows.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
maxResults | integer | Sets the maximum number of current Douyin hot-search topics to return. Use 30 for a small sample or 50 for the full current public list. |
Example input
This public input is copied from a successful current-beta default-input run.
{"maxResults": 30}
Work limit
Leave Trend limit empty to return all available topics until the source is exhausted. The source can return fewer topics than the limit. Use 30 for a quick sample or 50 for the full current public list.
🧾 Output
Output panel
| Field | Type | What it does |
|---|---|---|
results | string URL | Opens the run dataset with the saved Douyin trend rows. |
Trend row fields
| Field | Type | What it does |
|---|---|---|
rowType | string | Identifies the row as a hotSearchTrend row. |
inputMode | string | Names the Douyin source mode used for the row. |
inputValue | string | Gives the source value used to create the row. |
rank | integer | Gives the topic's rank in Douyin's hot-search list. |
titleOrKeyword | string | Gives the hot-search topic text from Douyin. |
douyinId | string or null | Gives the main Douyin sentence or group ID when available. |
sentenceId | string or null | Gives the Douyin sentence ID when available. |
groupId | string or null | Gives the Douyin group ID when available. |
sourceIds | object | Groups the source sentence and group IDs. |
sourceIds.sentenceId | string or null | Gives the source sentence ID when available. |
sourceIds.groupId | string or null | Gives the source group ID when available. |
sourceUrl | string URL | Gives the Douyin hot-search URL used for the row. |
scrapedAt | date-time string | Gives the UTC time when the Actor saved the row. |
snapshotId | string | Gives the Douyin hot-search snapshot ID. |
trend | object | Groups the trend metrics and source attributes. |
trend.hotValue | number or null | Gives Douyin's hot value when available. |
trend.videoCount | number or null | Gives the video count reported by Douyin when available. |
trend.discussVideoCount | number or null | Gives the discussion-video count reported by Douyin when available. |
trend.articleDetailCount | number or null | Gives the article count reported by Douyin when available. |
trend.roomCount | number or null | Gives the live-room count reported by Douyin when available. |
trend.maxRank | number or null | Gives the maximum rank reported by Douyin when available. |
trend.eventTime | date-time string or null | Gives the trend or event time reported by Douyin in UTC when available. |
trend.sentenceTag | number or null | Gives Douyin's sentence tag when available. |
trend.wordType | number or null | Gives Douyin's word type when available. |
trend.label | number or null | Gives Douyin's category label when available. |
media | object | Groups the cover-image URLs returned by Douyin. |
media.coverImageUrl | string URL or null | Gives the first cover-image URL when available. |
media.coverImageUrls | array of URL strings | Lists the cover-image URLs returned for the topic. The list can be empty. |
sourceReturnedAt | date-time string or null | Gives the UTC time reported by Douyin for the hot-search response when available. |
Example trend row
This complete row is copied from the successful current-beta run used for the schema review.
{"rowType": "hotSearchTrend","inputMode": "hotSearch","inputValue": "hotSearch","rank": 1,"titleOrKeyword": "中国女篮将迎战波多黎各队","douyinId": "2640244","sentenceId": "2640244","groupId": "7146540245483738409","sourceIds": {"sentenceId": "2640244","groupId": "7146540245483738409"},"sourceUrl": "https://www.douyin.com/aweme/v1/web/hot/search/list/?device_platform=webapp&aid=6383&channel=channel_pc_web","scrapedAt": "2026-09-08T11:29:29.145Z","snapshotId": "20260908192928646686B9DAF6E9110375","trend": {"hotValue": 12052412,"videoCount": 8,"discussVideoCount": 1,"articleDetailCount": 0,"roomCount": null,"maxRank": 1,"eventTime": "2026-09-08T04:49:52.000Z","sentenceTag": 5000,"wordType": 1,"label": 3},"media": {"coverImageUrl": "https://p26-sign.douyinpic.com/tos-cn-p-0015/ow3JnAFoQIf3gw3BxjVBfGOCPQKka8HeAAiLM7~noop.jpeg?lk3s=bfd515bb&x-expires=1788886800&x-signature=1UBOaTcoSXUrog0E21G8FHBRBg8%3D&from=3218412987","coverImageUrls": ["https://p26-sign.douyinpic.com/tos-cn-p-0015/ow3JnAFoQIf3gw3BxjVBfGOCPQKka8HeAAiLM7~noop.jpeg?lk3s=bfd515bb&x-expires=1788886800&x-signature=1UBOaTcoSXUrog0E21G8FHBRBg8%3D&from=3218412987","https://p5-ex-gddgtc-sign.douyinpic.com/tos-cn-p-0015/ow3JnAFoQIf3gw3BxjVBfGOCPQKka8HeAAiLM7~noop.jpeg?lk3s=bfd515bb&x-expires=1788886800&x-signature=trzk1KwuUXkAO%2Bno9FjrtzWIIjw%3D&from=3218412987","https://p11-sign.douyinpic.com/tos-cn-p-0015/ow3JnAFoQIf3gw3BxjVBfGOCPQKka8HeAAiLM7~noop.jpeg?lk3s=bfd515bb&x-expires=1788886800&x-signature=aI8WRWPyMHkmpf9qH39F2QXZPtU%3D&from=3218412987"]},"sourceReturnedAt": "2026-09-08T11:27:50.000Z"}
💳 Pricing
This Actor uses pay-per-event pricing. You are charged for each hot-search trend saved to the dataset. A run that saves no trend has no trend event to charge.
Charged event
Hot-search trend: One hot-search trend saved to the dataset.
🔌 Integrations
Open the dataset in Apify, read it through the Apify API, or use an Apify schedule for repeated runs.
Video walkthrough
❓ FAQ
Does this Actor need a Douyin login?
No. Hot-search collection uses Douyin's public source and does not ask you for a Douyin login, cookies, or API key.
What happens when I leave Trend limit empty?
The Actor returns all available topics until the source is exhausted. It can return fewer rows when the source has fewer topics.
What does one dataset row represent?
One row represents one distinct hot-search topic. The Actor keeps Douyin's source rank order and saves the first eligible occurrence of a topic.
Are all trend metrics always present?
No. Douyin can omit a metric or identifier for a topic, so optional fields can be null. Cover-image lists can also be empty.
Does this Actor collect videos or calculate historical growth?
No. It collects current public hot-search rows. It does not download videos, scrape comments, run profile analytics, translate text, classify topics, score sentiment, or calculate growth from earlier runs.
📝 Changelog
v1.0 (08-09-2026)
- Trend rows now focus on hot-search topics, source IDs, trend metrics, cover images, and source times. Creator and video detail fields are no longer returned.
- The Actor retries temporary Douyin source failures and reports a clear run failure when no usable response arrives.
- Repeated topics are saved only once, and the Trend limit can request more than 50 topics when Douyin returns them.
v0.2
- Added richer trend output fields.
- Added a dataset table view in Console.
- Lowered the price for each result.
- Improved handling when Douyin is temporarily unavailable.
v0.1
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Weibo Scraper for Posts and Feeds - collect Weibo hot-search topics and public social data for Chinese-platform comparison.
- Kuaishou Scraper - track Kuaishou hot-board topics and source metrics for another Chinese trend feed.
- YouTube Trending Videos Scraper - compare ranked YouTube trends by region and category.
- Twitter Scraper - add regional X trends and public posts to a broader social-monitoring workflow.
- Douyin Hot Search Scraper - compare current Douyin hot-search topics with another direct hot-search Actor.
Made with ❤️ by Maxime Dupré