All scrapers

E-commerce

TikTok Shop Scraper

shop.tiktok.com

98.8% Success rate
5.1s Avg response
In-house anti-bot Protection
1,416 calls Measured over

TikTok Shop is served through three dedicated plugin endpoints rather than the generic page fetch, and covers the US storefront only. Give the product endpoint a product URL (www.tiktok.com/shop/pdp/..., shop.tiktok.com/us/pdp/... or a /view/product/ link) or the numeric product id, and it returns the product already parsed: title and description, status and availability, brand, the current and original price with the discount or the price range, how many have sold, the rating with its review count and 1-5 star distribution, the category path, images, the options and every variant with its price, stock and availability, specifications, shipping with fee and delivery days, promotion labels, the seller with rating, followers, sales, product, video and review counts and service scores, and the few top reviews the page shows. The search endpoint takes a keyword, or a category URL or id, and returns up to 30 product cards (a category lists about 15) with price, rating, sold count, brand, seller and, when TikTok binds one, the promoting video with its play and like counts, plus related searches or subcategories. The store endpoint takes a store URL or seller id and returns the shop's profile and up to 20 products from its storefront. Each endpoint reads the first page TikTok serves, with no deeper paging, and TikTok picks the market by the visitor's country, so other markets such as the UK are not covered. Keyword search reads TikTok Shop's keyword pages, so it covers the keywords TikTok has a results page for; a keyword without one answers 404 (use a category or a broader keyword). Product and search pages are read without a browser; a smaller store that TikTok shows only after its slide puzzle is opened in a real browser that solves the puzzle, so that call takes about 20-35 seconds. No TikTok account or cookies are involved.

What you can extract

  • Product id, URL, title, description, status, availability and brand
  • Current and original price, discount percent, price range and currency (USD)
  • Sold count, rating, review count and the 1-5 star distribution
  • Category path, images, options and variants with per-SKU price, stock and availability
  • Specifications, shipping fee, free-shipping flag, delivery days and estimate, and promotion labels
  • Seller id, name, store URL, rating, followers, sold count, product, video and review counts and service scores
  • The top reviews the product page shows, with rating, text, date, variant, country and images
  • Keyword or category search: up to 30 product cards with the promoting video, plus related searches or subcategories
  • A store's profile and service scores with up to 20 products from its storefront

Dedicated endpoints

/social/tiktok-shop-product

One TikTok Shop product

One US TikTok Shop product by url or product_id: productId, url, title, description, descriptionImages, status, available, brand, price (current, original, discountPercent, currency, display, min and max for a range), soldCount, rating, reviewCount, ratingDistribution, categories, images, options, variants (skuId, properties, price, originalPrice, stock, available, purchaseLimit), specifications, shipping (free, fee, minDays, maxDays, estimatedDelivery), labels, seller (id, name, url, rating, followers, soldCount, productCount, reviewCount, videoCount, scores, businessName, businessAddress) and the top reviews the page embeds. A product that does not exist or is not sold in the US answers 404.

/social/tiktok-shop-search

Keyword or category search on TikTok Shop

The products TikTok Shop lists for a keyword (q) or a category (category as a URL or numeric id), from one page: up to 30 for a keyword, about 15 for a category (max_results 1-30). Each card has productId, url, title, image, price (current, original, discountPercent, currency, fromPrice), rating, reviewCount, soldCount, brand, seller (id, name, logo), labels and, when TikTok binds one, the promoting video (id, url, author, playCount, likeCount). A keyword adds relatedSearches and relatedCategories, a category its subcategories and breadcrumbs. Keywords come from TikTok Shop's keyword pages; one without a page answers 404.

/social/tiktok-shop-store

A TikTok Shop store and its products

A store by URL or seller id: store (id, name, url, rating, followers, soldCount, productCount, reviewCount, videoCount, logo, a label such as OFFICIAL SHOP, service scores such as positive feedback and on-time delivery, description) and the products on its storefront page, up to 20 in the same card shape as the search (max_results 0-20, 0 for the profile only), with hasMore. Smaller stores that TikTok shows only after its slide puzzle take about 20-35 s. A store with no public storefront answers 404.

