TikTok Scraper - Videos, Profiles & Engagement Analytics avatar

TikTok Scraper - Videos, Profiles & Engagement Analytics

Pricing

from $2.55 / 1,000 video/profile results

Go to Apify Store
TikTok Scraper - Videos, Profiles & Engagement Analytics

TikTok Scraper - Videos, Profiles & Engagement Analytics

Scrape TikTok profiles and videos: captions, stats, hashtags, engagement rate, virality score, sponsorship detection and watermark-free download links. Export to CSV, Excel, JSON.

Pricing

from $2.55 / 1,000 video/profile results

Rating

0.0

(0)

Developer

RecordsData

RecordsData

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

11 hours ago

Last modified

Share

RecordsData

🎡 TikTok Scraper: Videos, Profiles & Analytics

Category Proxy Node Status

πŸš€ TikTok Scraper is an Apify Actor that exports TikTok videos and profiles in seconds, with engagement rate, a virality score, sponsorship detection, and watermark-free download links already computed for you, not just raw numbers.

πŸ•’ Last updated: 2026-08-28 Β· πŸ“Š 30+ fields per record Β· verified on a real cloud run against @tiktok Β· by RecordsData

TikTok's own app gives you a scroll feed. This Actor gives you a dataset: every video's caption, stats, hashtags, and music. Plus the analysis layer most scrapers leave for you to build yourself. Point it at a list of profiles or specific video URLs and get back a table ready for a spreadsheet, a BI dashboard, or an LLM prompt.

πŸ“š Table of Contents

🎯 Who this is for

🎯 Target AudienceπŸ’‘ Primary Use Cases
πŸ“Š Social media analystsCompetitor & trend tracking
πŸ“£ Marketing / brand teamsInfluencer vetting, sponsorship audits
πŸ“ˆ Growth & content teamsPosting-time and engagement benchmarking
πŸŽ“ Researchers & journalistsPublic discourse and trend analysis

πŸ“‹ What the TikTok Scraper does

  • πŸ‘€ Scrapes recent videos from a list of TikTok profiles
  • πŸ”— Scrapes direct video URLs individually
  • πŸ“ˆ Computes engagement rate and a 0–100 virality score per video
  • πŸ’° Flags likely sponsored/ad content from caption signals
  • #️⃣ Cleans hashtags and mentions into real arrays, not raw text
  • πŸ•’ Adds posting-time analytics (day of week, hour UTC)
  • ⬇️ Returns a watermark-free download URL for every video
  • πŸ‘₯ Optionally enriches each video with the author's full stats (followers, following, total hearts, video count)

πŸ“ˆ How it compares to alternatives

🎡 TikTok Scraper (this)Narrow single-purpose scrapersManual export
Engagement rateβœ… built in❌ compute yourself❌
Virality scoreβœ… built in❌❌
Sponsored-content detectionβœ… built in❌❌
Posting-time analyticsβœ… built in❌❌
Clean hashtag/mention arraysβœ… built inOften raw text only❌
Watermark-free download URLβœ…Varies❌
Profiles and direct video URLsβœ…Usually one or the otherNone
Scheduling, API, integrationsβœ… (Apify platform)Varies❌
Comments / hashtag search / AI summariesπŸ—ΊοΈ roadmapSome offer today❌

βš™οΈ Input

FieldTypeDefaultDescription
profilesarrayNoneTikTok usernames or profile URLs to scrape
postURLsarrayNoneDirect TikTok video URLs to scrape individually
resultsPerPageinteger20Max videos to pull per profile
maxItemsinteger10 (free)Cap across everything combined, paid plans up to 1,000,000
excludePinnedPostsbooleanfalseSkip videos pinned to the top of a profile
oldestPostDatestringNoneOnly videos posted on/after this date (YYYY-MM-DD)
newestPostDatestringNoneOnly videos posted on/before this date (YYYY-MM-DD)
scrapeAdditionalAuthorMetabooleantrueFetch full author stats (followers, hearts, video count)
detectSponsoredContentbooleantrueFlag likely ads from caption/hashtag signals
proxyConfigurationobjectRESIDENTIALRequired for reliable results, TikTok blocks datacenter IPs at scale

Minimal, scrape 2 profiles:

{
"profiles": ["tiktok", "nike"],
"resultsPerPage": 25,
"maxItems": 50
}

Scrape one specific video:

{
"postURLs": ["https://www.tiktok.com/@tiktok/video/7679101730352565535"]
}

⚠️ Good to know: postURLs is matched against the author's most recent uploads. Very old videos may not be found. Use profiles with a higher resultsPerPage instead for deep history. TikTok's anti-bot defenses are inconsistent by design; the Actor automatically retries a profile once if the first attempt returns nothing.

πŸ“Š Output

