TikTok Shop Product Scraper avatar

TikTok Shop Product Scraper

Under maintenance

Pricing

from $4.00 / 1,000 dataset items

Go to Apify Store
TikTok Shop Product Scraper

TikTok Shop Product Scraper

Under maintenance

Scrape TikTok Shop US products by keyword, category, or URL — title, price, rating, sold count, seller, and images as clean JSON. Reads the real US storefront a shopper sees, with slider-captcha handling built in. Great for product research and trend spotting. Pay only for results.

Pricing

from $4.00 / 1,000 dataset items

Rating

0.0

(0)

Developer

axly

axly

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Extract TikTok Shop (US) product data at scale — by keyword, category, or product URL. This Actor reads the real US TikTok Shop storefront a shopper actually sees and returns clean, structured JSON: title, price, discount, rating, sold count, seller, images, and full product detail.

Unlike scrapers that call TikTok's private mobile API (which breaks every time ByteDance rotates its app request-signing), this Actor reads the storefront's server-rendered data directly — no fragile app signing — and includes a built-in slider-captcha solver so it keeps working when TikTok challenges a session.

⚠️ Proxy requirement — please read first

The TikTok Shop US storefront is US-geo-gated and protected by a slider captcha. This Actor solves the captcha automatically, but TikTok's anti-bot flags shared/overused residential IPs. For reliable results you must run it through a US residential or — best of all — mobile proxy:

  • Recommended: a premium US mobile proxy (TikTok trusts mobile carrier IPs most), or a clean premium US residential proxy.
  • Often blocked: large shared residential pools (including Apify's default RESIDENTIAL and other shared pools) are frequently flagged by TikTok and may return few or no results.

Set your proxy in Proxy configuration (or proxyProvider / bring-your-own). Because pricing is pay-per-result, a run that is fully blocked costs only the small start fee — you are never charged for results you don't receive.


Who is this for?

You are…You use it to…
Dropshippers & TikTok Shop sellersFind trending products before they blow up; track price and units sold over time
E-commerce & brand analystsMonitor a category, benchmark competitor pricing, snapshot catalogs
Agencies & market researchersBuild product datasets, spot demand signals, report on TikTok commerce trends
SaaS / AI developersFeed a stable product JSON schema into an app, dashboard, or AI agent via MCP

What you get — output fields

Each result is one product:

FieldTypeDescription
product_idstringTikTok Shop product ID (19-digit)
titlestringProduct title
urlstringProduct detail page URL
pricenumberCurrent displayed price
original_pricenumberList price before discount (when shown)
currencystringCurrency code (USD for the US storefront)
ratingnumberAverage star rating (0–5)
review_countintegerNumber of reviews/ratings
sold_countstringUnits-sold label, e.g. 10,000+ sold
seller_namestringSeller / shop name
seller_idstringSeller / shop ID
categorystringCategory name (when available)
descriptionstringProduct description (with Fetch full product detail)
imagestringPrimary image URL
imagesarrayAll product image URLs
in_stockbooleanIn-stock flag, when derivable
source_querystringWhich input produced the row (search: / category: / url:)
scraped_atstringISO-8601 scrape timestamp

High-value use cases

  1. Winning-product research — search a niche ("skincare", "kitchen gadgets"), sort by sold count, and surface fast-movers before they saturate.
  2. Price & promo monitoring — schedule daily runs on your competitors' products and track price / original_price drift.
  3. Category intelligence — harvest a category/mall URL to map what's selling and at what price points.
  4. Catalog enrichment — feed a list of productUrls with Fetch full product detail on to pull seller, description, and full image sets into your PIM/CRM.
  5. Trend datasets for AI — pipe structured rows into a vector store or spreadsheet for an LLM to analyze demand.

Input parameters

FieldTypeDefaultDescription
searchQueriesstring[][]Keywords to search (one search per keyword)
categoryUrlsstring[][]Listing/category/mall URLs (harvested by scrolling)
productUrlsstring[][]Product URLs or bare IDs (always fetched with full detail)
maxItemsinteger100Global cap across all inputs
maxItemsPerQueryinteger100Cap per keyword / category
fetchProductDetailsbooleanfalseOpen each product page for full detail (slower, richer)
solveCaptchabooleantrueAuto-solve the OEC slider captcha (else reload-only)
proxyProviderstringapifyapify (your Apify Proxy) or massive (shared pool)
proxyCountrystringUSResidential exit-IP country (keep US)
headlessbooleantrueRun the stealth browser headless
proxyConfigurationobjectApify RESIDENTIAL USUsed when proxyProvider = apify; US IP required

A US residential (ideally mobile) proxy is required. TikTok Shop serves the US storefront only to US IPs, and its captcha flags shared/overused residential pools — for reliable results use a premium US residential or mobile proxy. See the proxy note at the top.

Example input

{
"searchQueries": ["wireless earbuds", "skincare"],
"maxItems": 100,
"maxItemsPerQuery": 50,
"fetchProductDetails": false,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "US"
}
}

