Douyin Analytics Scraper avatar

Douyin Analytics Scraper

Pricing

$3.55 / 1,000 hot-search trends

Go to Apify Store
Douyin Analytics Scraper

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é

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

6

Total users

1

Monthly active users

8 hours ago

Last modified

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.

📈 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

  1. Set Trend limit to 30 for a small first run or 50 for the full current public list.
  2. Start the Actor and open the dataset when the run finishes.
  3. 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

FieldTypeWhat it does
maxResultsintegerSets 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

FieldTypeWhat it does
resultsstring URLOpens the run dataset with the saved Douyin trend rows.

Trend row fields

FieldTypeWhat it does
rowTypestringIdentifies the row as a hotSearchTrend row.
inputModestringNames the Douyin source mode used for the row.
inputValuestringGives the source value used to create the row.
rankintegerGives the topic's rank in Douyin's hot-search list.
titleOrKeywordstringGives the hot-search topic text from Douyin.
douyinIdstring or nullGives the main Douyin sentence or group ID when available.
sentenceIdstring or nullGives the Douyin sentence ID when available.
groupIdstring or nullGives the Douyin group ID when available.
sourceIdsobjectGroups the source sentence and group IDs.
sourceIds.sentenceIdstring or nullGives the source sentence ID when available.
sourceIds.groupIdstring or nullGives the source group ID when available.
sourceUrlstring URLGives the Douyin hot-search URL used for the row.
scrapedAtdate-time stringGives the UTC time when the Actor saved the row.
snapshotIdstringGives the Douyin hot-search snapshot ID.
trendobjectGroups the trend metrics and source attributes.
trend.hotValuenumber or nullGives Douyin's hot value when available.
trend.videoCountnumber or nullGives the video count reported by Douyin when available.
trend.discussVideoCountnumber or nullGives the discussion-video count reported by Douyin when available.
trend.articleDetailCountnumber or nullGives the article count reported by Douyin when available.
trend.roomCountnumber or nullGives the live-room count reported by Douyin when available.
trend.maxRanknumber or nullGives the maximum rank reported by Douyin when available.
trend.eventTimedate-time string or nullGives the trend or event time reported by Douyin in UTC when available.
trend.sentenceTagnumber or nullGives Douyin's sentence tag when available.
trend.wordTypenumber or nullGives Douyin's word type when available.
trend.labelnumber or nullGives Douyin's category label when available.
mediaobjectGroups the cover-image URLs returned by Douyin.
media.coverImageUrlstring URL or nullGives the first cover-image URL when available.
media.coverImageUrlsarray of URL stringsLists the cover-image URLs returned for the topic. The list can be empty.
sourceReturnedAtdate-time string or nullGives 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 🫡

Made with ❤️ by Maxime Dupré