TikTok Shop Search Pro: Products, Sales & GMV
Pricing
from $3.15 / 1,000 results
TikTok Shop Search Pro: Products, Sales & GMV
TikTok Shop sales and TikTok Shop GMV data by keyword. Search US TikTok Shop products and export units sold, estimated GMV, price, rating, reviews, SKU prices, seller and search rank. TikTok Shop scraper and product search API for TikTok Shop product research, competitor tracking and dropshipping.
Pricing
from $3.15 / 1,000 results
Rating
4.7
(3)
Developer
DeepMine
Maintained by CommunityActor stats
1
Bookmarked
170
Total users
8
Monthly active users
8 days ago
Last modified
Categories
Share
Get TikTok Shop sales and TikTok Shop GMV data by keyword: search US TikTok Shop and get every product in the results with units sold, estimated GMV, price, rating, review count, seller and search rank. Use it as a TikTok Shop scraper and product search API for product research, competitor tracking and dropshipping sourcing. Rows are saved page by page, so the first products show up seconds into the run.
One Actor for every way in: keywords, categories, product links or IDs (the full product page: all images, video, category, brand, variants with stock, shipping, seller rating and the top 3 reviews), shop links (a shop's catalog). Turn on Add product page details (free, included in the price) to get the same product page fields on keyword and shop rows too. US TikTok Shop, plus keyword search in Singapore, the Philippines, Thailand, Vietnam and Malaysia.
$4.50 per 1,000 products on the Free and Starter plans ($3.80 Scale, $3.15 Business). 100 products cost $0.45. No login, cookies or proxy setup needed.
Real rows from one chair search (US TikTok Shop, recorded 2026-09-24):
Product (name) | Shop (shopName) | Price (amount) | Sold (soldFormatted) | Est. GMV (estimatedGmv) | Rating (reviews) |
|---|---|---|---|---|---|
| HOMRELEXA Big and Tall Executive Ergonomic Office Chair | Homrelexa | from $239.99 (was $329.99) | 3.3K | $783,567 | 4.6 (412) |
| Ecofurnix Gaming Chair, Ergonomic High-Back Office Desk Chair | HLFURNITURE | $98.98 | 3.3K | $328,911 | 4.6 (651) |
| Modern Height-Adjustable Ergonomic High Back Gaming Chair | Nestora-Home | from $92.27 | 151 | $13,933 | 4.1 (22) |
| Verve Chair | Branch Furniture | from $778.70 | 2 | $1,557 | 4.5 (125) |
The first two chairs both show "3.3K sold", but the first has about 2.4× the sales in dollars. Sold count alone hides that; estimatedGmv shows it.
What you get
Every product discovered is returned as a structured record containing:
- Product title and seller identity
- Sale price, original price and % off, plus per-SKU prices and the lowest/highest SKU price
- Min, max and average product price per seller (Shops dataset)
- Units sold (e.g.
3265, shown as3.3K) and an estimated GMV (price × units sold) - Ratings, review counts and units sold per review
- With product page details (free): all images, video, category, specifications, stock, shipping and delivery time, shop rating, the top 3 reviews and 5-to-1-star counts
- Global and page-level ranking position
- Direct product URL
- Seller aggregation across all results (Shops dataset)
- Deals subset for discounted products (Deals dataset)
- Optional change tracking: units sold since your last run, sales per day, price changes and newly listed products
Results are split across three datasets automatically: Products, Deals, and Shops — so your data is pre-organized the moment the run finishes.
Who uses this
Ecommerce brands use it to map a category before launching — understanding who's already selling, at what price, and how well they're rated.
Amazon sellers use it to track TikTok Shop as a competing or complementary channel, monitor SKU-level pricing shifts, and identify white-label opportunities.
Dropshipping agencies use it to source winning products across multiple niches in bulk, with rating and review signals built in.
Market research teams use it to benchmark competitor catalogs, track price movements over time via scheduled runs, and build data pipelines for category intelligence.
Retail and wholesale buyers use it to identify top-performing sellers and products before approaching suppliers directly.
Input
| Field | Description | Default |
|---|---|---|
queries | One or more keywords to search on TikTok Shop | ["ergo chair"] when no links are given |
productUrls | Product links (tiktok.com/shop/pdp/..., shop.tiktok.com/us/pdp/...) or product IDs: one row each, with the product page fields below | none |
shopUrls | Shop links (tiktok.com/shop/store/...) or seller IDs: the shop's catalog | none |
maxPagesPerQuery | Pages to fetch per keyword or shop (more pages = more results) | 10 |
maxResultsPerQuery | Maximum unique products collected per keyword or shop | 300 (the form starts at 100) |
includeDetails | Add product page details to keyword and shop rows: the product page fields listed under Output fields, including the top 3 reviews. Free (included in the per-product price); reads about 4 product pages at once, so runs take longer. US store | false |
region | Which TikTok Shop to search with keywords: US (every page TikTok Shop has), or SG, PH, TH, VN, MY: one page per keyword (about 20-30 products, local currency), the most those shops show without signing in. Links work for the US store only | US |
sortBy | Keyword results in TikTok Shop's own order: relevance, bestsellers (TikTok Shop's best-seller ranking: big sellers first, not a strict order by units sold) or newest. TikTok Shop's search doesn't sort by price | relevance |
categoryIds | TikTok Shop category links (tiktok.com/shop/c/...) or IDs, e.g. 849416 (Personal Care Appliances). With keywords: only products in these categories. Without keywords or links: lists each category's products (TikTok Shop's search for the category's name inside the category, up to about 100 per category, US store; a top-level category like Beauty & Personal Care needs one of its subcategories). Product page rows show a product's categoryLevel2Id | none |
Filters (optional; products that don't pass are skipped and not charged):
| Field | Description | Default |
|---|---|---|
minSold / maxSold | Minimum / maximum lifetime units sold (a max finds new or rising products; products with no sales yet pass it) | not set |
minPrice / maxPrice | Price range, in the market's currency (USD for the US) | not set |
minRating | Minimum rating (1-5); unrated products are skipped. At 4 or more, TikTok Shop's own "4 stars & up" filter also narrows the search, so fewer pages are needed | not set |
minReviews | Minimum review count | not set |
onlyDiscounted | Only products on sale | false |
minDiscountPercent | Only products at least this much off, e.g. 20 = 20% off or more | not set |
onlyFreeShipping | Only products with free shipping | false |
onlySellers | Keep only these shops: shop links, seller IDs or shop names (whole words, any case) | not set |
excludeSellers | Skip these shops: shop links, seller IDs or shop names (whole words, any case) | not set |
excludeTitleWords | Skip products whose title has one of these words or phrases (whole words, any case) | not set |
Track changes — compare each run with the last one:
| Field | Description | Default |
|---|---|---|
trackChanges | Remember what each input returned and add the change fields below on the next run with the same input | false |
historyStoreName | Key-value store that keeps the history (empty = one named after this Actor) | empty |
Advanced — only adjust these if you have a specific reason:
| Field | Description | Default |
|---|---|---|
includeRawProduct | Attach the full raw product object to each output item | true for API calls (the form starts with it off) |
requireAllQueryTokens | Only return products whose title contains every word in the query | false |
minimumQueryTokenMatches | Optional: min words that must be in the title when the strict filter is off | not set (no filter) |
requestTimeoutSec | Per-request timeout in seconds | 30 |
maxFetchRetries | Retry attempts per page before skipping | 5 |
queryRetryAttempts | Full query restarts on failure before giving up | 5 |
Tip: for a cleaner, smaller dataset, set includeRawProduct to false. By default you get every product TikTok Shop shows for your keyword, in TikTok's order. To keep only products whose title contains every word of your keyword, turn on requireAllQueryTokens (you will get fewer products).
Output fields
| Field | Description |
|---|---|
productId | Unique TikTok Shop product identifier |
name | Full product listing title |
slug | URL slug of the listing |
shopName / sellerId / shopLogo | Seller shop name, shop ID and logo |
price / priceFormat | Display price, e.g. $239.99 (for products with several SKUs, the lowest SKU price) |
amount | Sale price as a number (USD) |
originalPrice / originalPriceFormat | Price before discount |
discountDecimal / discountFormat | Discount if on sale, e.g. 0.27 / 27% |
discountPercent | Discount as a number, e.g. 27 |
priceMin / priceMax | Lowest and highest SKU price |
currencyName / currencySymbol | Currency of the prices |
sold | Units sold: the total sold count TikTok Shop shows on the listing |
soldFormatted | Units sold in compact form, e.g. 3.3K (TikTok Shop's style, except whole thousands: 2K here, 2.0K on TikTok Shop) |
estimatedGmv | Estimated gross merchandise value in the row's currency: amount × sold. An estimate: past sales are counted at today's price (the lowest SKU price for multi-SKU products) |
rating | Average buyer rating (0–5 scale) |
reviews | Review count as returned by TikTok Shop (text) |
reviewCount | Review count as a number, for sorting and filtering |
soldPerReview | Units sold per review (sold / reviewCount) |
skus / skuCount | Per-SKU prices and the number of SKUs |
rankOnPage | Position within its search page |
rank | Position across all pages for this keyword |
productUrl | Direct link to the product on TikTok Shop |
image | Product cover image URL |
query | The keyword that returned this product |
matchedQueries | The keyword that found this product (one row and one charge per product; later keywords that found it again are listed in the run's OUTPUT under alsoFoundUnderLaterQueries) |
page | Page number the product appeared on |
searchRegion | Market used for the search (US, SG, PH, TH, VN or MY) |
sourceUrl | TikTok Shop search page the product came from |
scrapedAt | ISO 8601 timestamp of when data was collected |
brand / freeShipping / sellerUrl | Brand (when TikTok Shop shows one), free-shipping label and the shop's link |
inputType | keyword, category, shop or product: which input found the row |
priceUsd / estimatedGmvUsd | Price and estimated GMV in USD. Outside the US they are converted at the day's exchange rate; the USD price filters use priceUsd |
revenueTier | Estimated GMV in USD as a band: under $10K, $10K-100K, $100K-1M, $1M-10M, $10M+ (when the listing shows units sold) |
tags | TikTok Shop's labels on the listing, e.g. Free shipping, Flash sale, Limited time deal |
dealEndsAt | When a flash deal's countdown ends (only on listings running one, about 1 in 10) |
verifiedShop | true when the shop has TikTok Shop's blue verified badge |
transparentImage | Cut-out product picture on a transparent background, when TikTok Shop has one (about 6 in 10 listings) |
rawProduct | Complete raw API payload (when includeRawProduct is on) |
soldSinceLastScrape / soldPerDay / previousSold | Units sold since the last run with the same input, per day, and the count then (with trackChanges, from the second run on) |
priceChange / previousPrice | Price change since the last run (with trackChanges) |
firstSeenAt / newSinceLastScrape / previousScrapedAt | When this input first returned the product, whether it is new since the last run, and when that run was (with trackChanges) |
Product link rows, and keyword and shop rows with includeDetails, also carry the product page: images / imageCount, video / videoDuration, category / categoryId / categoryPath / categoryLevel2Id, specifications, description, skus with variant names, stock and purchase limit, inStock, shippingFee / originalShippingFee, deliveryMinDays / deliveryMaxDays / deliveryEstimate, shipFrom, fulfilledByTikTok, shopRating, shopFollowers, shopProductCount, sellerBusinessName, topReviews (up to 3 reviews TikTok Shop shows on the page: reviewId, rating, text, reviewerName, date, verifiedPurchase, variant, country, images) and the star counts fiveStarReviews … oneStarReviews. With includeDetails, detailsStatus is ok, or failed when a product page couldn't be read (the row keeps its search fields). The Product details table view shows them.
Running at scale
To collect large datasets, increase maxPagesPerQuery and maxResultsPerQuery. For ongoing monitoring, use Apify's built-in scheduler to run the actor on a daily or weekly cadence — results accumulate across runs so you can track price and ranking changes over time.
For multi-keyword research, add all your target queries to the queries list. Each keyword is searched independently and the results are merged into a single dataset with the source keyword attached to every record. A product found under several keywords is one row and one charge: query is the first keyword that found it, and the run's OUTPUT lists the later keywords that found it again (alsoFoundUnderLaterQueries).
Reliability
No proxy setup is required from you. Standard runs handle collection reliability automatically.
If TikTok Shop refuses or doesn't answer and no products could be saved, the run fails with a status message that says so, so your integrations and alerts notice; no results are charged. If TikTok Shop simply has no products for your keyword, the run succeeds with 0 results and its status message says that instead.
Frequently asked questions
How many products can I collect per run? Up to 5,000 per keyword. Most categories return 100–500 unique products before results repeat. The free Apify plan gets the same full run as paid plans. A run stops at the number of products your maximum cost per run pays for.
What does it cost? $4.50 per 1,000 products on the Free and Starter plans, $3.80 on Scale and $3.15 on Business, plus Apify's tiny Actor start fee ($0.00005). You pay only for products saved to the dataset.
Is the GMV an official TikTok number?
No. TikTok Shop shows the lifetime units sold on each listing; we multiply it by the current price. Treat estimatedGmv as an estimate for ranking and comparing products.
Can I get reviews?
Every product page row (product links, or includeDetails) has the top 3 reviews TikTok Shop shows on the page and the 5-to-1-star counts, at no extra cost. For every review of a product, use TikTok Shop Reviews Pro.
Can I get weekly or 30-day sales?
Not directly: TikTok Shop's search results only show lifetime units sold. Schedule the same keywords daily or weekly and compare sold between runs to get sales per period.
Can I search multiple keywords at once?
Yes — add as many keywords as needed to the queries field. Each is searched independently. A product found under several keywords is one row and one charge: query is the first keyword that found it, and the run's OUTPUT lists the later keywords that found it again.
Can I schedule this to run automatically? Yes. Use Apify's scheduler to run on any cadence. Pair with the Apify API or webhooks to pipe results into your own systems.
What regions are supported?
US by default. Set region to SG, PH, TH, VN or MY to search those TikTok Shops: you get one page per keyword (about 20-30 products), prices in local currency, and product and seller links for that country's shop. Add more keywords for more products. Product and shop links work for the US store only. If that shop refuses a search, it's asked again on up to five more IPs, and the run goes on through every keyword as long as its searches bring products; refused searches are never charged. Only a run whose searches keep coming back refused or with no matching products stops early, and it says so in its status and in OUTPUT (stoppedEarly, plus a status for each keyword in summary). Other countries (UK, Japan, Indonesia, Brazil, EU) don't show TikTok Shop products without signing in.
Does this work with Apify integrations? Yes — results export directly to Google Sheets, Zapier, Make, BigQuery, and any tool connected via the Apify API.
Calling it via API?
Use deepmine/tiktok-shop-search-pro (was sentry/tiktok-shop-search-pro before September 3, 2026), or the Actor ID Hr1hjEAGdYMr1RbUj, which never changed.
Use case guides
Competitor product research
Add 3–5 keywords from your product category. Set maxResultsPerQuery to 500 and maxPagesPerQuery to 10. Run it. You'll have a full picture of who's selling in your niche, at what price, and with how many reviews — ready to export.
Best-seller research
Search your category, then sort the dataset by estimatedGmv or sold. The top rows are the products that have made the most money, not just the most units. Use the Shops dataset to see which sellers own the category.
Price monitoring
Set up a scheduled run with your target keywords on a daily cadence and turn on trackChanges. Each row then says how many units sold since the last run (soldSinceLastScrape, soldPerDay), how the price moved (priceChange) and whether the product is new (newSinceLastScrape). The Changes since last run table view shows them side by side.
Dropship product sourcing
Run broad category keywords with high page limits. Filter the output by sold, rating and reviewCount to surface proven products. Use the Shops dataset to identify sellers worth contacting directly.
TikTok Shop Search Pro collects publicly available TikTok Shop search result data. Use in accordance with TikTok's terms of service and applicable laws in your jurisdiction.
About
Built and maintained on Apify — the platform for web scraping and data extraction at scale. TikTok Shop Search Pro is part of a suite of TikTok data tools covering product search, affiliate products, seller catalogs, and shop reviews.
Related searches: TikTok Shop scraper, TikTok Shop product data, TikTok Shop API alternative, TikTok Shop sales data, TikTok Shop GMV, TikTok Shop units sold, TikTok ecommerce data, TikTok Shop price tracker, TikTok Shop competitor analysis tool, extract TikTok Shop listings, TikTok Shop market research, TikTok Shop product research, TikTok Shop product catalog scraper, TikTok dropshipping research tool, TikTok Shop seller data extractor, bulk TikTok Shop product export, TikTok Shop data pipeline, ecommerce competitive intelligence TikTok, TikTok Shop SKU pricing data