Douyin analytics Video insight API
Some parts exist only for videos that are trending; for the others those fields are empty.
Douyin video insight (videoInsight)
| Field | What it is |
|---|---|
videoId, url, title, authorId, publishedAt, durationSeconds, cover |
The video |
plays, likes, comments, favorites, shares, interactionRate |
Real play count and engagement as the creator marketplace shows them. Empty for videos it does not track |
performance |
index, likes, comments, shares, each with total, change, daily (a point per day of the period) and benchmarks (category, author, duration, each max and average) |
audience |
Viewer profile by group (age, gender, province and more), each a list of {name, share, index} |
interpretation |
Index scores of the video and its category for plays, interactions and follower growth, and the video's rank (score, percentile, level) |
likesTrendHourly |
Cumulative likes by hour |
likerProvinces |
Provinces of the viewers who liked the video |
commentWords |
Up to 80 comment words with weight |
Some parts exist only for videos that are trending; for the others those fields are empty. A video the source knows nothing about (an old one, for example) returns nothing and is not charged.
The input that produced this run
Mode videoInsight. Parameters as sent, with what each one does.
| Parameter | Value | What it does |
|---|---|---|
mode | "videoInsight" | What to fetch: an analysis record per account, video, creator, keyword or content category; or rows of similar creators, related words, suggestions, hot topics, videos and trend reports, and the creator center's... |
videos | ["7699060466600938792"] | Douyin video links (https://www.douyin.com/video/...) or video IDs (long numbers). Short share links are not supported. Videos from the last weeks that have drawn attention work best; an old or unknown video returns... |
maxResults | 1 | Maximum number of records or rows to return in total for this run. You are charged per record or row returned. |
20 fields in every videoInsight
From the first record of the run above. Identity fields of ordinary users are masked on this site.
| Field | Type | Example |
|---|---|---|
type | str | videoInsight |
videoId | str | 7699060466600938792 |
url | str | https://www.douyin.com/video/7699060466600938792 |
title | str | 深圳17岁高中生,入职硅谷顶尖团队!AI公司疯抢00、10后 #陈广宇 #Kimi月之暗面 #AI智能 #A... |
authorId | str | <masked> |
publishedAt | str | 2026-10-21T10:06:48Z |
durationSeconds | float | 274.716 |
cover | str | https://p26-star-fe-sign.byteimg.com/tos-cn-i-dy/7474f536... |
plays | int | 1306423 |
likes | int | 34094 |
comments | int | 1725 |
favorites | int | 15310 |
shares | int | 30545 |
interactionRate | float | 0.0507 |
performance | dict | {"index": {"total": 997, "change": -35587, "daily": [{"date" |
audience | dict | {"age": [{"name": "18-23", "share": 0.2477, "index": 194.217 |
interpretation | dict | {"video": {"plays": 218, "interactions": 708, "followerGrowt |
likesTrendHourly | list | [{"time": "2026-10-21T18:00:00+08:00", "likes": 14}, {"time" |
likerProvinces | list | [{"name": "广东", "share": 0.26621160409556316, "index": 237.6 |
commentWords | list | [{"word": "普通人", "weight": 11}, {"word": "家庭", "weight": 10} |
A real run, 20 fields per record
Run on 2026-11-09 with input {"mode": "videoInsight", "videos": ["7699060466600938792"], "maxResults": 1}. Personal fields of ordinary users are masked here.
| title | likes | comments | shares | plays | publishedAt |
|---|---|---|---|---|---|
| 深圳17岁高中生,入职硅谷顶尖团队!AI公司疯抢00、10后 #陈广宇 #Kimi月之暗面 #AI智能 #A... | 34094 | 1725 | 30545 | 1306423 | 2026-10-21T10:06:48Z |
All 20 fields in one record
typevideoInsightvideoId7699060466600938792urlhttps://www.douyin.com/video/7699060466600938792title深圳17岁高中生,入职硅谷顶尖团队!AI公司疯抢00、10后 #陈广宇 #Kimi月之暗面 #AI智能 #A...authorIdpublishedAt2026-10-21T10:06:48ZdurationSeconds274.716coverhttps://p26-star-fe-sign.byteimg.com/tos-cn-i-dy/7474f536...plays1306423likes34094comments1725favorites15310shares30545interactionRate0.0507performanceaudienceinterpretationlikesTrendHourlylikerProvincescommentWords
What one videoInsight costs
Run start · $0.00005 · Once per run, when the first request succeeds, even if that request returns nothing. These modes pay several at that moment: accountInsight 3, keywordSuggestions 3, videoInsight 2, categoryInsight 2. Not charged when the run fails from the start or rejects the inputs, or when your spending limit cannot cover it. In creatorCompare, reportDetail and reportRecommendations every input after the first one needs a request of its own, so it is charged one more run start before it is looked up
Run this request yourself
The same input as above, three ways.