Example output

{
"product_id": "1729546869661337000",
"title": "Wireless Earbuds Bluetooth 5.3, 40H Playtime",
"url": "https://shop.tiktok.com/view/product/1729546869661337000",
"price": 19.99,
"original_price": 39.99,
"currency": "USD",
"rating": 4.8,
"review_count": 1203,
"sold_count": "10,000+ sold",
"seller_name": "Acme Audio",
"seller_id": "740000000000",
"category": "Electronics",
"image": "https://p16-oec-sg.ibyteimg.com/…/main.jpg",
"images": ["https://…/1.jpg", "https://…/2.jpg"],
"in_stock": true,
"source_query": "search:wireless earbuds",
"scraped_at": "2026-07-29T12:00:00+00:00"
}

Scheduling & integrations

  • Schedule runs (hourly/daily) from the Apify Console to keep a product feed fresh.
  • Webhooks — trigger a downstream service when a run finishes.
  • Export to JSON, CSV, Excel, or Google Sheets; push to S3 or your DB via the Apify API/integrations (Make, Zapier).
  • Every run's data is available via the Dataset API for programmatic pulls.

Use it from an AI agent (MCP)

Apify Actors are callable over the Model Context Protocol, so assistants like Claude or ChatGPT can run this scraper as a tool. Point your MCP client at the Apify MCP server and call tiktok-shop-product-scraper with the same input as above — great for "find me the top-selling earbuds on TikTok Shop right now" style prompts.

FAQ

Do I need a proxy? Yes — a US residential or mobile proxy (the storefront is US-geo-gated). Because TikTok flags shared/overused residential IPs, a premium US residential or mobile proxy is strongly recommended for reliable results; large shared pools may be blocked. See the proxy note at the top.

How many products can I get per keyword? As many as the storefront renders while scrolling, bounded by maxItemsPerQuery and the global maxItems. Very deep result sets are limited by what TikTok surfaces in the listing.

Why do some rows have fewer fields? List/search cards carry the headline fields (title, price, image, id). Turn on Fetch full product detail to also pull seller, description, category, and full image sets from each product page.

How does it handle the captcha? When TikTok shows the OEC "Lucifer" slider, a built-in computer-vision solver intercepts the challenge images, locates the gap, and drags the real handle so TikTok's own SDK builds the verification. It works reliably from a clean (non-flagged) US IP; from a flagged shared-pool IP the challenge may keep rejecting even a correct solve, so a clean US residential/mobile proxy matters.

Is the data fresh? Every field is read live from the storefront at scrape time (scraped_at records when).

Is scraping TikTok Shop legal? The Actor collects publicly visible product information. You are responsible for complying with TikTok's terms and applicable laws (e.g. GDPR/CCPA) and for how you use the data. No login/private data is accessed.

A run returned zero results. Almost always the proxy: TikTok's captcha is blocking the exit IP. Switch to a premium US residential or mobile proxy (shared residential pools are often flagged). The Actor rotates IPs and retries automatically, and pay-per-result means a fully-blocked run only costs the small start fee.

Can I get reviews / seller catalogs? Not in this Actor — it focuses on product data. Reviews and seller-catalog Actors are planned separately.