
Instagram Reel Scraper
scrape.ly/store/echofield/instagram-reel-scraperSocial mediaVideos
1 monthly user

Scrape TikTok Shop products by keyword, category, seller store or product URL: price, discount, sold count, rating, reviews, seller, images, variants, stock and shipping. No login needed.
Pull TikTok Shop product data at scale: price, discount, units sold, rating, review count, seller, images and, on request, every variant with its own price and stock, shipping fee, delivery estimate, seller profile and customer reviews. Search by keyword, browse categories, list a seller's whole store or feed product URLs. No login and no TikTok account needed, and a 20-product search finishes in seconds.
| Field | What it does |
|---|---|
keywords | Search terms, e.g. wireless earbuds. US store. |
productUrls | Product page URLs or bare product IDs. Always returns full detail. |
sellerUrls | Store URLs or bare seller IDs. Lists the store's catalogue. |
categories | Category names (Kitchenware) or category URLs. US store. |
maxResultsPerQuery | Products per keyword, category or seller (default 20). |
countries | Markets: US (all modes), SG, MY, TH, VN, PH (product and seller URLs). |
maxResultsTotal | Cap for the whole run (0 = no cap). |
minPrice, maxPrice, minRating, minSoldCount | Filters, applied before charging. |
includeProductDetails | Variants, stock, shipping, seller profile, description, specs. |
includeReviews, maxReviews | Reviews from the product page (up to 5 per product). Turns product details on. |
{
"keywords": ["portable blender"],
"sellerUrls": ["https://shop.tiktok.com/us/store/example-store/7495000000000000000"],
"maxResultsPerQuery": 20,
"minRating": 4,
"includeProductDetails": true,
"includeReviews": true
}
Every row is one product. Main fields:
| Field | Description |
|---|---|
productId, productTitle, productUrl | Product identity and page link |
salePrice, listPrice, discountPercent, discountAmount, currency | Current price and discount |
soldCount, ratingAverage, reviewCount | Demand and rating |
sellerName, sellerId, sellerUrl | Seller |
imageUrl, imageUrls, promotionLabels | Images and badges such as "Free shipping" |
priceRangeMin, priceRangeMax, variants, variantOptions, availableQuantity, inStock | Variants and stock (details) |
shippingFee, freeShipping, shippingType, estimatedDelivery, shipsFrom | Shipping (details) |
sellerRating, sellerFollowerCount, sellerProductCount, sellerSoldCount | Seller profile (details) |
categoryPath, specifications, productDescription, videoUrl | Catalogue data (details) |
ratingDistribution, reviews, incentivizedReviewPercent | Reviews (details + reviews) |
popularityLabel, ratingQualityBucket, analysisBucket, analysisReason | Quick research verdict |
sourceMode, sourceQuery, position, scrapedAt | Where the row came from |
Example (fictional values, real shape):
{
"productId": "1732000000000000001",
"productTitle": "Portable Blender - Cordless USB Rechargeable, 600ml",
"productUrl": "https://shop.tiktok.com/us/pdp/portable-blender-cordless-usb/1732000000000000001",
"countryCode": "US",
"currency": "USD",
"salePrice": 19.99,
"listPrice": 39.99,
"discountAmount": 20,
"discountPercent": 50,
"isDiscounted": true,
"priceRangeMin": 19.99,
"priceRangeMax": 24.99,
"soldCount": 12850,
"ratingAverage": 4.5,
"reviewCount": 1630,
"imageUrl": "https://p16-oec-general-useast5.ttcdn-us.com/example.webp",
"sellerName": "Example Home Store",
"sellerId": "7495000000000000000",
"sellerUrl": "https://shop.tiktok.com/us/store/example-home-store/7495000000000000000",
"promotionLabels": ["Limited time deal", "Free shipping"],
"productCategory": "Mini Blenders",
"categoryPath": "Household Appliances > Kitchen Appliances > Juicers & Blenders > Blenders > Mini Blenders",
"productDetailsStatus": "ok",
"variantCount": 2,
"variantSummary": "Color: White, Pink",
"variants": [
{"skuId": "1732000000000000101", "label": "White", "salePrice": 19.99, "listPrice": 39.99, "stock": 4200, "inStock": true},
{"skuId": "1732000000000000102", "label": "Pink", "salePrice": 24.99, "listPrice": 39.99, "stock": 0, "inStock": false}
],
"availableQuantity": 4200,
"inStock": true,
"freeShipping": true,
"shippingFee": 0,
"shippingType": "Standard shipping",
"estimatedDelivery": "Oct 20 - Oct 23",
"shipsFrom": "Domestic",
"sellerRating": 4.6,
"sellerFollowerCount": 1580,
"sellerProductCount": 19,
"sellerSoldCount": 63240,
"ratingDistribution": {"5star": 1200, "4star": 210, "3star": 90, "2star": 40, "1star": 90},
"reviews": [
{"reviewId": "7600000000000000001", "rating": 5, "text": "Blends frozen fruit easily and charges fast.", "reviewerName": "J**n", "date": "2026-09-02", "variant": "White", "verifiedPurchase": true, "incentivized": false, "images": [], "country": "US"}
],
"popularityLabel": "high",
"ratingQualityBucket": "high",
"analysisBucket": "shortlist",
"analysisReason": "High demand (12850 sold), rating 4.5 from 1630 review(s), 50% off",
"position": 1,
"sourceMode": "keyword",
"sourceQuery": "portable blender",
"scrapedAt": "2026-10-14T18:11:21.000Z"
}
The research verdict uses fixed thresholds: demand is high from 10,000 units sold and medium from 1,000; rating quality is excellent from 4.7, high from 4.3 and moderate from 3.8; shortlist means medium or high demand with a high rating and at least 20 reviews.
Example: 1,000 products from keyword search ≈ $2.50. The same 1,000 with full details ≈ $5.50. Platform usage (compute and proxy traffic) is billed on top and is small: US runs use datacenter proxies and a few hundred MB of memory for seconds.
Is it legal to scrape TikTok Shop? The actor reads publicly visible product pages, the same data any visitor sees without logging in. It does not collect private account data. Check the rules that apply to you and how you use the data.
Do I need a TikTok account, cookies or a proxy? No account or cookies. A proxy is included: datacenter proxies for the US store, and residential exits in the right country for Southeast Asian markets.
How many results can I get? Seller stores return their whole catalogue. Keyword search returns roughly 250 to 300 products per keyword, which is where TikTok Shop stops serving results; a category returns about 100 products, plus more from its subcategories. Add more keywords or categories to go further.
Why is a field empty? List results (keyword, category, seller) carry price, rating, sold count, seller and images. Variants, stock, shipping, seller profile and descriptions need Include variants, stock, shipping and seller profile. Some products simply have no discount, reviews or video.
Can I schedule it or use the API? Yes. Schedule runs in the console, or start them through the API and read the dataset as JSON, CSV or Excel.
Which markets work? The US store supports every mode. Singapore, Malaysia, Thailand, Vietnam and the Philippines support product and seller URLs; prices come back in each market's currency.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
keywordsarrayOptionalSearch keywords
Search TikTok Shop (US store) by keyword, for example wireless earbuds or portable blender. Each keyword returns products with price, discount, sold count, rating and seller.
productUrlsarrayOptionalProduct URLs or IDs
TikTok Shop product pages or bare product IDs. Product URLs always return the full detail: variants, stock, shipping, seller profile, description and reviews. Example: https://shop.tiktok.com/us/pdp/portable-blender/1732293603160724238
sellerUrlsarrayOptionalSeller / store URLs or IDs
TikTok Shop store pages or bare seller IDs. The scraper lists the store's whole catalogue (up to the per-query limit). Example: https://shop.tiktok.com/us/store/jlab/7495182113810385569
categoriesarrayOptionalCategories
Category names (resolved against TikTok Shop's live category list, e.g. Kitchenware, Phones & Electronics) or category URLs such as https://shop.tiktok.com/us/c/kitchenware/600024. US store.
maxResultsPerQueryintegerOptionaldefault 20Max results per query
Maximum products per keyword, category or seller (per market).
countriesarrayOptionaldefault ["US"]Markets
TikTok Shop markets. The US store supports every mode. Singapore, Malaysia, Thailand, Vietnam and the Philippines support product and seller URLs (keyword and category discovery are US only). Product and store URLs that contain a market code use that market automatically.
maxResultsTotalintegerOptionaldefault 0Max results total
Hard cap on products for the whole run, across all inputs and markets. 0 means no cap.
Filters run before any product detail is fetched, so filtered-out products are never charged.
minPricenumberOptionalMinimum price
Keep only products at or above this sale price, in the market's own currency.
maxPricenumberOptionalMaximum price
Keep only products at or below this sale price, in the market's own currency.
minRatingnumberOptionalMinimum rating
Keep only products rated at or above this value (0 to 5).
minSoldCountintegerOptionalMinimum sold count
Keep only products with at least this many units sold.
Optional deep data per product, billed as a separate event.
includeProductDetailsbooleanOptionaldefault falseInclude variants, stock, shipping and seller profile
Fetch the full product page for every keyword, category and seller result: all variants with price and stock, shipping fee and delivery estimate, seller rating, followers and catalogue size, category path, specifications, description, full image gallery and rating breakdown. Billed as one extra 'Product detail' event per product whose page was fetched. Product URLs always include it, and Include reviews turns it on.
includeReviewsbooleanOptionaldefault falseInclude reviews
Add the reviews shown on the product page (TikTok shows up to 5 per product: text, rating, date, variant, verified-purchase and incentivized flags, review photos). Reviews come from the product page, so this turns product details on automatically (billed as the 'Product detail' event; product URLs always include it). Reviews themselves add no extra charge.
maxReviewsintegerOptionaldefault 5Max reviews per product
How many of the product page's reviews to keep (TikTok Shop serves up to 5 publicly).
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxies are enough for the US store. Other markets automatically use residential exits in that market's country.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| imageUrl | any | Image |
| productTitle | any | Product |
| productUrl | any | URL |
| salePrice | any | Price |
| listPrice | any | List price |
| discountPercent | any | Discount % |
| currency | any | Currency |
| soldCount | any | Sold |
| ratingAverage | any | Rating |
| reviewCount | any | Reviews |
| sellerName | any | Seller |
| sellerUrl | any | Seller URL |
| countryCode | any | Market |
| analysisBucket | any | Verdict |
| sourceMode | any | Source |
| sourceQuery | any | Query |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Product | One TikTok Shop product row: title, price, discount, sold count, rating, reviews, seller and images. Duplicates and filtered-out products are never charged. | $0.0025 |
| Product detail | Full product page for one product: variants with price and stock, shipping, seller profile, description, gallery and reviews. Only when product details are on, or for product URLs. | $0.003 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('shelfbright/tiktok-shop-scraper').call({
"keywords": [
"wireless earbuds"
],
"maxResultsPerQuery": 20,
"countries": [
"US"
],
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run shelfbright/tiktok-shop-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=shelfbright/tiktok-shop-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
US TikTok Shop products with full product details.
US TikTok Shop products in a price range.
Products with customer reviews.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.