TikTok competitor analysis: a 7-step method and the tools for it
A TikTok competitor analysis should answer three questions: how do we compare, what are they doing that works, and what are they not doing that we could own. Here is a method that takes an afternoon the first time and an hour a month after that.
Step 1: pick the right competitors
Choose 3 to 8 accounts. Mix three kinds:
- Direct: brands that sell what you sell.
- Attention: accounts your audience watches instead of you, even in another category.
- Aspirational: one account that is far ahead and shows what good looks like.
Find candidates by searching your core keywords on TikTok and noting which brand accounts keep appearing.
Step 2: pull the last 90 days
For each account, collect the profile (followers, total likes) and every video from the last 90 days with plays, likes, comments, shares, saves, caption, hashtags, sound and post time. Ninety days is long enough to smooth out one viral hit and short enough to reflect the current strategy.
Step 3: build the benchmark table
| Account | Followers | Videos / week | Median plays | ER by views | Share rate | Hit rate |
|---|---|---|---|---|---|---|
| You | ||||||
| Competitor A | ||||||
| Competitor B |
ER by views is (likes + comments + shares) / plays. Hit rate is the share of videos above 3x that account's own median plays. Median plays and hit rate together tell you more than follower count ever will.
Step 4: find the outliers
from statistics import median
def outliers(videos, factor=3):
m = median(v["plays"] or 0 for v in videos)
return sorted([v for v in videos if (v["plays"] or 0) > factor * m],
key=lambda v: v["plays"], reverse=True)
Watch every outlier. Each one is a test the competitor ran and won.
Step 5: tag the content
Give every video two or three tags: format (talking head, skit, tutorial, slideshow, duet), hook type (question, claim, problem, trend audio) and topic. Then compare median plays by tag. You will usually find one format that carries the account.
Step 6: check sounds, ads and Shop
- Sounds: do they ride trending sounds or use original audio? TikTok's terms make Commercial Sounds the only sounds available for commercial use source, so this tells you how a brand handles music. See sound analytics.
- Ads: look them up in TikTok's ad library and in Creative Center Top Ads. See how to research TikTok ads.
- Shop: if they sell on TikTok Shop, list their top products and review counts. See TikTok Shop data.
Step 7: write three findings, not thirty
End with three lines: one thing to copy, one thing to avoid, one gap nobody covers. Re-run monthly and compare against last month's table.
Tools that help
| Tool | Fits | Note |
|---|---|---|
| TikTok app and Creative Center | Manual review, free | Fine for 3 accounts; slow for 8 |
| Sprout Social | Teams on many channels | Competitor insights on Professional, $299 per seat a month source |
| Exolyt | TikTok-only dashboards | Free plan tracks 1 account; Essentials $400 a month for 50 source |
| Data API | Custom tables, many accounts | You do the analysis, with the formulas above |
Mistakes that skew the result
- Comparing by followers. A big account with stale reach looks strong on followers and weak on median plays. Use plays.
- Counting paid posts as organic. Boosted videos inflate averages. Flag them first; see how to tell if a TikTok video is an ad.
- Using different windows. Pull every account for the same 90 days.
- Copying one viral video. One outlier is luck. A format that beats the median five times is a strategy.
How to do it with ScrapeIO
Use tiktok profile API and tiktok profile videos API for steps 2 and 3, paging back until created_at is older than 90 days. tiktok ad library search API and tiktok shop products API cover step 6. Eight competitors with a few pages of videos each is well under 100 credits. Our 10-brand benchmark shows the output.
Sources
Checked on 8 November 2026 from each vendor's own pages. Prices and limits change; follow the links before you decide.
- https://www.tiktok.com/legal/page/global/commercial-music-library-user-terms/en
- https://sproutsocial.com/pricing/
- https://exolyt.com/pricing
100 free credits, no card. Credits never expire.
Get API key