analyzing-tiktok-hashtag-performance
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAnalyzing TikTok Hashtag Performance
TikTok话题标签表现分析
Scrapes TikTok hashtag pages to pull top-performing videos, engagement data, and creator information. Compares multiple hashtags side-by-side to identify which ones deliver the best reach for a given content category.
爬取TikTok话题标签页面,获取表现最佳的视频、参与度数据及创作者信息。可将多个话题标签进行横向对比,找出在特定内容类别中触达效果最好的标签。
Prerequisites
前提条件
- environment variable set
APIFY_TOKEN - Optional: Apify MCP server installed
- 已设置环境变量
APIFY_TOKEN - 可选:已安装Apify MCP服务器
Inputs
输入参数
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
| array | Optional | | TikTok URLs — user profiles, hashtags, music pages, search, locations |
| array | Optional | | Search keywords/terms to find posts |
| string | Optional | | Sort order for keyword results: |
| string | Optional | — | ISO 3166-1 alpha-2 country code for regional filtering (e.g. |
| number | Optional | Unlimited | Maximum posts to return across the run |
| boolean | Optional | | Add the matched search keyword field to each post |
| string | Optional | — | JavaScript function to transform each output object |
| 参数 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 数组 | 可选 | | TikTok链接——用户主页、话题标签、音乐页面、搜索结果、地点页面 |
| 数组 | 可选 | | 用于查找帖子的搜索关键词/术语 |
| 字符串 | 可选 | | 关键词搜索结果的排序方式: |
| 字符串 | 可选 | — | 用于区域过滤的ISO 3166-1 alpha-2国家代码(例如 |
| 数字 | 可选 | 无限制 | 本次运行返回的最大帖子数量 |
| 布尔值 | 可选 | | 为每个帖子添加匹配的搜索关键词字段 |
| 字符串 | 可选 | — | 用于转换每个输出对象的JavaScript函数 |
Workflow
工作流程
Progress:
- [ ] Step 1: Define hashtags to analyze
- [ ] Step 2: Run tiktok-scraper for each hashtag
- [ ] Step 3: Calculate hashtag-level metrics
- [ ] Step 4: Identify top content and creators
- [ ] Step 5: Deliver strategy recommendations进度:
- [ ] 步骤1:定义需要分析的话题标签
- [ ] 步骤2:为每个话题标签运行tiktok-scraper
- [ ] 步骤3:计算话题标签层面的指标
- [ ] 步骤4:识别热门内容与顶级创作者
- [ ] 步骤5:输出策略建议Step 1: Clarify Parameters
步骤1:明确参数
Ask the user for:
- Hashtags to analyze — up to 10 (without #)
- Posts per hashtag (default: 30 — enough for reliable stats)
- Goal — choosing hashtags for a post, auditing a competitor's hashtag strategy, or general research
If the user hasn't provided hashtags yet and wants recommendations, ask for:
- Content niche (e.g., "fitness", "cooking", "personal finance")
- Then generate a mix of: 2 mega hashtags (100M+ views), 3 mid-tier (10M–100M), 3 niche (1M–10M), 2 micro (<1M)
向用户确认以下信息:
- 待分析的话题标签——最多10个(无需添加#)
- 每个话题标签的采样帖子数(默认值:30——足以获取可靠数据)
- 目标——为帖子选择话题标签、审核竞争对手的话题标签策略,或进行通用研究
若用户尚未提供话题标签且需要推荐,请获取:
- 内容细分领域(例如:"健身"、"烹饪"、"个人理财")
- 然后生成组合标签:2个超级话题标签(浏览量1亿+)、3个中量级标签(1000万-1亿)、3个细分领域标签(100万-1000万)、2个微型标签(100万以下)
Step 2: Run the Actor Per Hashtag
步骤2:为每个话题标签运行Actor
Recommended — run_actor.js (handles waiting, output, and file saving automatically):
bash
undefined推荐方式——run_actor.js(自动处理等待、输出及文件保存):
bash
undefinedQuick answer (prints table to chat)
快速输出(在聊天窗口打印表格)
node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
node scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--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
--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
--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
--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": ["[hashtag1]", "[hashtag2]", "[hashtag3]"],
"shouldDownloadCovers": false
}
**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": ["[hashtag1]", "[hashtag2]", "[hashtag3]"]
}'Wait for . Fetch dataset.
SUCCEEDEDnode scripts/run_actor.js
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
--actor "apidojo~tiktok-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
> 需在环境变量或`.env`文件中设置`APIFY_TOKEN`。
**若Apify MCP可用:**工具: apify:run-actor
Actor: "apidojo~tiktok-scraper"
输入:
{
"keywords": ["[hashtag1]", "[hashtag2]", "[hashtag3]"],
"shouldDownloadCovers": false
}
**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": ["[hashtag1]", "[hashtag2]", "[hashtag3]"]
}'等待任务状态变为,然后获取数据集。
SUCCEEDEDStep 3: Calculate Hashtag Metrics
步骤3:计算话题标签指标
For each hashtag, from its video results:
total_views_sampled = sum(video.playCount)
avg_views_per_video = total_views_sampled / num_videos
avg_likes_per_video = sum(video.diggCount) / num_videos
avg_comments_per_video = sum(video.commentCount) / num_videos
engagement_rate = (avg_likes + avg_comments) / avg_views * 100
competition_level = num_videos_per_day (estimate from timestamps)Use (if available) as total hashtag size proxy.
challengeInfo.stats.videoCount针对每个话题标签,从其视频结果中计算:
sampled_total_views = sum(video.playCount)
avg_views_per_video = sampled_total_views / num_videos
avg_likes_per_video = sum(video.diggCount) / num_videos
avg_comments_per_video = sum(video.commentCount) / num_videos
engagement_rate = (avg_likes + avg_comments) / avg_views * 100
competition_level = num_videos_per_day (根据时间戳估算)若可用,使用作为话题标签总规模的参考值。
challengeInfo.stats.videoCountStep 4: Identify Top Content and Creators
步骤4:识别热门内容与顶级创作者
For each hashtag, surface:
- Top 3 videos by play count (with creator handle and video URL)
- Top 3 creators by frequency in the hashtag's top content
- Common content formats in top videos (based on descriptions/captions)
针对每个话题标签,筛选出:
- 播放量排名前三的视频(包含创作者账号及视频链接)
- 在话题标签热门内容中出现频率最高的三位创作者
- 热门视频中的常见内容形式(基于描述/标题)
Step 5: Format Output
步骤5:格式化输出
Output Format
输出格式
undefinedundefinedTikTok Hashtag Performance Analysis
TikTok话题标签表现分析
Hashtags analyzed: [N] | Posts sampled per hashtag: [30] | Date: [DATE]
分析的话题标签数量: [N] | 每个话题标签的采样帖子数: [30] | 日期: [DATE]
Hashtag Comparison Table
话题标签对比表
| Hashtag | Avg Views | Avg Likes | Eng. Rate | Competition | Verdict |
|---|---|---|---|---|---|
| #[name] | [N] | [N] | [X.X%] | [Low/Med/High] | [Use / Test / Avoid] |
| 话题标签 | 平均浏览量 | 平均点赞量 | 参与率 | 竞争程度 | 结论 |
|---|---|---|---|---|---|
| #[name] | [N] | [N] | [X.X%] | [低/中/高] | [推荐使用 / 测试 / 避免使用] |
Detailed Breakdown
详细分析
#[hashtag1]
#[hashtag1]
- Avg views per post: [N]
- Engagement rate: [X.X%]
- Competition level: [Low / Medium / High] — approx [N] new posts/day
- Top video: "[creator]" — [N] views | [url]
- Dominant content format: [e.g., tutorial, reaction, storytelling]
- Recommendation: [Use as primary / Layer with broader tags / Avoid — too saturated]
- 单帖平均浏览量: [N]
- 参与率: [X.X%]
- 竞争程度: [低/中/高] — 每日新增帖子约[N]条
- 热门视频: "[创作者]" — [N]次浏览 | [链接]
- 主流内容形式: [例如:教程、reaction、故事讲述]
- 建议: [作为主标签使用 / 搭配更宽泛的标签 / 避免使用——过于饱和]
#[hashtag2]
#[hashtag2]
[same structure]
[相同结构]
Recommended Hashtag Strategy
推荐话题标签策略
For maximum reach on [CONTENT NICHE], use this combination:
- Primary (1-2 hashtags): [#hashtag] — broad reach driver
- Secondary (2-3 hashtags): [#hashtag] — niche relevance
- Micro (1-2 hashtags): [#hashtag] — community engagement
针对[内容细分领域]实现最大触达,可使用以下组合:
- 主标签(1-2个): [#hashtag] — 广泛触达驱动
- 次标签(2-3个): [#hashtag] — 细分领域相关性
- 微型标签(1-2个): [#hashtag] — 社区参与
Top Creators in These Hashtags
这些话题标签中的顶级创作者
[Creators who appear most in top-performing content across all analyzed hashtags]
- @[handle] — [N] top videos found | [N] followers
undefined[在所有分析话题标签的热门内容中出现频率最高的创作者]
- @[账号] — 发现[N]条热门视频 | [N]位粉丝
undefinedTroubleshooting
故障排除
Very low view counts: Hashtag may be misspelled or very new. Verify spelling and try alternate versions.
All results look the same: Mega-hashtags (#fyp, #foryou) surface algorithmically promoted content, not organic. Use niche hashtags for better signal.
Engagement rate seems too high or low: Engagement rate varies heavily by content type — compare within the same content format for fair benchmarking.
浏览量极低: 话题标签可能拼写错误或非常新。请验证拼写并尝试替代版本。
所有结果看起来相同: 超级话题标签(#fyp、#foryou)展示的是算法推荐内容,而非自然流量内容。使用细分领域话题标签可获得更有效的数据信号。
参与率过高或过低: 参与率因内容类型差异极大——对比相同内容形式的标签才能得到公平的基准数据。