How to scrape it

curl -X POST \
  -H "X-ScrapeUnblocker-Key: $SU_API_KEY" \
  "https://api.scrapeunblocker.com/social/tiktok-shop-product?product_id=1732224050708320653"
import requests

resp = requests.post(
    "https://api.scrapeunblocker.com/social/tiktok-shop-product",
    headers={"X-ScrapeUnblocker-Key": SU_API_KEY},
    params={"product_id": "1732224050708320653"},
)
print(resp.text)
import { ScrapeUnblockerClient } from 'scrapeunblocker';

const su = new ScrapeUnblockerClient({ apiKey: process.env.SU_API_KEY });

const product = await su.tiktokShopProduct('1732224050708320653');
const results = await su.tiktokShopSearch('led face mask', { maxResults: 30 });
const store = await su.tiktokShopStore('7496099972735732109', { maxResults: 20 });
console.log(product);
console.log(results);
console.log(store);

Requests are POST and take their parameters in the query string. Browser rendering always happens - there is no flag to enable.

Example response

{
  "productId": "1732224050708320653",
  "url": "https://shop.tiktok.com/us/pdp/red-light-therapy-mask-for-face-neck-4-modes-2000mah/1732224050708320653",
  "region": "us",
  "title": "INTEO Red Light Therapy LED Face & Neck Mask - 680 LED Lights, 840-860nm Near-Infrared Treatment, Cordless 2000mAh Rechargeable Battery...",
  "description": "- 【680 High-Energy Light Beads & Full Coverage】This red light therapy mask for face and neck features 100+70 beads, each containing 4 high-energy beads...",
  "status": "on_sale",
  "available": true,
  "brand": "INTEO",
  "price": {
    "current": 159.99,
    "original": 299.99,
    "discountPercent": 47,
    "currency": "USD",
    "currencySymbol": "$",
    "display": "$159.99 - 279.99",
    "isRange": true,
    "min": 159.99,
    "max": 279.99
  },
  "soldCount": 308,
  "rating": 4.6,
  "reviewCount": 37,
  "ratingDistribution": { "1": 1, "2": 0, "3": 2, "4": 8, "5": 26 },
  "categories": [
    { "id": "601450", "name": "Beauty & Personal Care", "level": 1, "leaf": false },
    { "id": "849416", "name": "Personal Care Appliances", "level": 2, "leaf": false },
    { "id": "601672", "name": "Facial Beauty Devices", "level": 3, "leaf": false }
  ],
  "images": [
    "https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/3053af0fada349c3bf779767bbf22543~tplv-fhlh96nyum-crop-webp:800:800.webp"
  ],
  "options": [
    { "id": "100000", "name": "Color", "values": [{ "id": "1001074", "value": "Pink" }, { "id": "1001063", "value": "Black" }] }
  ],
  "variants": [
    { "skuId": "1732431678594912653", "properties": { "Color": "Pink" }, "price": 159.99, "originalPrice": 299.99, "discountPercent": 47, "currency": "USD", "stock": 153, "available": true, "purchaseLimit": 200 },
    { "skuId": "1732431678594978189", "properties": { "Color": "Black" }, "price": 181.99, "originalPrice": 363.99, "discountPercent": 50, "currency": "USD", "stock": 175, "available": true, "purchaseLimit": 200 }
  ],
  "specifications": [
    { "name": "Brand", "value": "INTEO" },
    { "name": "Is cordless", "value": "Yes" },
    { "name": "Material", "value": "Silicone" }
  ],
  "shipping": {
    "free": true,
    "fee": 0.0,
    "currency": "USD",
    "originalFee": 5.99,
    "method": "3-day delivery",
    "minDays": 3,
    "maxDays": 4,
    "estimatedDelivery": "Oct 6 - Oct 7"
  },
  "labels": ["Free shipping"],
  "seller": {
    "id": "7496099972735732109",
    "name": "INTEO US",
    "url": "https://shop.tiktok.com/us/store/inteo-us/7496099972735732109",
    "rating": 4.5,
    "followers": 11479,
    "soldCount": 15502,
    "productCount": 11,
    "reviewCount": 1601,
    "videoCount": 1390,
    "scores": [
      { "name": "Positive feedback", "value": "80%", "level": "Good" },
      { "name": "On-time delivery", "value": "94%", "level": "Excellent" }
    ]
  },
  "reviews": [
    {
      "id": "7650948609219708685",
      "rating": 5,
      "text": "I’ve been loving the INTEO Red Light Therapy Mask! It’s comfortable, cordless, and easy to use at home. My skin looks brighter, smoother, and more refreshed after regular use...",
      "date": "2026-06-13T18:28:33Z",
      "reviewer": "g**y G**y",
      "verifiedPurchase": true,
      "variant": "Pink",
      "country": "US"
    }
  ]
}

