TikTok Shop Scraper: Sales Intelligence avatar

TikTok Shop Scraper: Sales Intelligence

Pricing

Pay per event

Go to Apify Store
TikTok Shop Scraper: Sales Intelligence

TikTok Shop Scraper: Sales Intelligence

Scrape TikTok Shop for product research and sales intelligence: prices, discounts, sold counts, seller/shop, ratings, reviews, stock signals, images, and exports.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

1

Bookmarked

123

Total users

26

Monthly active users

4 days ago

Last modified

Categories

Share

Scrape TikTok Shop for product research and sales intelligence — collect product names, current/original prices, variant price ranges, discounts, seller/shop data, ratings, review counts, units sold, availability signals, and images. Export clean TikTok Shop product data to CSV, Excel, JSON, Google Sheets, Make, Zapier, or your own analytics stack.

What does it do?

TikTok Shop Scraper: Sales Intelligence loads TikTok Shop category pages and public product surfaces, then extracts visible product data for competitive pricing, product keyword research, trend monitoring, and seller/category benchmarking. For each product, it captures:

  • Product name and unique ID
  • Current price, original price, and visible SKU/variant price ranges
  • Discount percentage
  • Product thumbnail image URL
  • Seller name
  • Customer rating (1-5 stars), review count, and public review snippets when visible
  • Sold count / units sold
  • Free shipping plus public availability/stock signals such as sold out, in stock, or limited quantity when visible
  • Direct product page URL

The scraper navigates TikTok Shop with a real Chromium browser to bypass basic bot detection, using residential proxies for reliable access.

Who is it for?

👗 E-commerce sellers and DTC brands monitoring competitor pricing, discounts, and units sold across TikTok Shop categories like fashion, electronics, and beauty.

📊 Market researchers tracking trending products, price ranges, review volume, seller activity, and top-selling items in specific TikTok Shop categories.

🏪 Agencies and marketplace teams benchmarking sellers, categories, ratings, review counts, and sales signals before choosing products or campaign angles.

💡 Product scouts and dropshipping researchers finding products to source, promote, or watch by comparing price, discount, demand, and shop signals.

🔬 Data analysts building recurring TikTok Shop sales-intelligence datasets for pricing dashboards, category trend reports, and seller performance analysis.

Why use it?

  • Built for sales intelligence — compare price, original price, discount, sold count, seller, rating, review count, and availability signals in one dataset
  • No TikTok API key needed — scrapes public TikTok Shop pages without requiring login cookies
  • Real browser rendering — handles JavaScript-heavy TikTok Shop pages that simple HTTP scrapers miss
  • Category-level research — browse TikTok Shop categories for product discovery, competitor pricing, and category benchmarking
  • Variant and stock signals when public — captures price ranges, min/max variant prices, availability text, and limited-stock quantities when TikTok exposes them
  • Apify Cloud integration — schedule runs, export to CSV/Excel/JSON, connect to Google Sheets, Make, Zapier, or your API pipeline

What data do you get?

FieldTypeDescription
productIdStringUnique TikTok Shop product ID
productNameStringFull product title
productUrlStringDirect URL to the product page
priceNumberCurrent sale price (USD)
originalPriceNumberOriginal price before discount
currencyStringAlways USD for TikTok Shop US
discountPercentNumberDiscount percentage (0 if no discount)
priceRangeTextStringVisible SKU/variant price range, when shown publicly
minVariantPriceNumberLowest visible variant/SKU price
maxVariantPriceNumberHighest visible variant/SKU price
availabilityTextStringPublic availability/stock text such as Available, Sold out, or quantity left
inStockBooleanBest-effort stock status parsed from public page text/API data
stockQuantityNumberPublic limited-stock quantity when TikTok exposes it
thumbnailUrlStringProduct image URL
imagesArrayList of product image URLs
sellerNameStringSeller/shop name
reviewCountNumberNumber of public reviews/ratings when visible
reviewRatingNumberAverage customer rating (1-5)
reviewSnippetsArrayShort public review snippets when visible in public product data
soldCountNumberNumber of units sold
freeShippingBooleanWhether product offers free shipping
searchKeywordStringKeyword used (for keyword mode)
scrapedAtStringISO timestamp when scraped

