TikTok Posts Scraper avatar

TikTok Posts Scraper

Pricing

from $0.25 / 1,000 results

Go to Apify Store
TikTok Posts Scraper

TikTok Posts Scraper

🔥$0.25/1000🔥 .Scrape TikTok user profiles at scale. Extract video captions, play counts, likes, shares, comments, hashtags, music, cover images, and posting dates. Bulk scrape multiple profiles with 40,000+ posts per user. Export to JSON, CSV, Excel. No login, no proxies.

Pricing

from $0.25 / 1,000 results

Rating

1.0

(1)

Developer

Scrape Smith

Scrape Smith

Maintained by Community

Actor stats

1

Bookmarked

33

Total users

6

Monthly active users

6 days ago

Last modified

Share

TikTok Posts Scraper — every post from any profile, with full stats

Give it a TikTok profile, get back its posts as clean, structured data. Captions, hashtags, mentions, views, likes, comments, shares, saves, reposts, sounds, video and cover files, photo posts, and the creator's follower and heart counts — 70+ fields on every row, ready for JSON, CSV or Excel.

Built for one profile or ten thousand. The same run handles a quick 100-post pull and a multi-thousand-post archive without you changing a thing.


Why this one

  • 70+ fields per post — most TikTok scrapers stop at the basic counters. This one also returns creator follower/heart/video counts, sound metadata, video resolution, bitrate and file size, subtitle languages, photo-post images, and every content flag.
  • Bulk by default — pass a list of profiles and it works through all of them in one run. No separate "bulk mode", no per-profile babysitting.
  • Complete, not approximate — if a profile has fewer posts than your limit, you get all of them and the run ends. It never pads, never silently stops halfway.
  • Cheap to run — it does the whole job in a small memory footprint, so a big archive costs a fraction of what a heavyweight scraper costs.
  • Zero setup — paste usernames, press start. Links, @handles and bare usernames all work, mixed together.

Input

FieldTypeWhat it does
usernameslistProfiles to scrape. cnn, @cnn, or https://www.tiktok.com/@cnn — mix freely.
maxPostsPerProfilenumberPosts per profile. 0 collects everything.
proxyConfigurationobjectLeave the default on. Switch to residential only if a run comes back short.
{
"usernames": ["cnn", "@khaby.lame", "https://www.tiktok.com/@zachking"],
"maxPostsPerProfile": 500,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

One row per post. A trimmed sample — the real record carries 70+ fields:

{
"videoId": "7541234567890123456",
"webVideoUrl": "https://www.tiktok.com/@cnn/video/7541234567890123456",
"type": "video",
"text": "Breaking: ...",
"hashtags": ["news", "breaking"],
"mentions": [],
"createTimeISO": "2026-08-24T17:00:00Z",
"playCount": 1840000,
"diggCount": 96400,
"commentCount": 4120,
"shareCount": 2870,
"collectCount": 5310,
"repostCount": 190,
"authorUniqueId": "cnn",
"authorNickname": "CNN",
"authorVerified": true,
"authorFollowerCount": 8100000,
"authorHeartCount": 214000000,
"authorVideoCount": 9840,
"duration": 80,
"width": 720,
"height": 1280,
"definition": "720p",
"sizeBytes": 10151202,
"coverUrl": "https://...",
"playUrl": "https://...",
"downloadUrl": "https://...",
"subtitleLanguages": ["eng-US"],
"musicTitle": "original sound - CNN",
"musicAuthor": "CNN",
"musicUrl": "https://www.tiktok.com/music/x-7679117019819920141",
"isAd": false,
"isPinned": false,
"commentsEnabled": true,
"scrapedAt": "2026-08-28T21:14:03Z"
}

Photo (slideshow) posts come back too, with type: "photo" and every image URL in imageUrls.


Use cases

  • Creator research & influencer vetting — pull a creator's full history and see what actually performs before you pay for a partnership.
  • Competitive tracking — watch rival brand accounts post by post: cadence, hashtags, sounds, and engagement over time.
  • Trend and sound discovery — find which sounds and hashtags are lifting reach across a set of accounts.
  • Social listening & brand monitoring — track mentions and campaign hashtags at scale.
  • Datasets for AI and analytics — feed clean, deduplicated post data into your models, dashboards, or a data warehouse.
  • Content archiving — keep a durable record of a profile's posts and stats.

API, MCP & integrations

Run it from anywhere:

  • REST API — start runs and pull the dataset straight from your own backend.
  • MCP server — expose it as a tool to Claude, ChatGPT or any MCP client so an AI agent can research TikTok profiles on its own.
  • Webhooks — get notified the moment a run finishes and pipe results onward.
  • No-code — wire it into n8n, Make, or Zapier in a few clicks.
  • Python & JavaScript clients, plus LangChain and other agent frameworks.
  • Export to JSON, CSV, Excel, XML or RSS in one click.

FAQ

How many posts can it get from one profile? Everything the profile has publicly — tested well past 10,000 in a single run, and it handles multi-thousand-post archives.

How fast is it? A typical 1,000-post pull finishes in a couple of minutes. Bigger runs scale with the memory you give it.

Can I scrape several profiles at once? Yes — that's the normal way to use it. Put as many as you like in usernames.

What happens if a profile doesn't exist or is private? It's reported clearly in the log and skipped. One bad handle never affects the rest of the run.

Do I need a proxy? The default proxy setting is already correct for most runs. Only switch to residential if a run comes back with fewer posts than you expected.

Is any login needed? No. Public profile data only.


Not affiliated with or endorsed by TikTok. Collects publicly available data only — use it in line with applicable laws and terms.