Read the API docs

Frequently asked questions

Is it legal to scrape TikTok Shop?

Collecting publicly available TikTok Shop data such as product titles, prices, ratings and seller scores is lawful in many jurisdictions, but the rules depend on your country, the data you collect and how you use it. Reviewer names and review text can be personal data, so follow the privacy rules that apply to you. ScrapeUnblocker returns the public pages; what you collect and how you use it is your responsibility.

How do I scrape TikTok Shop without getting blocked?

TikTok picks the shop by the visitor's country and answers an address it does not serve, or does not trust, with a Security Check page instead of the shop. The TikTok Shop plugin reads the server-rendered page, which already carries the shop's whole data model, with a plain HTTP request over US and Canadian ISP exits, and when an exit is refused it draws fresh ones for up to about 30 seconds before it answers 502 rather than leaving you waiting. Some stores, mostly smaller ones, TikTok shows only after a slide puzzle; the plugin opens those in a real browser and solves the puzzle for you, so such a store call takes about 20-35 seconds. In ScrapeUnblocker's benchmark it returned real data on 98.8% of 1,416 calls, about 5.1s per call: 625 product pages at 99.5% and about 4.3s, 491 keyword and category searches at 99.4% and about 2.7s, and 300 stores at 96.3% and about 11.1s (median 2.8s).

Which TikTok Shop countries are supported?

Only the US storefront. TikTok decides the market by the exit IP's country, not by the URL, so the plugin always reads the US shop through US and Canadian exits and has no proxy_country option. A URL that names another market, such as shop.tiktok.com/gb/..., answers 400, and a product that is not sold in the US answers 404. Prices come back in USD.

What TikTok Shop data can I get?

The product endpoint returns the title, description, status and availability, brand, current and original price with the discount, sold count, rating, review count and 1-5 star distribution, category path, images, options and every variant with its price, stock and purchase limit, specifications, shipping with fee and delivery days, promotion labels, and the seller with rating, followers, sales, product, video and review counts, service scores and business name. Reviews are the handful of top reviews the product page embeds, not the product's full review list. The search and store endpoints return product cards with price, rating, sold count, brand, seller and the promoting video when TikTok binds one; the store endpoint adds the shop's profile and service scores.

How many TikTok Shop products can I get from a search or a store?

Each endpoint reads one page, the first one TikTok serves, and there is no paging beyond it. A keyword returns up to 30 products and a category about 15 (max_results 1-30); a store returns up to 20 products from its storefront page (max_results 0-20, 0 for the profile only), with hasMore set when the store has more. To widen a search, follow the relatedSearches and relatedCategories a keyword returns, or the subcategories of a category. Keyword search reads TikTok Shop's keyword pages, so it covers the keywords TikTok has a results page for; a keyword without one, or a category with no listing, answers 404, so try a category or a broader keyword.

How much does it cost to scrape TikTok Shop?

Every call to any of the three endpoints is one request: one product in full, up to 30 search results, or a store with up to 20 products. 1 request = 1 credit, EUR 1.00 per 1,000 on pay as you go, down to about EUR 0.55 per 1,000 on the Ultimate plan. Blocks and timeouts are not billed, and the free trial includes 500 requests with no card.

Related scrapers

Start scraping this site today

Free tier included. No credit card required to test it.