How much does it cost to scrape TikTok Shop products?

This actor uses Pay-Per-Event (PPE) pricing — you only pay for what you extract:

EventFREEBRONZESILVERGOLDPLATINUMDIAMOND
Run started$0.02$0.02$0.02$0.02$0.02$0.02
Product scraped$0.005$0.0045$0.0039$0.003$0.002$0.0014

Example costs (FREE tier):

  • Scrape 50 products from Beauty & Personal Care: $0.02 + 50 × $0.005 = $0.27
  • Scrape 100 products from Phones & Electronics: $0.02 + 100 × $0.005 = $0.52
  • Scrape 200 products across 4 categories: $0.02 + 200 × $0.005 = $1.02

Tip: For best cost efficiency, scrape at least 20+ products per run. Very small runs (under 10 products) have higher per-product costs due to fixed proxy startup overhead.

Higher Apify subscription tiers (BRONZE through DIAMOND) receive progressive discounts on the per-product rate.

How to use it

Step 1: Choose your mode

Category URL mode (recommended): Browse a specific TikTok Shop category:

  1. Go to TikTok Shop
  2. Click on any category (e.g., "Beauty & Personal Care")
  3. Copy the URL — it looks like https://www.tiktok.com/shop/c/beauty-personal-care/601450
  4. Paste it into the TikTok Shop category URLs field

Keyword mode: Search TikTok Shop's trending/featured products:

  1. Enter keywords like wireless earbuds, skincare, phone case
  2. The scraper returns featured products from TikTok Shop's main page and deals sections
  3. Note: TikTok Shop search requires authentication — keyword results come from featured/trending products, not filtered search results

Step 2: Set limits

Set Max products per keyword/category to control how many products to extract. Default is 50. Set to 0 for unlimited (scrapes until no more products load).

Step 3: Run and export

Click Save & Run. Results appear in the Dataset tab as they're scraped. Export to CSV, Excel, JSON, or connect to downstream tools.

Input

