Tiktok Viral Video Finder avatar

Tiktok Viral Video Finder

Pricing

from $2.40 / 1,000 video results

Go to Apify Store
Tiktok Viral Video Finder

Tiktok Viral Video Finder

TikTok Viral Video Finder finds high-performing TikTok videos by trend, keyword, hashtag, or creator, with views, likes, comments, shares, and viral scoring. Use it for content research, competitor monitoring, creator scouting, and trend analysis.

Pricing

from $2.40 / 1,000 video results

Rating

0.0

(0)

Developer

Delowar Munna

Delowar Munna

Maintained by Community

Actor stats

2

Bookmarked

31

Total users

4

Monthly active users

12 hours ago

Last modified

Share

TikTok Viral Video Finder Thumbnail

Find TikTok videos that are accelerating before they become obvious. Search by keyword, hashtag, sound/music, creator, or trending — then get a ranked shortlist of viral clips, plus a breakdown of which sounds are driving them.

What this Actor does

Most scrapers return videos that look viral now (high totals). This one focuses on videos that are becoming viral — it derives rate-of-growth signals (views per hour, share rate, creator overperformance, recency) from each clip and ranks by a transparent breakout score. Output is flat, CSV-friendly rows for datasets, Sheets, BI tools, and AI pipelines.

Output preview

VideoAgeViews/hrShares/1KTrend stageBreakout
Example A18h31,20048Accelerating92
Example B3d8,40021Rising78
Example C11h5,90056Emerging81

Put everything in the single Search field (queries), one entry per line — the type is detected automatically, and you can mix them freely:

  • a keyword or niche — skincare routine
  • a #hashtag or hashtag URL — #beautytok
  • an @creator or profile URL — @mikaylanogueira
  • a sound/music URL or ID — https://www.tiktok.com/music/…-7123…

Leave it empty (or tick Include Trending Feed) to pull the public trending feed.

Viral presets (the easy button)

Set viralPreset and it tunes the ranking and recency for you — no need to touch any thresholds:

  • fast-rising — young videos climbing fast, ads excluded
  • small-creator-breakouts — clips far outperforming the creator's follower base
  • most-shared — sorted by shares, high share rate
  • competitor-winners — best recent posts from your listed creators
  • early-emerging — very young clips already picking up speed
  • exclude-established — drop older, already-saturated posts

Quick start

{
"queries": ["#beautytok", "skincare routine"],
"viralPreset": "fast-rising",
"maxVideos": 30
}

Find every viral clip using a specific sound (just paste the URL):

{
"queries": ["https://www.tiktok.com/music/original-sound-7123456789012345678"],
"maxVideos": 50,
"sortBy": "breakoutScore"
}

Input summary

