discovering-viral-tiktok-content-trends

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Discovering Viral TikTok Content Trends

发掘TikTok病毒式内容趋势

Identifies what's going viral on TikTok in a niche by analyzing high-performing posts. Extracts repeatable content formats, hooks, and structural patterns — the inputs needed to create content that rides existing momentum.
通过分析高表现帖子,识别特定细分领域内TikTok上的病毒式内容。提取可复用的内容形式、钩子及结构模式——这些是创作能借势现有流量的内容所需的关键要素。

Prerequisites

前提条件

  • APIFY_TOKEN
    environment variable set
  • Optional: Apify MCP server installed
  • 已设置
    APIFY_TOKEN
    环境变量
  • 可选:已安装Apify MCP服务器

Inputs

输入参数

ParameterTypeRequiredDefaultNotes
startUrls
arrayOptional
[]
TikTok URLs — user profiles, hashtags, music pages, search, locations
keywords
arrayOptional
[]
Search keywords/terms to find posts
sortType
stringOptional
RELEVANCE
Sort order for keyword results:
RELEVANCE
,
MOST_LIKED
,
DATE_POSTED
location
stringOptionalISO 3166-1 alpha-2 country code for regional filtering (e.g.
US
,
GB
)
maxItems
numberOptionalUnlimitedMaximum posts to return across the run
includeSearchKeywords
booleanOptional
false
Add the matched search keyword field to each post
customMapFunction
stringOptionalJavaScript function to transform each output object
参数类型是否必填默认值说明
startUrls
数组可选
[]
TikTok链接——用户主页、话题标签、音乐页面、搜索结果、地点页面
keywords
数组可选
[]
用于查找帖子的搜索关键词/术语
sortType
字符串可选
RELEVANCE
关键词搜索结果的排序方式:
RELEVANCE
(相关性)、
MOST_LIKED
(点赞最多)、
DATE_POSTED
(发布日期)
location
字符串可选用于区域过滤的ISO 3166-1 alpha-2国家代码(例如
US
GB
maxItems
数字可选无限制本次运行返回的最大帖子数量
includeSearchKeywords
布尔值可选
false
为每个帖子添加匹配的搜索关键词字段
customMapFunction
字符串可选用于转换每个输出对象的JavaScript函数

Workflow

工作流程

Progress:
- [ ] Step 1: Search niche hashtags
- [ ] Step 2: Filter for high-performing posts
- [ ] Step 3: Analyze content formats and hooks
- [ ] Step 4: Score trend viability for replication
- [ ] Step 5: Deliver trend brief
进度:
- [ ] 步骤1:搜索细分领域话题标签
- [ ] 步骤2:筛选高表现帖子
- [ ] 步骤3:分析内容形式与钩子
- [ ] 步骤4:评估趋势可复制性得分
- [ ] 步骤5:交付趋势简报

Step 1: Search Hashtags

步骤1:搜索话题标签

Recommended — run_actor.js (handles waiting, output, and file saving automatically):
bash
undefined
推荐方式——run_actor.js(自动处理等待、输出及文件保存):
bash
undefined

Quick answer (prints table to chat)

快速输出(在聊天中打印表格)

node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'

Save as CSV

保存为CSV格式

node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.csv --format csv
node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.csv --format csv

Save as JSON

保存为JSON格式

node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
> `APIFY_TOKEN` must be set in environment or `.env` file.

**If Apify MCP is available:**
Tool: apify:run-actor Actor: "apidojo~tiktok-scraper" Input: { "keywords": ["#[niche]", "#[niche]tiktok", "#[niche]foryou"], "maxItems": 200 }

**REST API fallback:**
```bash
curl -X POST   "https://api.apify.com/v2/acts/apidojo~tiktok-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"keywords": ["#skincaretips", "#skincaretiktok"], "maxItems": 200}'
Filter:
playCount >= min_views
node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
> `APIFY_TOKEN`必须在环境变量或`.env`文件中设置。

**若Apify MCP可用:**
工具: apify:run-actor Actor: "apidojo~tiktok-scraper" 输入: { "keywords": ["#[niche]", "#[niche]tiktok", "#[niche]foryou"], "maxItems": 200 }

**REST API备选方案:**
```bash
curl -X POST   "https://api.apify.com/v2/acts/apidojo~tiktok-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"keywords": ["#skincaretips", "#skincaretiktok"], "maxItems": 200}'
筛选条件:
playCount >= min_views

Step 2: Analyze Content Patterns

步骤2:分析内容模式

From caption and available metadata, classify:
hook_type:
  QUESTION = caption starts with or contains "?", "have you", "do you", "did you know"
  LIST = "X things", "here are the", "number [N]"
  BEFORE_AFTER = "I did X for 30 days", "watch the transformation"
  STORY = first-person narrative opener ("I was struggling with...")
  CONTROVERSY = "unpopular opinion", "no one talks about", "this is controversial"
  TUTORIAL = "how to", "step by step", "the only guide you need"

content_length_tier:
  SHORT = video duration < 15 seconds
  MEDIUM = 15-60 seconds
  LONG = > 60 seconds
从标题和可用元数据中,分类如下:
hook_type:
  QUESTION = 标题以"?"开头或包含"have you"、"do you"、"did you know"
  LIST = "X things"、"here are the"、"number [N]"
  BEFORE_AFTER = "I did X for 30 days"、"watch the transformation"
  STORY = 第一人称叙事开头("I was struggling with...")
  CONTROVERSY = "unpopular opinion"、"no one talks about"、"this is controversial"
  TUTORIAL = "how to"、"step by step"、"the only guide you need"

content_length_tier:
  SHORT = 视频时长 < 15秒
  MEDIUM = 15-60秒
  LONG = > 60秒

Step 3: Score Trend Replicability

步骤3:评估趋势可复制性得分

trend_score = (playCount / 1000000, max 1) * 0.30
            + (diggCount / playCount * 100 > 3 ? 1 : ratio/3) * 0.25
            + (commentCount / playCount * 100 > 0.5 ? 1 : ratio/0.5) * 0.25
            + (format_is_replicable: TUTORIAL/LIST/QUESTION = 1, BEFORE_AFTER = 0.8, STORY = 0.6) * 0.20
Trend window: posts all from the same 7-day period =
TRENDING NOW
; spread over 30 days =
ESTABLISHED FORMAT
trend_score = (playCount / 1000000, max 1) * 0.30
            + (diggCount / playCount * 100 > 3 ? 1 : ratio/3) * 0.25
            + (commentCount / playCount * 100 > 0.5 ? 1 : ratio/0.5) * 0.25
            + (format_is_replicable: TUTORIAL/LIST/QUESTION = 1, BEFORE_AFTER = 0.8, STORY = 0.6) * 0.20
趋势周期: 所有帖子均来自同一7天周期 =
TRENDING NOW
(当前热门);分布在30天内 =
ESTABLISHED FORMAT
(成熟形式)

Step 4: Edge Cases

步骤4:边缘情况处理

  • Trend driven by a single mega-creator: If top 3 posts are from same creator, it's a creator trend not a format trend — flag as
    CREATOR_DRIVEN
    ; harder to replicate without their audience
  • Trend requires specific audio: Note if posts share the same sound; audio trends are TikTok-specific and may expire quickly
  • Niche too small (< 50 posts above threshold): Lower
    min_views
    to 25K; or report the top posts available with a note on data volume
  • International content dominates: Filter by caption language; use English-language posts if targeting English-speaking audience
  • 由头部创作者驱动的趋势:如果排名前三的帖子来自同一创作者,这是创作者个人趋势而非形式趋势——标记为
    CREATOR_DRIVEN
    ;若无其受众基础则较难复制
  • 需要特定音效的趋势:注意帖子是否使用相同音效;音效趋势是TikTok特有的,可能会快速过时
  • 细分领域过小(符合阈值的帖子<50条):将
    min_views
    降至25K;或报告现有热门帖子并注明数据量限制
  • 国际内容占主导:按标题语言筛选;若针对英语受众则使用英文帖子

Output Format

输出格式

undefined
undefined

TikTok Viral Trend Report: [NICHE]

TikTok病毒式趋势报告: [NICHE]

Period: [DATE_RANGE] | Posts analyzed: [N] | Viral posts (>[MIN_VIEWS] views): [N] | Date: [DATE]
周期: [DATE_RANGE] | 分析帖子数: [N] | 病毒式帖子(播放量>[MIN_VIEWS]): [N] | 日期: [DATE]

Top Performing Formats

表现最佳的内容形式

Format# PostsAvg ViewsAvg Like RateBest Example
Tutorial[N][N][X%]@[handle]: "[caption excerpt]"
List[N][N][X%]
形式帖子数量平均播放量平均点赞率最佳示例
Tutorial[N][N][X%]@[handle]: "[标题节选]"
List[N][N][X%]

Top Viral Posts

热门病毒式帖子

CreatorViewsLikesCommentsHook TypeCaption Preview
创作者播放量点赞数评论数钩子类型标题预览

Hook Patterns Worth Replicating

值得复制的钩子模式

  1. "[Hook structure]" — used in [N] viral posts, avg [N] views Example: "[verbatim hook from top post]"
  1. "[钩子结构]" — 被[N]条病毒式帖子使用,平均播放量[N] 示例: "[来自热门帖子的原句钩子]"

Trend Window Assessment

趋势周期评估

  • TRENDING NOW (< 7 days): [N] posts in format
  • ESTABLISHED FORMAT (7-30 days): [N] posts
  • FADING (> 30 days): [N] posts
  • 当前热门(<7天): [N]条该形式帖子
  • 成熟形式(7-30天): [N]条帖子
  • 衰退中(>30天): [N]条帖子

Recommended Content Angles for [NICHE]

[NICHE]领域推荐内容方向

  1. [Format + hook recommendation with rationale]
  2. [Format + hook recommendation]
undefined
  1. [形式+钩子推荐及理由]
  2. [形式+钩子推荐]
undefined

Troubleshooting

故障排除

All viral posts are from mega-creators: Add filter
follower_count < 500K
to surface format trends from creators of all sizes. Format analysis is inconsistent: Caption text is the only metadata available without video analysis; use it as a proxy and note this limitation. Trend is already declining: TikTok trends typically peak and decline within 2-3 weeks; if freshness is low, recommend adapting the format with a new angle rather than copying directly.
所有病毒式帖子均来自头部创作者:添加筛选条件
follower_count < 500K
,以发掘不同规模创作者的形式趋势。 形式分析不一致:若无视频分析,标题文本是唯一可用的元数据;将其作为替代指标并注明此限制。 趋势已开始衰退:TikTok趋势通常在2-3周内达到峰值并衰退;若新鲜度较低,建议调整形式而非直接复制。