{
"keywords": ["wireless earbuds", "phone case"],
"categoryUrls": [
"https://www.tiktok.com/shop/c/beauty-personal-care/601450",
"https://www.tiktok.com/shop/c/phones-electronics/601739"
],
"maxProductsPerKeyword": 50,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

You can use keywords, category URLs, or both. At least one is required.

Available TikTok Shop categories

CategoryURL
Beauty & Personal Carehttps://www.tiktok.com/shop/c/beauty-personal-care/601450
Women's Fashionhttps://www.tiktok.com/shop/c/womenswear-underwear/601152
Men's Fashionhttps://www.tiktok.com/shop/c/menswear-underwear/824328
Phones & Electronicshttps://www.tiktok.com/shop/c/phones-electronics/601739
Fashion Accessorieshttps://www.tiktok.com/shop/c/fashion-accessories/605248
Home Supplieshttps://www.tiktok.com/shop/c/home-supplies/600001
Kitchenwarehttps://www.tiktok.com/shop/c/kitchenware/600024
Shoeshttps://www.tiktok.com/shop/c/shoes/601352
Sports & Outdoorhttps://www.tiktok.com/shop/c/sports-outdoor/603014
Toys & Hobbieshttps://www.tiktok.com/shop/c/toys-hobbies/604206
Pet Supplieshttps://www.tiktok.com/shop/c/pet-supplies/602118
Food & Beverageshttps://www.tiktok.com/shop/c/food-beverages/700437
Healthhttps://www.tiktok.com/shop/c/health/700645
Furniturehttps://www.tiktok.com/shop/c/furniture/604453

Output

Sample output item:

{
"productId": "1729390331098862467",
"productName": "Comfrt | Cloud Tee",
"productUrl": "https://www.tiktok.com/shop/pdp/cloud-tee-by-comfrt-oversized-unisex-sleep-shirt/1729390331098862467",
"price": 25.00,
"originalPrice": 45.00,
"currency": "USD",
"discountPercent": 44,
"priceRangeText": "$25.00 - $45.00",
"minVariantPrice": 25.00,
"maxVariantPrice": 45.00,
"availabilityText": "Available",
"inStock": true,
"stockQuantity": null,
"thumbnailUrl": "https://p16-oec-general-useast5.ttcdn-us.com/...",
"images": ["https://p16-oec-general-useast5.ttcdn-us.com/..."],
"categoryId": null,
"categoryName": null,
"sellerName": "Comfrt",
"sellerRating": null,
"reviewCount": 1200,
"reviewRating": 4.4,
"reviewSnippets": [],
"freeShipping": false,
"shippingInfo": null,
"soldCount": 197500,
"searchKeyword": "wireless earbuds",
"scrapedAt": "2026-04-01T04:30:00.000Z"
}

Sales-intelligence workflows

Use the actor to build repeatable TikTok Shop research workflows:

  • Product keyword research: collect featured/trending products for a seed keyword, then sort by soldCount, discountPercent, reviewRating, and reviewCount.
  • Competitor pricing monitor: run category URLs on a schedule and compare price, originalPrice, priceRangeText, and discountPercent over time.
  • Trend and market monitoring: track top products in Beauty, Electronics, Home, Fashion, or other categories to spot rising demand signals.
  • Seller/category benchmarking: group output by sellerName, category URL, rating, reviews, sold count, and availability to compare shops or product niches.
  • Export and enrich: send the dataset to CSV/Excel/JSON, Google Sheets, Make, Zapier, or your warehouse for dashboards and alerts.

Tips & best practices

💡 Use category URLs for best results — Category pages reliably load product listings. Keyword mode returns trending/featured products rather than filtered search results.

💡 Scrape during off-peak hours — Running between midnight and 6 AM US Eastern time reduces proxy contention and improves success rates.

💡 Target sub-categories for niche research — Instead of the top-level "Beauty & Personal Care" category, drill into sub-categories like https://www.tiktok.com/shop/c/skin-care/601453 for more focused results.

💡 Combine multiple category URLs — Pass 3-5 category URLs in a single run to gather broad market data efficiently. Each category is scraped in sequence.

💡 Schedule recurring runs — Set up a daily or weekly schedule to track pricing trends over time. Use Apify's dataset comparison features to spot price changes.

⚠️ TikTok Shop is US-only — TikTok Shop is currently available primarily in the US. The scraper uses US residential proxies by default.

⚠️ Dynamic product IDs — Product IDs are stable (they're TikTok's internal IDs), so you can safely use them as keys for deduplication between runs.

Troubleshooting

Q: Getting 0 products / Security Check errors? A: TikTok's bot detection can block runs with bad proxy sessions. Try running again — the session pool will use a different residential proxy IP. Using Apify's RESIDENTIAL proxy group (default setting) gives the best success rate.

Q: Keyword search returns products not related to my keyword? A: TikTok Shop blocks unauthenticated search queries (WAF protection). Keyword mode returns trending/featured products from TikTok Shop's main page. For category-specific products, use a category URL instead.

Q: Prices show as null? A: Some TikTok Shop products hide prices or require a clean US session before rendering. The scraper extracts the first visible price plus priceRangeText, minVariantPrice, and maxVariantPrice when variant/SKU price ranges are publicly visible.

Q: Why are stock, review snippets, or review count null? A: TikTok only exposes those sales-intelligence fields on some public listing/API/PDP responses. The actor records them when visible without login; fields remain null or [] when TikTok requires authentication or withholds the detail on public pages.

Integrations

📊 Google Sheets via Apify Sync

Export TikTok Shop product data directly to Google Sheets for tracking price changes over time:

  1. In the actor's run, click ExportGoogle Sheets
  2. Schedule the actor to run daily
  3. New products append to your sheet automatically

🔁 Make (Integromat) automation

Build a price monitoring workflow:

  1. Use the Apify Make module to trigger runs
  2. Connect to Google Sheets to write new products
  3. Add a Filter to only process items with discount > 30%
  4. Send a Slack or Email notification for deals

💼 Zapier integration

  1. Trigger: Apify — New Item in Dataset
  2. Action: Google Sheets — Create Row or Airtable — Create Record
  3. Filter by discountPercent > 40 to alert on flash sales

🔗 Direct API usage

The actor can be triggered via the Apify API for real-time integration:

Node.js:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('automation-lab/tiktok-shop-scraper').call({
categoryUrls: ['https://www.tiktok.com/shop/c/beauty-personal-care/601450'],
maxProductsPerKeyword: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Scraped ${items.length} products`);

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("automation-lab/tiktok-shop-scraper").call(run_input={
"categoryUrls": ["https://www.tiktok.com/shop/c/beauty-personal-care/601450"],
"maxProductsPerKeyword": 50,
})
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
print(f"Scraped {len(items)} products")

cURL:

curl -X POST https://api.apify.com/v2/acts/automation-lab~tiktok-shop-scraper/runs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"categoryUrls": ["https://www.tiktok.com/shop/c/beauty-personal-care/601450"],
"maxProductsPerKeyword": 50
}'

Using with AI and MCP

Setup for Claude Code

$claude mcp add apify --transport http https://mcp.apify.com?tools=automation-lab/tiktok-shop-scraper

Setup for Claude Desktop, Cursor, or VS Code

Add this to your MCP config file:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com"
}
}
}

Your AI assistant will use OAuth to authenticate with your Apify account on first use.

Example prompts

Once connected, try asking your AI assistant:

  • "Scrape 50 products from TikTok Shop's Beauty category and find items with over 40% discount"
  • "Get electronics products from TikTok Shop and create a pricing comparison table"
  • "What are the top-rated products in TikTok Shop's Home Supplies category right now?"
  • "Find the best deals (highest discount %) in the Shoes category on TikTok Shop"

Learn more in the Apify MCP documentation.

This actor scrapes publicly accessible product listings from TikTok Shop — the same information visible to any website visitor without logging in. No authentication is used.

Web scraping of public product data is generally lawful under US law (hiQ Labs v. LinkedIn, 2022). However:

  • Review TikTok's Terms of Service before commercial use
  • Respect rate limits — this actor uses session management and reasonable delays
  • Do not resell scraped data in ways that compete with TikTok's own data products
  • Use scraped data responsibly — pricing research, market analysis, and academic study are generally considered legitimate use cases

For legal questions specific to your use case, consult your legal counsel.

FAQ

Q: How many products can I scrape per run? A: There's no hard limit — set maxProductsPerKeyword to 0 for unlimited. Realistically, a single category page loads 20-50 products on initial load, with more loading as you scroll. Expect 50-200 products per category per run.

Q: Can I scrape TikTok Shop in countries other than the US? A: TikTok Shop currently operates in the US, UK, Southeast Asia (Indonesia, Thailand, Vietnam, Philippines, Malaysia), and a few other markets. This actor is optimized for the US market with US residential proxies. Contact us for region-specific scraping.

Q: Does this scrape every product detail page field? A: It extracts public listing/API/PDP signals when TikTok exposes them, including variant price ranges, availability, review counts, and snippets on some products. TikTok does not reliably expose full descriptions, seller profiles, stock, or review snippets on every unauthenticated public page, so those fields can be null or empty.

Q: How fresh is the data? A: Products are scraped live from TikTok Shop at the time of the run. Prices and discounts reflect the current state of the website.

Q: Can I get flash sale prices? A: Yes — the actor also scrapes TikTok Shop's flash sales page (/shop/deals/flash-sales), which lists deeply discounted products with time-limited prices.

Q: The run succeeded but I got fewer products than expected. Why? A: TikTok Shop uses lazy-loading — products only appear as you scroll. The scraper scrolls the page to trigger more loads. If you need more products, increase maxProductsPerKeyword and the scraper will scroll further. Also note that some product cards may not have prices set (unlisted products), which are excluded from output.

Other automation-lab scrapers for social commerce and e-commerce data:

  • TikTok Scraper — scrape TikTok videos, profiles, and trending content to connect product demand with content signals
  • TikTok Hashtag Scraper — scrape videos by hashtag for product and campaign trend discovery
  • TikTok Search Scraper — scrape TikTok video search results for creator/content research around a product keyword
  • TikTok Profile Scraper — scrape TikTok user profiles and videos for creator benchmarking
  • Google Shopping Scraper — compare TikTok Shop pricing against Google Shopping listings
  • Walmart Scraper — benchmark TikTok Shop prices and availability against Walmart marketplace data