Discovery: queries (one box — keywords, #hashtags, @creators, sound/music URLs, auto-detected), includeTrending Filters: maxVideos (default 50), country, timePeriod (1d / 7d / 30d / 90d / all — default all = no cutoff; when set, a strict publication-date cutoff for searches, trending feed exempt), sortBy (breakoutScore / viewsPerHour / playCount / likeCount / commentCount / shareCount / createTime) Advanced Filtering: minViews, minShares, minEngagementRate (percentage, e.g. 5 for 5%), minFollowers / maxFollowers (creator follower range, best-effort), languageHint (Language), verifiedCreatorsOnly, excludeAds (default on). Using any filter in this section (changing it from its default) adds a one-time advanced-filtering charge for the run — see Pricing.

Proxy, scraping infrastructure, deduplication, scoring, and diagnostics are handled automatically — there are no execution or proxy settings in the form. (Advanced fields like includeScoring, deduplicateVideos, or a custom proxyConfiguration remain accepted via the API for power users.)

Output (one row per video)

Core: videoId, videoUrl, caption, createTime, durationSeconds, videoThumbnailUrl, playCount, likeCount, commentCount, shareCount, saveCount Creator attribution: creatorUsername, creatorProfileUrl, creatorId, creatorDisplayName, creatorVerified, creatorFollowersCount, creatorFollowingCount, creatorLikesCount Sound: soundTitle, soundId, soundAuthor Classification & lineage: hashtags, mentions, region, language, isAd, discoveredVia, sourceKeywords, sourceHashtags, sourceSeedCreators, sourceCountry, sourceTimePeriod, discoveryCount Velocity: ageHours, viewsPerHour, likesPerHour, commentsPerHour, sharesPerHour, likesPer1000Views, commentsPer1000Views, sharesPer1000Views, viewToFollowerRatio, trendStage Breakout: breakoutScore (0–100), scoreConfidence, scoreComponents, viralScore (alias of breakoutScore), viralScoreReason, engagementRateApprox, velocityHint, isRecent, isBreakoutCandidate, qualificationBucket, qualificationReason Run metadata: position, scrapedAt, isPartial, errorType, errorMessage

Most-used sounds

Every run also writes a ranked breakdown of the sounds driving the results — "this sound is used most, then the 2nd…" — to the TRENDING_SOUNDS key-value record (and the top 10 in SUMMARY.trendingSounds). Each entry: rank, soundId, soundTitle, soundAuthor, videoCount, totalViews, avgBreakoutScore, topVideoUrl.

Output views

Dataset tabs: overview, breakout (highest breakout scores + confidence + trend stage), fastestGrowing (by views/likes/shares per hour), lineage, qualification, errors.

How the breakout score works

breakoutScore is a transparent blend of six named components, all returned in scoreComponents:

ComponentWeightSignal
viewMomentumScore30%views per hour
shareIntentScore20%shares per 1,000 views
engagementQualityScore15%engagement rate
creatorOverperformanceScore15%views ÷ followers
recencyScore15%how recently posted
discoveryOverlapScore5%found via multiple sources

scoreConfidence drops to low when a post date is unavailable (which disables the velocity components). Because each video is observed once per run, velocity is inferred from the video's age, not measured across runs.

Pricing

Pay-per-event:

  • video-result — charged once per returned video row.
  • advanced-filtering — charged once per run when you apply any Advanced Filtering control (any field in that section set to a non-default value). Leave them at their defaults and this is not charged.

Both respect your spending limit and stop billable output when the charge limit is reached.

🚦 Proxy policy

Discovery runs through a signed API (browserless) for reliability — TikTok gates guest browser search, so results are fetched via a hosted signer rather than scraped from a headless page. The proxy settings below apply to the fallback browser mode (used when the signer isn't configured).

Use Apify Datacenter proxy or no proxy for normal runs — both work reliably for TikTok discovery pages (explore / search / hashtag / sound / creator) at this actor's conservative concurrency. The actor also blocks the heavy page bytes (images, video, fonts) so only the data we parse is fetched, keeping bandwidth low; stylesheets and scripts still load so pages render and behave normally.

Apify Residential proxy is not supported. The actor will fail at startup if apifyProxyGroups includes RESIDENTIAL. Reason: in pay-per-event actors, residential bandwidth is billed to the developer, not the run user, so a single bandwidth-heavy run could exceed the per-result event revenue.

If you genuinely need residential routing, supply your own residential provider via the proxy editor's Custom proxy URLs field — that traffic goes through your provider, not Apify, and is unaffected:

http://user:pass@proxy.iproyal.com:12321
http://user:pass@proxy.brightdata.com:22225
http://user:pass@proxy.oxylabs.io:7777

Use cases

  • viral/trend content discovery and monitoring
  • finding every clip riding a trending sound
  • competitor and niche tracking
  • UGC and creative inspiration
  • reporting, analytics, and AI pipelines

Notes and limitations

  • Public TikTok data only. Breakout/velocity scores are heuristics, not official metrics.
  • Available fields vary by discovery path and TikTok response shape. country is a soft preference — it ranks local clips first and never removes videos (TikTok rarely tags region). languageHint is best-effort and only excludes rows when TikTok supplies a real language.
  • timePeriod is a strict publication-date cutoff for searches (keyword / hashtag / sound / creator) — videos older than the window are excluded (you get fewer results rather than older filler). Choose all to disable it. Clips with an unknown post date are kept. The trending feed is exempt (trending is current by nature; TikTok's explore surface returns evergreen-popular clips).
  • Follower filters are best-effort: clips where TikTok didn't return a follower count are retained. Explicit filter values override any preset. If Minimum Creator Followers exceeds Maximum, the range is ignored and a warning is logged.
  • Proxy is handled internally (Apify datacenter by default) — you don't configure proxies, sessions, or cookies. Each run logs a Filter funnel line showing exactly why videos were dropped.

Changelog

0.2

  • Single Search box that auto-detects keywords, #hashtags, @creators, and sound/music URLs (one field for all discovery types).
  • Sound/music discovery plus a most-used-sounds breakdown (TRENDING_SOUNDS).
  • Breakout scoring with transparent components, velocity fields, and trend stage; viralScore kept as an alias.
  • Simplified form: Time Period is now a dropdown (1d/7d/30d/90d/all), a strict cutoff for searches (trending feed exempt); the filters section is Advanced Filtering with only useful discovery filters; execution/diagnostic/proxy controls hidden and handled internally. A preset's velocity filters auto-relax if they would return zero.
  • Creator follower range (minFollowers/maxFollowers), best-effort with unknown counts retained.
  • country is now a soft local-first ranking preference (never drops videos); a Filter funnel log explains every dropped video.
  • Creator-lead generation removed — this actor is focused on viral video + sound discovery.