TikTok Shop Product Scraper – Prices, Sales, Stock & Shops avatar

TikTok Shop Product Scraper – Prices, Sales, Stock & Shops

Pricing

from $3.00 / 1,000 product with details

Go to Apify Store
TikTok Shop Product Scraper – Prices, Sales, Stock & Shops

TikTok Shop Product Scraper – Prices, Sales, Stock & Shops

Scrape TikTok Shop products from product, store or category URLs: price, discount, items sold, rating, reviews, SKUs and stock, shipping and shop stats. No login. $0.004 per product, failures free.

Pricing

from $3.00 / 1,000 product with details

Rating

0.0

(0)

Developer

TubeText Labs

TubeText Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 minutes ago

Last modified

Share

By TubeText Labs – see all our tools at the end of this page.

Get TikTok Shop product data from product, store or category URLs: price and discount, items sold, rating and review count, every variant (SKU) with its price and stock, specifications, shipping, and the shop's stats (followers, total sold, videos). Built for TikTok Shop sellers, affiliates and UGC creators, agencies, dropshippers and e-commerce analysts – no login, pay per product, failures free.

Why this one

  • 💸 $4 per 1,000 products with full details – about 6× cheaper than the most popular TikTok Shop scraper.
  • ✅ Only pay for delivered products – removed products, empty results and errors are free.
  • 📦 Stock per variant – see which SKUs sell and how much inventory is left (great for tracking competitors over time).
  • 🏪 Shop stats in every row – shop rating, followers, products on sale, total items sold, number of videos.
  • 🇺🇸 US TikTok Shop (tested). Other markets have separate catalogs and are not supported yet.
  • 🔒 Privacy: review samples without reviewer names or IDs; seller business name but no addresses (address fields in specifications are skipped too).

Input

  • Product pages: https://www.tiktok.com/shop/pdp/<id>, https://shop.tiktok.com/view/product/<id> or just the product ID
  • Store pages: https://www.tiktok.com/shop/store/<name>/<id> → the store's first 20 products (its own order)
  • Category pages: https://www.tiktok.com/shop/c/<name>/<id> → products sampled from the category page (up to 100)
{
"urls": [
"https://www.tiktok.com/shop/pdp/1729527313880355335",
"https://www.tiktok.com/shop/store/goli-nutrition/7495794203056835079"
],
"includeDetails": true,
"includeReviews": false
}

Turn includeDetails off to get only the listing card for store/category products (title, price, sold count, rating) at $1.50 per 1,000.

Output example

Real output (shortened):

{
"status": "ok",
"productId": "1729527313880355335",
"url": "https://shop.tiktok.com/us/pdp/ashwagandha-gummies-by-goli-ksm-66-mixed-berry-vegan-non-gmo/1729527313880355335",
"title": "Goli Ashwagandha & Vitamin D Gummy - Mixed Berry, KSM-66, Vegan, Plant Based, Non-GMO…",
"price": 19.47,
"originalPrice": 24.7,
"discount": "-21%",
"currency": "USD",
"soldCount": 1304190,
"rating": 4.5,
"reviewCount": 94525,
"categories": ["Health", "Nutrition & Wellness", "Vitamins, Minerals & Wellness Supplements", "Vitamins Supplements"],
"skus": [{"skuId": "1729527298861535751", "options": "Size: 1 Bottle", "price": 19.47, "originalPrice": 24.7, "stock": 336485, "available": true}],
"totalStock": 336485,
"specifications": "Brand: Goli\nContainer type: Bottle\nFlavor: Berry\nProduct form: Gummy",
"freeShipping": true,
"deliveryDays": "5-8",
"shopName": "Goli Nutrition",
"shopUrl": "https://shop.tiktok.com/us/store/goli-nutrition/7495794203056835079",
"shopRating": 4.6,
"shopFollowers": 601031,
"shopProductCount": 52,
"shopSoldCount": 5777630,
"shopVideoCount": 5123,
"aiKeywords": ["Goli Ashwagandha Gummies", "Vegan vitamin supplement", "…"],
"images": ["https://p16-oec-general-useast5.ttcdn-us.com/…"]
}

specifications is one text field with a "Name: value" line per spec, and skus[].options is text like "Color: Black / Size: M", so CSV and Excel exports stay readable.

Pricing

Pay per event:

  • $4.00 per 1,000 products with full details (cheaper on higher Apify plans: down to $3.00).
  • $1.50 per 1,000 listing cards when Full product details is off.
  • Removed or unavailable products and errors are free.

Example: 20 products from each of 10 competitor stores = 200 products ≈ $0.80.

Tips

  • Track competitors: schedule a daily run on competitor stores and compare soldCount and totalStock per product – the difference is a sales estimate.
  • Find winning products: run category pages and sort by soldCount.
  • Pair with video research: open the products' videos with Video Breakdown AI or get scripts with TikTok Transcript Scraper.

Ready-made examples

TubeText Labs tools

TubeText Labs builds 9 pay-per-result Apify Actors for video, social and e-commerce data – no login, JSON/CSV/Excel output, and ready for ChatGPT and Claude (Apify MCP), n8n, Make and Zapier. All tools: apify.com/tubetext

Transcripts

Video & ad analysis

  • Video Breakdown AI – hook analysis, shot list, cut pacing, products shown and script of any TikTok, Reel or YouTube video
  • Video Ad Analyzer – competitors' YouTube video ads by brand or domain (Google Ads Transparency), torn down by AI

Channel analytics

E-commerce & travel

FAQ

Why only 20 products per store? TikTok shows a store's first 20 products in the page itself; loading more requires a token from TikTok's bot protection, which this Actor does not bypass. Paste product URLs for anything beyond that.

Can I search by keyword? Not yet – TikTok Shop search results are loaded in the browser only. Use category or store pages, or product URLs.

Is soldCount total or recent? It is TikTok's "items sold globally since this item was listed, excluding returns".

Why is originalPrice sometimes empty? Some strikethrough "was" prices come from promotions TikTok applies in the browser and aren't in the page data, so originalPrice (and the discount) can be null even when the page shows one.

Why does the rating differ slightly from the page? rating is TikTok's own unrounded value (e.g. 4.7); the page may show it rounded, so the two can differ by 0.1.

What if a product ID doesn't exist? It returns skipped: product_not_found immediately, free.

Is this legal? The Actor only reads public product pages without logging in and does not collect reviewer identities or seller addresses. You are responsible for how you use the data and for complying with TikTok's terms.

How do I get a clean spreadsheet? In the run's Storage tab choose Export → View: Overview for a short set of readable columns in Excel, CSV or Google Sheets. Use JSON to get every field (for example every SKU and spec).

Can I cap what a run costs? Yes – set Maximum cost per run in the run options. The run stops cleanly when the next item would go over it: you are never charged more, and you get a clear "stopped at your limit" status message.

What happens if a big run hits the time limit? It stops cleanly shortly before the limit: everything finished so far is delivered, the run ends as succeeded, and the status message says how many items weren't started. Raise the run timeout, or run again with the inputs that were not started.

Am I charged for empty results? No. One product link returns one row; removed products, empty pages and errors come back with a status and are not charged.