Alibaba Scraper By Price, MOQ & Supplier Filter
Pricing
Pay per usage
Alibaba Scraper By Price, MOQ & Supplier Filter
π Alibaba Scraper extracts product & supplier data from Alibaba search and product pagesβtitles, prices, MOQ, specs, images, ratings, contact & shipping. π Export to CSV/JSON. π Perfect for sourcing, market research, price tracking & dropshipping.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
SimpleAPI
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
6 days ago
Last modified
Categories
Share
Alibaba Scraper β Filter Products by Price, MOQ & Supplier
Alibaba Scraper By Price, MOQ & Supplier Filter turns Alibaba.com search and category pages into a pre-qualified product dataset β only the offers that clear your price band, MOQ ceiling and supplier trust bar are saved. Every row carries price, priceValue, moq, moqValue, companyName, countryCode, goldSupplierYears and reviewScore, normalized into numeric fields you can sort and threshold on directly. Procurement teams, dropshippers and pricing analysts use it to skip manual screening and pull a ready-to-use supplier shortlist straight into a spreadsheet or pipeline.
β οΈ productLimit counts matches, not raw scraped rows
This is the one setting that decides how long your run takes, so it is worth stating before anything else. productLimit is the number of offers that pass your active filters β minPrice, maxPrice, maxMoq, verifiedSuppliersOnly, minReviewScore β not the raw count Alibaba returns. Alibaba serves roughly 48 products per search-results page; the Actor estimates how many pages it needs to reach that many matches and opens just enough of them, stopping the instant the target is hit. Set a narrow filter against a broad keyword and the run can open far more pages than productLimit Γ· 48 suggests, because most fetched rows may not pass. maxPages overrides that auto-estimate entirely when you set it β use it to put a hard ceiling on run length regardless of how the filter math works out.
What is Alibaba Scraper By Price, MOQ & Supplier Filter?
Alibaba Scraper By Price, MOQ & Supplier Filter is an Apify Actor that reads public Alibaba.com trade-search and category-browse pages and returns one JSON row per product offer that matches your sourcing filters. No Alibaba account, login or cookie is required β every field it returns is already visible to an anonymous visitor on the search results page.
Key features:
- Discovers products from any Alibaba search-results or category-browse URL you paste in, one per line, in bulk
- Returns identifying fields for both the product (
title,productId,productUrl,mainImage) and the supplier (companyName,companyId,countryCode) - Normalizes
priceandmoqdisplay strings into numericpriceValue,currencyandmoqValuefields you can filter and sort on directly - Filters live during the run on price band, MOQ ceiling, verified/Gold Supplier status and minimum review score β the dataset holds matches only, no manual post-processing
- Runs through Apify Residential proxy by default, with an automatic retry ladder when Alibaba blocks a request
- Exports as JSON, CSV or Excel straight from the Apify dataset, or reads live through the Apify API while the run is still going
What data can I extract with Alibaba Scraper By Price, MOQ & Supplier Filter?
Every product row carries the product's own identity and commercial terms, the supplier's identity and trust signals, and Alibaba's own listing labels β 42 fields in total, the 38 raw fields Alibaba's payload carries plus 4 fields this Actor derives.
| Field | Example Value | Use Case |
|---|---|---|
title | "Men's Waterproof Softshell Jacket Custom Logo Windproof Outdoor Coat" | Product identification and search matching |
productId | "1600981574830" | Alibaba's unique offer identifier β dedupe or re-check pricing later |
id | "1600981574830" | Alibaba's internal offer ID (mirrors productId on most offers) |
productUrl | "https://www.alibaba.com/product-detail/Men-s-Waterproof-Softshell-Jacket-Custom_1600981574830.html" | Direct link to the listing for manual review or RFQ |
mainImage | "https://s.alicdn.com/@sc04/kf/H0a1b2c3d.jpg" | Primary catalog image for a sourcing shortlist |
multiImage | ["https://s.alicdn.com/@sc04/kf/H1a2b3c4d.jpg"] | Additional gallery images for a product card |
price | "US$12.50 - $18.90" | Raw price string exactly as Alibaba displays it |
priceValue | 12.5 | Parsed numeric unit price (lower bound) β filter/sort target for minPrice/maxPrice |
currency | "USD" | Currency code detected from the price string |
moq | "50 pieces" | Raw minimum-order-quantity string as displayed |
moqValue | 50 | Parsed integer MOQ β filter target for maxMoq |
moqV2 | "50" | Alibaba's alternate MOQ representation |
soldOrder | "1240" | Units sold / order-volume demand signal |
reviewScore | "4.8" | Product review score (~0β5) β filter target for minReviewScore |
reviewCount | "213" | Number of product reviews |
productScore | "0.87" | Alibaba's internal product ranking score |
isVerifiedSupplier | true | Derived verified/Gold flag β filter target for verifiedSuppliersOnly |
companyName | "Quanzhou Hongfa Garment Co., Ltd." | Supplier identity for shortlisting and outreach |
companyId | "234881907" | Supplier's Alibaba company identifier |
companyLogo | "https://s.alicdn.com/@sc04/kf/H9c2f1e8a.jpg" | Supplier logo for a sourcing dashboard |
countryCode | "CN" | Supplier country β lead-time and tariff screening |
goldSupplierYears | "7" | Consecutive years as a paid Gold Supplier β trust signal |
supplierHref | "https://hongfagarment.en.alibaba.com/company_profile.html" | Absolute supplier profile URL |
supplierHomeHref | "https://hongfagarment.en.alibaba.com" | Absolute supplier storefront URL |
supplierService | "Trade Assurance" | Supplier service label as displayed |
supplierServiceScore | "4.9" | Supplier service score |
shippingScore | "4.7" | Shipping performance score |
displayStarLevel | "5" | Displayed star level |
certifications | ["BSCI", "OEKO-TEX"] | Certification badges β also feeds isVerifiedSupplier |
badges | ["Verified Supplier"] | Badge labels attached to the listing |
isShowAd | false | Sponsored-placement flag β exclude paid ranking from analysis |
showCrown | true | Crown / top-listing flag |
showAddToCart | true | Add-to-cart availability flag |
lyb | false | Alibaba listing flag, preserved as published |
customGroup | "" | Alibaba listing grouping value |
contactSupplier | "//message.alibaba.com/message/messenger.htm" | Contact-supplier link target as published |
chatToken | "" | Chat entry token as published |
eurl | "https://www.alibaba.com/trade/search?..." | Alibaba tracking URL, preserved unmodified |
trackInfo | "" | Alibaba tracking payload |
loopSellingPoints | ["Custom logo", "Sample available"] | Selling-point labels |
pcLoopSellingPoints | ["Custom logo"] | Desktop selling-point labels |
tmlid | "" | Alibaba template identifier |
Commercial and supplier trust fields
price, moq, reviewScore, goldSupplierYears and certifications are the fields that decide whether an offer is viable. price and moq carry Alibaba's own display strings intact β a price ladder or a "2 pieces" MOQ survives exactly as shown β while priceValue and moqValue give you the same information as clean numbers to threshold on. goldSupplierYears, supplierServiceScore, shippingScore and certifications are Alibaba's own trust signals; reviewScore, reviewCount and soldOrder show demand. Together these are what you sort and shortlist on before sending an inquiry.
Targeting and filter fields
priceValue, moqValue, isVerifiedSupplier and reviewScore are the four fields the Actor's own input filters operate on, so they double as the fields you segment results by after export β bucket by price band, split verified from unverified suppliers, or group by countryCode to weigh lead time against unit cost. currency tells you which price unit you are comparing before you mix rows from different currency zones.
Why not build this yourself?
Alibaba does not publish a general search API that returns arbitrary category or keyword result pages to anonymous callers, so a DIY scraper is the alternative β and the maintenance load is the real cost.
Alibaba embeds its listing data in an inline page payload (window.__page__data_sse*._offer_list), not in the rendered HTML. A CSS-selector scraper breaks on every layout change; a payload parser has to locate the blob, balance its braces through escaped strings, then walk an unstable nested structure to find the offers array. This Actor does all three, and falls back to a deep key search per field when the shape shifts, so a moved key degrades one field instead of failing the row.
Beyond extraction, filtering by price or MOQ means parsing Alibaba's free-text price and MOQ strings β "US$12.50 - 20.00", "2 pieces" β into comparable numbers first, handling ranges, missing values and mixed currency symbols without ever inventing a fake 0 for an offer that has no parseable price. Building and maintaining that parser, then combining five independent filters with AND logic against a live payload, is its own project before you have screened a single supplier.
The third cost is access. Alibaba blocks datacenter IPs aggressively. Getting consistent results means residential egress, browser-accurate TLS and header fingerprinting, sticky sessions reused while they work and rotated when they stop, and a retry ladder underneath all of it β infrastructure to run and pay for before you have parsed a single product.
How to use data extracted from Alibaba?
π’ Procurement and sourcing teams
A sourcing manager screening a new category sets maxMoq to the smallest order size they can commit to and maxPrice to their per-unit budget ceiling, then turns on verifiedSuppliersOnly so every row is already a Gold Supplier or carries a certification. The dataset that comes back is a shortlist, not a raw catalogue β companyName, countryCode and supplierHref are ready to paste into an RFQ list without a second screening pass.
π Sourcing agencies and consultants
An agency running the same category brief for several clients re-runs the identical searchUrls with a different minPrice/maxMoq/minReviewScore combination per client, since each filter is independent and takes effect on the same underlying scrape. Scheduling the run weekly with Apify's built-in scheduler keeps every client's shortlist current without re-writing the search.
π Market research and pricing intelligence
A pricing analyst tracking a category leaves the filters blank to capture every offer Alibaba returns for a keyword, then aggregates priceValue and moqValue across the run to map the category's price and order-size distribution β and re-runs the same searchUrls on a schedule to diff priceValue per productId week over week.
π€ AI agents and automated pipelines
An AI engineer building a sourcing assistant calls the Actor with filter parameters set directly from a user's natural-language brief β "under $20, MOQ below 50, verified only" maps straight onto maxPrice, maxMoq and verifiedSuppliersOnly β and gets back typed JSON with no parsing step, ready to hand to an agent tool or index into a vector store.
β¬οΈ Input
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
searchUrls | Yes | array | Alibaba search or category listing URLs, one per line. Works with search-results, category-browse and similar listing views. Paste many at once β each is processed in order. Accepts the legacy urls key too. | ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=Men%27s+Jackets&page=1"] |
productLimit | No | integer | Total number of MATCHING products (after filters) to save to the dataset, across all URLs. Minimum 1, maximum 100000, default 10. Accepts the legacy maxItems key too. | 50 |
minPrice | No | integer | Keep only offers whose parsed unit price (priceValue, lower bound of any range) is at least this amount. Minimum 0. Leave blank for no lower bound. | 5 |
maxPrice | No | integer | Keep only offers whose parsed unit price (priceValue) is at most this amount. Minimum 0. Leave blank for no upper bound. | 20 |
maxMoq | No | integer | Keep only offers whose minimum order quantity (moqValue, parsed from the offer, e.g. "2 pieces" β 2) is at most this number. Minimum 1. Leave blank to allow any MOQ. | 10 |
verifiedSuppliersOnly | No | boolean | When ON, keep only offers from verified suppliers β paid Gold Suppliers (goldSupplierYears β₯ 1) or suppliers carrying a certification badge. Default false. | true |
minReviewScore | No | integer | Keep only offers whose reviewScore is at least this value (Alibaba review scores run ~0β5). Minimum 0, maximum 5. Offers with no review score are dropped when this filter is set. | 4 |
maxPages | No | integer | Hard cap on how many result pages to open per URL. Minimum 1, maximum 5000. Leave blank to let the Actor derive it from productLimit; overrides the page auto-estimate when set. | 10 |
proxyConfiguration | No | object | Apify Proxy settings. Prefilled with Residential, which Alibaba effectively requires. | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |
Example input
{"searchUrls": ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=Men%27s+Jackets&page=1"],"productLimit": 50,"minPrice": 5,"maxPrice": 20,"maxMoq": 10,"verifiedSuppliersOnly": true,"minReviewScore": 4,"maxPages": 10,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Common pitfall: leaving minPrice, maxPrice, maxMoq and minReviewScore all blank means no filtering runs at all β every fetched offer is saved up to productLimit. The moment any one of them is set, filters combine with AND logic, and a row that lacks a parseable value on an active filter's dimension is dropped rather than passed β so setting minReviewScore also removes every offer with no review score, not just the low-scoring ones.
β¬οΈ Output
Every product is one dataset row with the same 42 keys, run after run. Missing raw values come back as typed empty defaults β "" for strings, [] for lists, false for booleans β never as a missing key. The four derived fields (priceValue, currency, moqValue) return null rather than a faked 0 when Alibaba's display string has nothing numeric to parse. Each saved row is billed once under the row_result pay-per-event charge; a page that returns nothing or is blocked pushes no row and is not charged. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
Example output
{"title": "Men's Waterproof Softshell Jacket Custom Logo Windproof Outdoor Coat","productUrl": "https://www.alibaba.com/product-detail/Men-s-Waterproof-Softshell-Jacket-Custom_1600981574830.html","price": "US$12.50 - $18.90","priceValue": 12.5,"currency": "USD","moq": "50 pieces","moqValue": 50,"moqV2": "50","soldOrder": "1240","reviewScore": "4.8","reviewCount": "213","productScore": "0.87","isVerifiedSupplier": true,"companyName": "Quanzhou Hongfa Garment Co., Ltd.","companyId": "234881907","companyLogo": "https://s.alicdn.com/@sc04/kf/H9c2f1e8a.jpg","countryCode": "CN","goldSupplierYears": "7","supplierHref": "https://hongfagarment.en.alibaba.com/company_profile.html","supplierHomeHref": "https://hongfagarment.en.alibaba.com","supplierService": "Trade Assurance","supplierServiceScore": "4.9","shippingScore": "4.7","displayStarLevel": "5","certifications": ["BSCI", "OEKO-TEX"],"badges": ["Verified Supplier"],"mainImage": "https://s.alicdn.com/@sc04/kf/H0a1b2c3d.jpg","multiImage": ["https://s.alicdn.com/@sc04/kf/H1a2b3c4d.jpg","https://s.alicdn.com/@sc04/kf/H2b3c4d5e.jpg"],"isShowAd": false,"showCrown": true,"showAddToCart": true,"lyb": false,"customGroup": "","contactSupplier": "//message.alibaba.com/message/messenger.htm","chatToken": "","eurl": "https://www.alibaba.com/trade/search?...","trackInfo": "","loopSellingPoints": ["Custom logo", "Sample available"],"pcLoopSellingPoints": ["Custom logo"],"id": "1600981574830","productId": "1600981574830","tmlid": ""}
How do you filter and target specific product listings?
This Actor's targeting model has two layers. The first is the search URL itself β the keyword, category and any sort order you build into it in the browser before pasting it into searchUrls decides which offers Alibaba returns at all. The second is the five filters applied after fetch: minPrice/maxPrice narrow to a unit-price band, maxMoq caps the minimum order size, verifiedSuppliersOnly restricts to Gold or certified suppliers, and minReviewScore sets a quality floor. All active filters combine with AND logic, and productLimit is the count of rows that pass all of them, not the raw scrape count β see the callout above. Volume is controlled by productLimit together with maxPages: leave maxPages blank to let the Actor size pagination to your target, or set it directly when you need a hard ceiling on run length regardless of how narrow the filters are.
Budget sourcing β price band and low MOQ:
{"searchUrls": ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=yoga+mat"],"productLimit": 30,"minPrice": 3,"maxPrice": 15,"maxMoq": 20}
Trusted-supplier screening only:
{"searchUrls": ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=led+strip+lights"],"productLimit": 25,"verifiedSuppliersOnly": true,"minReviewScore": 4}
Broad unfiltered scan with a hard page ceiling:
{"searchUrls": ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=waterproof+backpack"],"productLimit": 200,"maxPages": 5}
π Related scrapers
No other Alibaba scraper is currently published under this account. These SimpleAPI marketplace scrapers cover comparable e-commerce sourcing and pricing use cases:
| Scraper Name | What it extracts |
|---|---|
| Amazon ASIN Scraper & Buy Box Sellers | Amazon product data and Buy Box seller listings by ASIN |
| Amazon Brand Research Scraper | Amazon catalog and listing data for a target brand |
| Amazon Product Scraper With Keyword Rank Tracking | Amazon product data with keyword search-rank positions |
| Amazon Today's Deals Scraper & Affiliate Link Builder | Amazon deals feed with ready-to-use affiliate links |
How to extract Alibaba data programmatically
This Actor runs as a standard Apify Actor β one API call in, structured JSON rows out, no separate signup beyond your Apify account.
Python example
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("<YOUR_USERNAME>/alibaba-scraper-by-price-moq-supplier-filter").call(run_input={"searchUrls": ["https://www.alibaba.com/trade/search?fsb=y&IndexArea=product_en&keywords=waterproof+backpack"],"productLimit": 50,"maxMoq": 20,"verifiedSuppliersOnly": True,"proxyConfiguration": {"useApifyProxy": True, "apifyProxyGroups": ["RESIDENTIAL"]},})for product in client.dataset(run["defaultDatasetId"]).iterate_items():print(product["title"], product["priceValue"], product["moqValue"], product["companyName"])
Works in Go, Ruby, Node.js, cURL β any language that can make an HTTP request.
Export to spreadsheets or CRM
Export the dataset as CSV directly from the Apify Console or API and map columns straight in: title β product name, companyName β supplier, priceValue β unit price, moqValue β MOQ, countryCode β origin, reviewScore β quality score. No transformation step is needed since every value already arrives typed.
Is it legal to scrape Alibaba product and supplier data?
Scraping publicly listed product and supplier data is broadly treated as permissible where the data is accessible without authentication, and this Actor collects only what an anonymous visitor already sees on the search results page.
Product listings, prices, MOQs and company trading names are commercial business records, not personal data β company names like companyName identify a business entity, not an individual β so the personal-data regimes that govern profile scraping do not attach to this output in the same way. What does apply is contractual and database-related: Alibaba's terms of service, and any local database or unfair-competition rules covering systematic reuse of a compiled catalogue.
Consult legal counsel for commercial applications involving bulk storage or resale of extracted listings.
β Frequently asked questions
What happens if a search URL returns zero products matching my filters?
The run keeps going and simply saves nothing for that page β no placeholder or fabricated row is ever written. If every page for a URL comes back empty after filtering, productLimit is never reached for that source and the run finishes with whatever matched from your other URLs. Widen maxPrice, raise maxMoq, or drop verifiedSuppliersOnly if a filter combination is proving too narrow for the keyword.
Can I get supplier data along with the product listings?
Yes, on every row β there is no separate supplier lookup or extra charge. companyName, companyId, countryCode, goldSupplierYears, supplierHref, supplierService and supplierServiceScore are included on the same row as the product fields, sourced from the same page fetch.
How accurate is the price and MOQ data?
The Actor returns price and moq exactly as Alibaba displays them on the public listing at request time, plus the parsed priceValue and moqValue numbers derived from that same string. Accuracy depends on whether the supplier keeps their listing updated β always confirm final pricing and MOQ with the supplier directly before placing an order.
How many products can I get per run, and how does productLimit interact with maxPages?
productLimit accepts up to 100000 and counts matching products across all searchUrls combined, not a raw scrape count. Alibaba returns roughly 48 products per page; the Actor auto-derives how many pages it needs to reach your target unless maxPages is set, in which case maxPages overrides that estimate and becomes a hard per-URL ceiling.
How do the price, MOQ and supplier filters combine?
All five filters β minPrice, maxPrice, maxMoq, verifiedSuppliersOnly, minReviewScore β are independent and combine with AND logic: a row must pass every filter you set. If none are set, no filtering happens and every fetched offer is saved. A row missing a value on any active filter's dimension is dropped, not passed by default.
Does the Actor accept input from an older saved run?
Yes. searchUrls also accepts the legacy urls key, and productLimit also accepts the legacy maxItems key, so an input saved before this Actor's current parameter names still runs unchanged.
Does Alibaba Scraper By Price, MOQ & Supplier Filter work with Claude, ChatGPT and AI agent frameworks?
Yes. It is callable as a standard HTTP endpoint through the Apify API, so any agent framework that can make a request β LangChain, CrewAI, n8n, a custom tool definition β can invoke it and receive typed JSON directly.
How does this Actor compare to other Alibaba scrapers?
Checked on the Apify Store on 2026-07-25: khadinakbar/alibaba-listings-scraper documents a comparable filter set (price bounds, MOQ, verified/Trade Assurance, minimum rating, supplier country) and charges per product event, with filtered-out products stated as not billed. khadinakbar/alibaba-products-scraper documents no built-in price/MOQ/supplier filtering β it focuses on keyword search plus an optional detail-page enrichment charge. sian.agency/alibaba-1688-wholesale-scraper targets 1688.com, Alibaba Group's China-domestic wholesale marketplace, not Alibaba.com, and returns quantity-tier pricing from a search/detail pair of operations rather than filtered Alibaba.com search results. This Actor's difference is documenting exactly how its filters interact β AND logic across all five, productLimit as a post-filter match count, and maxPages as an explicit override of the page auto-estimate β on Alibaba.com search and category pages specifically.
Can I use this Actor without an Alibaba account or API key?
Yes. No Alibaba account, login, cookie or API key is required β the Actor sends anonymous requests and reads only the public listing payload. The one credential you need is your Apify token.
Conclusion
Alibaba Scraper By Price, MOQ & Supplier Filter turns a raw Alibaba search into a pre-qualified supplier shortlist β price band, MOQ ceiling and supplier trust bar applied during the run, not after. It is built for procurement teams, sourcing agencies and pricing analysts who need matches, not a full catalogue dump, plus AI pipelines that need typed JSON with no parsing step. Every row carries the same 42 keys with numeric price and MOQ fields ready to sort on. Start it from the Apify Console or call it through the Apify API to get your first filtered dataset.
π¬ Your feedback
Found a bug, or need a field that is in Alibaba's payload but not in the output? Open an issue on the Actor's Issues tab and it will be looked at. Field requests backed by a sample URL are the fastest to act on.