Skip to content

TikTok Shop Videos Scraper

Try for free

Scrape TikTok Shop shoppable videos that sell: revenue (GMV), views, ad ROAS, likes, shares, comments, ad and AI-generated flags in 15 markets. Find them by keyword, category, product, creator or shop. Optional daily revenue, CPA and GPM. JSON, CSV, API.

TikTok Shop Videos Scraper finds the shoppable TikTok videos that sell: revenue (GMV), views, ad ROAS, likes, shares, comments, whether the video runs as an ad and whether it is AI-generated, for the last day, 7 days, 30 days or any past month in 15 markets. Search by keyword, category, product, creator or shop. Turn on 📈 Video analytics for units sold, GPM, ad CPA, days advertised and duration.

TikTok Shop Videos Scraper output: top TikTok Shop videos with rank, title, creator, revenue (GMV), views and ads ROAS

$3 per 1,000 videos ($0.003 per row, down to $0.0021 on higher scrape.ly plans); with analytics $40 per 1,000; $0.005 per run start. Paid scrape.ly plans only. No login.

What is TikTok Shop Videos Scraper?

A creative-research tool: the videos that drive TikTok Shop sales, so you can copy what works.

  • Which ads pay off? Ad ROAS, ad share of views and revenue, CPA.
  • Does AI content sell? TikTok's AI-generated flag on every video, filter to include or exclude.

What data can it extract?

About the sales figures: revenue, units sold and growth are estimates from our analytics data provider, not figures published by TikTok. Different periods are estimated separately, so they may not add up exactly.

FieldMeaning
videoId, url, title, creatorUsername, creatorId, publishedAtThe video
revenue, views, revenueGrowthPercent, likes, shares, commentsRevenue (USD) and engagement in the period
isAd, adsRoas, adRevenueSharePercent, adViewSharePercent, isAiVideoPaid promotion and AI flag
unitsSold, gpm, adViews, adCpa, adDays, durationSec, productCountAnalytics option
rank, country, period, source, sourceInput, categoryPosition in the list and which input found the video

How much does it cost?

Paid scrape.ly plans only. On the Free plan a run stops right after it starts and returns no rows; only the $0.005 start fee is charged.

Pricing on scrape.ly: the event prices below are what this Actor charges. Platform usage (compute, proxy, browser) is billed on top at your plan rates.

Pay per event:

EventFree planBronzeSilverGold and up
Video row$0.003$0.0027$0.0024$0.0021
Video row with analytics$0.04$0.038$0.036$0.035

A run start fee of $0.005, and a row with analytics costs $0.04 / $0.038 / $0.036 / $0.035 (the price covers the paid data call behind each such row).

  • Each row is charged once: as a plain video or, with the option on, as a video with analytics.
  • Notices (an input with no results), duplicates across inputs and errors are never billed.
  • Set Max cost per run in the run options and the run stops by itself at that amount, with every delivered row paid for.

How to scrape TikTok Shop videos

  1. Leave the inputs empty for the overall top of a country, or add 🔍 Keywords, 🗂️ Categories, 🛍️ Products, 👤 Creators or 🏪 Shops.
  2. Pick 🌍 Country, 📅 Period and ↕️ Sort by (revenue, views, growth, ad ROAS). Optionally filter by revenue, creator followers and AI-generated videos.
  3. Press Start and export JSON, CSV or Excel.

Sorting by ad ROAS puts small, highly efficient ads first; add a minimum revenue to see big winners.

⬇️ Input

TikTok Shop Videos Scraper input form: TikTok Shop country, period, sort by revenue and max videos

{
  "productIds": ["https://shop.tiktok.com/us/pdp/x/1729448464509734958"],
  "creators": ["@creator_name"],
  "country": "US",
  "period": "last30Day",
  "sortBy": "revenue",
  "maxResultsPerSource": 100,
  "aiVideos": "all",
  "addAnalytics": true
}

⬆️ Output

A video row with analytics (real run of 8 October 2026):

{
  "type": "video",
  "rank": 1,
  "videoId": "7681836945202269470",
  "title": "Replying to @vevi El tipo de magnesio que tomas importa más de lo que crees! 🙏🙏 #tiktokshopcreatorpicks #womenshealth #magnesium #magnesiumcomplex ",
  "url": "https://www.tiktok.com/@trendtoksetter31/video/7681836945202269470",
  "creatorId": "7067789157960680495",
  "creatorUsername": "trendtoksetter31",
  "revenue": 47037.7,
  "views": 2261043,
  "revenueGrowthPercent": -196.4,
  "adsRoas": 0,
  "likes": 63602,
  "shares": 12760,
  "comments": 474,
  "isAd": false,
  "isAiVideo": false,
  "adRevenueSharePercent": 0,
  "adViewSharePercent": 0,
  "publishedAt": "2026-09-04 20:10:52",
  "country": "US",
  "period": "last30Day",
  "currency": "USD",
  "source": "product",
  "sourceInput": "https://shop.tiktok.com/us/pdp/x/1729448464509734958",
  "scrapedAt": "2026-10-08T14:09:50.110Z",
  "unitsSold": 3003,
  "gpm": 20.8,
  "adViews": 0,
  "adCpa": 0,
  "adDays": 0,
  "durationSec": 86.35,
  "productCount": 1,
  "analytics": true
}

Use cases

Creative research for ads and UGC

The 100 best-selling videos of your category this month, with hooks (captions), ad ROAS and AI flag.

Creator vetting

A creator's selling videos, revenue and views before you sign them.

AI agents and pipelines

Ask an agent "which TikTok videos sell this product best" through the scrape.ly MCP server.

Integrations

scrape.ly API (POST /v2/acts/freshowl21~tiktok-shop-videos-scraper/run-sync-get-dataset-items), Python and JavaScript clients, n8n, Make, Zapier, Google Sheets, webhooks and schedules, and the scrape.ly MCP server.

Troubleshooting

  • A notice "Stopped here": the inputs before it returned almost no matching rows, so the run ended instead of reading on; nothing is charged for inputs that were not read. Use broader keywords or categories.
  • A notice row "Creator was not found": check the username; it must be the TikTok handle.
  • Videos with tiny revenue on top: you sorted by ad ROAS; add a minimum revenue.
  • Empty captions: some videos have no caption.

Data sent outside scrape.ly

To collect the data, this Actor sends requests through a licensed TikTok Shop analytics provider (KaloData), which receives your keywords, categories, product, creator or shop IDs and the country. Only what is needed for the request is sent; no scrape.ly credentials, account data or results are shared.

❓ FAQ

Where do the revenue numbers come from?

From licensed TikTok Shop analytics data: the same kind of figures sales-analytics dashboards show. TikTok does not publish revenue, so revenue, units sold and the video / live split are estimates built from public sales counters, prices and content. Use them to compare and rank, not as accounting figures.

Which markets are covered?

The US, UK, Indonesia, Thailand, Vietnam, the Philippines, Malaysia, Singapore, Japan, Mexico, Germany, Italy, France, Spain and Brazil. Revenue is in US dollars for every market.

Does it need a TikTok account, cookies or an API key?

No. Nothing to log in to and no key to bring.

Is it legal to scrape TikTok Shop?

The Actor returns aggregated sales analytics and public profile information. Check that your use complies with TikTok's terms and with data-protection law in your country (GDPR, CCPA), especially before contacting creators.

//From the blog\\

Latest articles

All articles

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes.

No credit card. No setup calls.