TikTok Shop Scraper - Products, Prices, Sellers, Search avatar

TikTok Shop Scraper - Products, Prices, Sellers, Search

Pricing

Pay per usage

Go to Apify Store
TikTok Shop Scraper - Products, Prices, Sellers, Search

TikTok Shop Scraper - Products, Prices, Sellers, Search

Scrape TikTok Shop product listings, prices, ratings, sellers, and search results across US, UK, Singapore, Malaysia, Philippines, Thailand, Vietnam, and Indonesia. No API key required.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Hasnain Nisar

Hasnain Nisar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 hours ago

Last modified

Share

TikTok Shop Scraper

Extract product listings, prices, ratings, sellers, and search results from TikTok Shop โ€” no API key, no TikTok account, no cookies. Pick one of two operations, get one clean dataset per run.

Works across 8 marketplaces: ๐Ÿ‡บ๐Ÿ‡ธ US ยท ๐Ÿ‡ฌ๐Ÿ‡ง UK ยท ๐Ÿ‡ธ๐Ÿ‡ฌ Singapore ยท ๐Ÿ‡ฒ๐Ÿ‡พ Malaysia ยท ๐Ÿ‡ต๐Ÿ‡ญ Philippines ยท ๐Ÿ‡น๐Ÿ‡ญ Thailand ยท ๐Ÿ‡ป๐Ÿ‡ณ Vietnam ยท ๐Ÿ‡ฎ๐Ÿ‡ฉ Indonesia.

What it does

OperationInputWhat you get
Search Productskeyword + regionUp to ~30 products per page (max 3 pages) with prices, ratings, sold counts, and seller names โ€” deduplicated across pages
Product Detailproduct ID + regionOne deep record: full description, SKU variants, image gallery, seller profile, discount data

Use cases

  • Price monitoring โ€” track competitor pricing and discount campaigns per region
  • Product research โ€” find best-selling products in a niche before sourcing
  • Seller intelligence โ€” see who sells what, their ratings and follower counts
  • Catalog enrichment โ€” pull clean product data (images, variants, descriptions) by ID

Input

Search Products

{
"operation": "searchProducts",
"keyword": "phone case",
"region": "US",
"maxPages": 2
}

Product Detail

{
"operation": "productDetail",
"productId": "1731743608991158724",
"region": "US"
}

productId also accepts a full product URL โ€” the ID is extracted automatically. For non-English regions, native-language keywords (e.g. Thai for TH, Vietnamese for VN) return better results.

Output

Each product is one dataset row. Example (trimmed):

{
"_operation": "searchProducts",
"_sourceKeyword": "phone case",
"_sourceRegion": "US",
"productId": "1731743608991158724",
"productTitle": "Shockproof Clear Phone Case for iPhone 15",
"productUrl": "https://www.tiktok.com/view/product/1731743608991158724?region=US",
"coverUrl": "https://p16-oec-va.ibyteimg.com/...",
"price": 6.99,
"originalPrice": 15.99,
"currency": "USD",
"currencySymbol": "$",
"discountRate": 0.56,
"rating": 4.7,
"ratingCount": 1284,
"soldCount": 12000,
"sellerName": "GadgetHaus",
"sellerId": "7495003220734937336",
"status": "success"
}

Product Detail rows add productDescription, gallery, skus (variant id / name / price / stock), skuCount, seller stats (sellerRating, sellerSoldCount, sellerFollowersCount, sellerProductsCount), and compliance fields (businessName, businessAddress) where TikTok publishes them.

Product IDs are always returned as strings, so 19-digit IDs never lose precision in spreadsheets or JSON pipelines.

Regions, currencies, formats

RegionMarketplaceCurrency
USUnited StatesUSD
GBUnited KingdomGBP
SGSingaporeSGD
MYMalaysiaMYR
PHPhilippinesPHP
THThailandTHB
VNVietnamVND
IDIndonesiaIDR

Prices are normalized to plain numbers in the local currency (including 25.000 โ‚ซ โ†’ 25000 style formats). Sold counts like 12.3K or 1,2 rb are normalized to integers.

Important: TikTok decides the serving marketplace from the request IP. Runs without a proxy are served from US infrastructure, so they return US catalog results regardless of the region setting (the run log warns when this happens, and each row's currency always tells you the true marketplace). To get real UK/SEA results, set Advanced โ†’ Proxy configuration to a proxy located in the target country โ€” the scraper then uses the right URLs, locale, and currency for that region automatically.

Tips

  • Blocked rows โ€” TikTok occasionally serves a security check. The run reports status: "blocked" instead of failing. Re-run, or set a proxy under Advanced โ†’ Proxy configuration (residential proxies work best).
  • Pagination โ€” the scraper stops early when a page returns no new products, so you're never charged for empty pages.
  • Region matters โ€” a product ID from the US catalog usually won't resolve in TH. Use the same region the product was found in.

FAQ

Is this legal? The actor only reads publicly available product pages โ€” the same data any visitor sees without logging in. No login, no private data, no TikTok account is used. Still, you're responsible for how you use the data; respect TikTok's terms and local regulations.

Why fewer results than the TikTok app? The app personalizes results and mixes in live/video commerce. This scraper reads the public web catalog, which is a stable, reproducible subset.

Can I scrape a whole store? Not yet โ€” currently keyword search and product detail. Open an issue if you need store-level listing.