FieldDescription
πŸ–Ό imageUrlVideo cover image
πŸ†” idVideo ID
πŸ“ textCaption
πŸ”— urlVideo/profile URL
πŸ“Œ isPinnedWhether the video is pinned to the profile
πŸ“’ isAdTikTok's own platform-declared ad flag
πŸ‘€ authorMetaId, name, profile URL, avatar, verified, private account, bio + bio link + (optional) full stats: followers, following, friends, hearts, videos, total diggs given
🎡 musicMetaSound name, author, album, original vs. cover
🎬 videoMetaDuration, resolution, format, cover, watermark-free download URL
❀️ diggCountLikes
πŸ’¬ commentCountComments
▢️ playCountPlays
πŸ” shareCountShares
⭐ collectCountSaves
πŸ”‚ repostCountReposts
#️⃣ hashtagsCleaned hashtag array
@️⃣ mentions / detailedMentionsCleaned @handle array + resolved {id, name, profileUrl} objects
πŸ’° isSponsoredContent / sponsorSignalsOur own ad-detection heuristic + matched signals (independent from the platform's isAd flag)
πŸ“ˆ engagementRate(likes+comments+shares+saves) / plays, as %
πŸ”₯ viralityScore0–100 composite score
πŸ“… postedDayOfWeek / postedHourUTCPosting-time analytics
🌐 captionLanguageDetected caption language (heuristic)
πŸ•“ createTimeISOWhen the video was posted
πŸ•’ scrapedAtWhen this record was scraped
❌ errorPresent only on failed items

Download the dataset as JSON, CSV, Excel, or XML straight from the Apify Console, or pull it via the API.

🧾 Sample record (real data)

πŸš€ How to use

  1. Sign up or log in at console.apify.com
  2. Open TikTok Scraper and go to the Input tab
  3. Add usernames to profiles or full URLs to postURLs
  4. Set resultsPerPage / maxItems and click ▢️ Start
  5. Download results as JSON, CSV, Excel, or XML. Or pull them via the API

πŸ’Ό Business use cases

πŸ† Competitor & trend tracking🀝 Influencer vetting
Track a list of competitor accounts, spot which videos are outperforming via viralityScore, and export weekly to your BI tool.Pull a creator's recent videos with scrapeAdditionalAuthorMeta on to check real engagement rate against follower count before a sponsorship deal.
πŸ—“οΈ Content strategyβš–οΈ Compliance / ad-disclosure audits
Use postedDayOfWeek / postedHourUTC across your top-performing videos to find the best posting windows for your niche.Use isSponsoredContent and sponsorSignals to flag videos that look sponsored but may be missing proper disclosure.

πŸ”Œ Integrate with any app

Pull results via the Apify API, or connect to Make, Zapier, Google Sheets, Airbyte, n8n, or any webhook-based tool from the Apify Console Integrations tab. Schedule recurring runs with Apify's built-in Scheduler.

curl "https://api.apify.com/v2/acts/RecordsData~tiktok-scraper/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-d '{ "profiles": ["tiktok"], "maxItems": 10 }'

πŸ’° Cost

PlanWhat you get
πŸ†“ FreeUp to 10 items per run (preview)
πŸ’³ PaidUp to 1,000,000 items per run, billed on Apify usage (compute + residential proxy)

Cost scales mainly with how many profiles/videos you visit, not raw item count. Set resultsPerPage higher to pull more videos per profile visit and get a better cost-per-item.

❓ Frequently Asked Questions

Does this work without a proxy? No. TikTok blocks datacenter IPs at scale. RESIDENTIAL proxy is the default and required for reliable results.

Why did a profile return 0 items? TikTok's anti-bot defenses are inconsistent; the Actor retries once automatically. If it still returns nothing, the profile may be private, empty, or temporarily rate-limiting your proxy session. Try again.

Can I scrape any video by URL? Videos are matched against the author's most recent uploads. Very old videos may not be found. Use profiles with a higher resultsPerPage for deep history instead.

Does it download the video file itself? It returns a direct, watermark-free downloadUrl. The Actor doesn't download/store the binary video for you.

Is this affiliated with TikTok? No. See disclaimer below.

What counts as a "result" for pricing? Each video record in your output dataset.

Can I filter by date? Yes, oldestPostDate / newestPostDate.

Does it scrape comments? Not in this version. See roadmap below.

Can I run this on a schedule? Yes, use Apify's built-in Scheduler.

What happens on the free plan? Results are capped at 10 items per run.

πŸ—ΊοΈ Roadmap

  • πŸ’¬ Comments
  • πŸ”Ž Hashtag / keyword search
  • πŸ‘₯ Follower / following lists
  • πŸ€– AI video summaries

⚠️ Disclaimer: This is an independent tool, not affiliated with, endorsed by, or sponsored by TikTok. It only collects data that is publicly visible on TikTok's website.

πŸ†˜ Need help or want a custom scraper? Contact RecordsData at contact.punkrecordsdata@gmail.com.