TikTok Scraper: Videos, Profiles, Comments, Sounds & Places

Tauqeer Abbas · @nextgensda

Scrape TikTok videos, profiles, hashtag feeds, keyword searches, sounds, places, followers, Shop products and comments. Full metadata: description, author, plays, likes, comments, shares, saves, music, video URLs, covers. No browser and no login; 256 MB.

About

TikTok Scraper: Videos, Profiles, Comments, Sounds, Places & Shop

One rental for all of TikTok: videos, profiles, keyword search, hashtags, sounds, places, followers/following lists, user search, comments, replies and TikTok Shop products.

No browser, no login, no device. 256 MB. Runs in seconds.

Why this actor

This actorBrowser-based TikTok scrapers
One actor for every surfaceyes: one rentalusually split into 5–10 actors
Usage per 1,000 videos~$0.13 (measured on Bytewells)several times more: Chrome + residential proxy
Browser / ChromenoneChromium + residential proxy per session
Memory256 MB1 – 4 GB
Login requirednooften
Output compatibilitynative, Clockworks-style or apidojo-style keysone fixed shape

Because there is no browser in the loop, runs start in seconds and stay inside a quarter of a gigabyte. De-duplication is applied across all inputs, so the same video never comes twice.

Built for AI datasets

Every row is stable, flat and de-duplicated — ready for training, evaluation and retrieval pipelines without a cleaning pass:

  • Pre-training and fine-tuning corpora — descriptions, hashtags, mentions and author metadata with stable ids and timestamps.
  • Multimodal datasets — a playable video URL, cover and dynamic cover, music metadata and duration for every item.
  • Sentiment and topic models — comment text with likes, reply counts, language and the video it belongs to.
  • Trend and engagement forecasting — plays, likes, comments, shares and saves per video, plus creation time, so you can build time series.
  • Retrieval and RAG — search results, hashtag feeds and profiles as a knowledge base for agents.
  • Commerce and recommendation — TikTok Shop products behind each video (product id, title, seller) for recommendation and demand models.
  • Geo and spatial models — place pages with coordinates, city and category.
  • Audio and sound matching — sound pages with title, author, duration and play URL for audio fingerprints and sound recommendation.

Export as JSON, CSV, Excel or XML, stream to your warehouse on a schedule, or deliver through webhooks and the Bytewells API (Apify-compatible: apify-client works with its base URL).

What you get

One row per item, with dataType:

dataTypeFields
videoid, URL, description, created date, author (id, @handle, nickname, sec uid, verified, bio, avatar), plays, likes, comments, shares, saves, reposts, music (id, title, author, original, play URL), video URL, download URL, cover, dynamic cover, dimensions, definition, hashtags, mentions, discovery source
profileid, URL, @handle, nickname, sec uid, bio, verified, private, avatar, followers, following, hearts, video count
commentid, video id/URL, text, created date, likes, reply count, pinned, language, author
soundid, URL, title, author, owner, duration, original, commerce flag, video count, cover, play URL, created date
locationplace id, URL, name, address, city, country, category, latitude/longitude, video count, favourite count, cover
productproduct id, title, seller ids, image, anchor type, and the video it was found on

Duplicates are removed across all inputs. includeComments adds one row per comment of every delivered video; includeReplies adds their replies.

Quick start

  1. Videos — paste video URLs (https://www.tiktok.com/@user/video/123…) or numeric IDs.
  2. Profiles — paste profile URLs, @handles or sec_uids. Each profile comes with its recent videos (up to Max videos per profile).
  3. Searches — keywords; ~110 videos per broad query, plus Search variants for more.
  4. Hashtags — cats, #cats or a tag URL.
  5. Sounds — sound URLs or ids: the sound's page plus the videos using it.
  6. Locations — place URLs or ids: the place plus the videos posted there.
  7. Followers of / Following of — profiles whose follower list to read.
  8. User searches — keywords to find users by name or handle.
  9. For You feed — N videos from the algorithmic feed (optional).

Everything can be combined in one run.

Input

InputDefaultNotes
videos—video URLs or IDs
profiles—URLs, @handles, sec_uids
searches—keywords
hashtags—tags
sounds—sound URLs or ids
locations—place URLs or ids
followersOf—profiles whose followers to list
followingOf—profiles whose following to list
userSearches—user keywords
feedItems0feed items (0 = off)
maxVideosPerProfile200 = profile rows only
maxItemsPerSearch120search depth per keyword or hashtag
maxItemsPerSound1000 = the sound row only
maxItemsPerLocation1000 = the location row only
maxFollowersPerProfile200accounts listed per profile
maxUsersPerSearch20profile rows per user keyword
regionUSISO code whose catalogue to read
postedWithinDays00 = any date; 1/7/30/90/180 days
sortByrelevancerelevance, likes or latest (searches)
searchVariants2extra requests per keyword for more depth
outputFormatnativenative, clockworks or apidojo
includeCommentsfalseone row per comment of each video
maxCommentsPerVideo50
includeRepliesfalsealso read replies
maxRepliesPerComment00 = no reply reads
includeProductsfalseone product row per Shop-anchored video
maxItems1000total rows
requestDelayMs250pacing between requests
proxyConfigurationplatform proxydatacenter by default

Output formats

outputFormat changes the row's field names, not what is scraped:

ValueShape
nativethis actor's flat schema (dataType, authorUniqueId, playCount, …)
clockworksauthorMeta, musicMeta, videoMeta, diggCount, playCount, webVideoUrl, createTimeISO; comments use cid, awemeUrl
apidojoviews, likes, comments, shares, bookmarks, channel, video, song, postPage

The mappings are field-compatible, not byte-identical: values that TikTok does not publish (a video's author follower counts, song album, hashtag ids) stay null instead of being invented. sound, location and product rows are always in the native shape.

Pricing

One monthly rental, no per-row fees: every surface, as many rows as you need. Runs use Bytewells compute from your credit, and this actor needs very little of it.

Measured on Bytewells (256 MB, datacenter proxy):

RunRowsTimeUsage
2 keyword searches39 videos28 s$0.005 (~$0.13 / 1,000)
A video's comments50 comments + the video12 s$0.0003

Notes and limits

  • A keyword search returns up to ~110 videos; Search variants asks the topic's own hashtags again for more (measured 110 → 130+). Narrow, multi-word keywords return fewer.
  • postedWithinDays uses TikTok's own date filter, which narrows the same result pool: short windows return far fewer videos. Hashtag feeds are filtered locally because TikTok ignores the filter there.
  • region selects the catalogue to read (measured: two runs in one region share ~90% of their videos, two regions ~55%).
  • The For You feed is algorithmic: not reproducible run to run.
  • vm.tiktok.com short links are not expanded: open the link and use the redirected URL.
  • Private or deleted videos and profiles are skipped.
  • Shop products come from the video's own Shop anchor; TikTok does not publish a product catalogue to a logged-out session.

More Actors from the same publisher.

View all from @nextgensda