# Alibaba Scraper 🛒 Supplier Sourcing (MOQ, tiered price, trust) (`tagadanar/alibaba-scraper`) Actor

Find China suppliers and what they actually charge: title, price, tiered MOQ pricing, minimum order quantity, supplier name and storefront, plus Verified Supplier and Trade Assurance flags. Customs subscriptions show who ships what; this shows the live asking price. No API key.

- **URL**: https://apify.com/tagadanar/alibaba-scraper.md
- **Developed by:** [Tagada Data](https://apify.com/tagadanar) (community)
- **Categories:** Lead generation, E-commerce, AI
- **Features:** Limited permissions
- **Stats:** 6 total users, 3 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 1,000 product scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Alibaba Scraper 🛒 (supplier trust flags + MOQ pricing)

Turn any Alibaba.com search into a clean spreadsheet of products and the suppliers
behind them. Every row carries the price and the tiered minimum-order pricing, the
minimum order quantity, the supplier name and storefront link, how many years the
supplier has been a Verified member, the certifications shown on the listing, and
the review score. Give it a keyword or paste a search URL and it works down the
result pages until it has what you asked for.

Built for the part that usually goes wrong: finishing the run. Alibaba throttles
repeated requests, and a lot of scrapers stall or come back half empty. This one
paces itself and rotates so a search returns a full set instead of a handful.

No API key, no login, no template to fill in. Results come back as flat JSON (and
CSV/Excel from the dataset export).

### What you get

One record per product:

| Field | What it is |
|---|---|
| `title` | Product title as listed |
| `url` | Link to the product detail page |
| `image` | Main product image |
| `priceText` | Price exactly as shown, e.g. `€37.94` or `€5.74-7.50` |
| `priceMin` / `priceMax` | The price range as numbers |
| `currency` | Currency of the shown price |
| `priceTiers` | Tiered MOQ pricing when the listing publishes a price ladder |
| `minOrder` / `minOrderText` | Minimum order quantity, as a number and as shown |
| `supplierName` | The company behind the product |
| `supplierUrl` | The supplier's Alibaba storefront |
| `supplierCountry` | Supplier country code, e.g. `CN` |
| `supplierYears` | Years the supplier has held Verified membership |
| `isVerifiedSupplier` | Whether the supplier is a Verified (ex-Gold) member |
| `hasTradeAssurance` | Whether Trade Assurance is advertised on the card |
| `certifications` | Product certifications on the listing, e.g. `["CE","FCC","RoHS"]` |
| `badges` | Any extra supplier badges shown |
| `crown` | Whether Alibaba tags the supplier as a top/crown supplier |
| `reviewScore` / `reviewCount` | Buyer rating and number of reviews |
| `searchTerm` / `sourceUrl` / `scrapedAt` | Where the row came from and when |

Turn on **Add supplier trust profile** to also open each supplier's storefront and
add their Verified tenure, Trade Assurance status, response rate and business type
as a `supplierProfile` object. It only bills when a profile is actually returned.

### Input

| Field | What it does | Limits |
|---|---|---|
| `search` | One entry per line: a product keyword, an Alibaba search-results URL, or a single product-detail URL. Keywords and URLs can be mixed. | 1–20 entries |
| `maxResults` | Stop after this many products across all searches. | 1–4,000 (100 result pages × ~40 products, the real depth of one Alibaba search). With supplier profiles on, an hour-long run realistically reaches about **800**. |
| `scrapeSupplierProfiles` | Also open each supplier's storefront for tenure, Trade Assurance and response rate. | default off |

The run also watches its own clock. If the searches you asked for would outlast
the run timeout, the actor stops walking pages while there is still time left to
charge and deliver everything it has collected, and the run finishes
**successfully** with a status message saying so: *"Stopped at the run time
limit: N rows delivered, raise the run timeout or lower maxResults."* You keep
the rows and you are told exactly which knob to turn — instead of the run being
killed mid-page with nothing to show for it.

### Who uses it

- **Sourcing agents and importers** comparing the same product across dozens of
  suppliers, sorting by minimum order and Verified tenure before reaching out.
- **Dropshippers and Amazon/eBay sellers** pulling a category into a sheet to find
  the lowest MOQ and the best price break for a first order.
- **Procurement teams** building an approved-supplier shortlist filtered on
  certifications (CE, FCC, RoHS) and Trade Assurance.
- **Market and pricing analysts** tracking how many suppliers offer a product and
  where the price bands sit.

### Input examples

Search by keyword:

```json
{
  "search": ["stainless steel water bottle"],
  "maxResults": 100
}
```

Several searches at once, with supplier profiles:

```json
{
  "search": ["led strip light", "solar panel 400w", "yoga mat"],
  "maxResults": 300,
  "scrapeSupplierProfiles": true
}
```

Paste a search URL straight from your browser, or a single product page:

```json
{
  "search": [
    "https://www.alibaba.com/trade/search?keywords=cordless+drill&tab=all",
    "https://www.alibaba.com/product-detail/Widget_1600933801964.html"
  ],
  "maxResults": 50
}
```

### Output sample

```json
{
  "source": "Alibaba",
  "productId": "1601234567890",
  "title": "Wireless Bluetooth Earbuds ENC Noise Cancelling TWS Headphones",
  "url": "https://www.alibaba.com/product-detail/_1601234567890.html",
  "image": "https://s.alicdn.com/@sc04/kf/H8a1b2c3d.jpg",
  "priceText": "US $12.30 - 15.00",
  "priceMin": 12.3,
  "priceMax": 15.0,
  "currency": "USD",
  "priceTiers": [
    {
      "minQuantity": 100,
      "maxQuantity": 999,
      "price": 15.0
    },
    {
      "minQuantity": 1000,
      "maxQuantity": null,
      "price": 12.3
    }
  ],
  "minOrder": 100,
  "minOrderText": "100 pieces",
  "supplierName": "Shenzhen Sound Vision Technology Co., Ltd.",
  "supplierUrl": "https://sound-vision.en.alibaba.com",
  "supplierCountry": "CN",
  "supplierYears": 8,
  "isVerifiedSupplier": true,
  "hasTradeAssurance": true,
  "certifications": [
    "CE",
    "FCC",
    "RoHS"
  ],
  "badges": [
    "Gold Supplier",
    "Trade Assurance"
  ],
  "crown": false,
  "reviewScore": 4.8,
  "reviewCount": 213,
  "searchTerm": "bluetooth earbuds",
  "sourceUrl": "https://www.alibaba.com/trade/search?SearchText=bluetooth+earbuds",
  "scrapedAt": "2026-08-05T09:14:22.317Z"
}
```

### Pricing

You pay per product returned, and per supplier profile only when one is actually added. Platform usage is included in the price, so there is no subscription and no usage line on your bill. Alibaba blocks datacenter traffic, so every run goes through a built-in residential proxy; its cost is covered by the price and there is no proxy setting to configure.

| Event | Price |
| --- | --- |
| Actor start | $0.001 per run |
| Product scraped | $5.00 per 1,000 |
| Supplier profile | $5.00 per 1,000 (only when **Add supplier trust profile** returns one) |

The tiny start fee covers runs that return nothing; on any normal search it is noise next to the per-product price.

### FAQ

**Do I need an API key or an Alibaba account?**
No. Give it a keyword or a URL and run it.

**Do I need to set anything up so a run finishes?**
No. Alibaba limits how many pages one address can pull before it asks for a
check, so the actor spaces requests out for you and comes back with a full set.
It handles that on its own, nothing to configure.

**Can I get tiered price breaks?**
Yes, when the listing publishes them they come back in `priceTiers` as quantity
and price pairs. The single shown price and its range are always in `priceText`,
`priceMin` and `priceMax`.

**How do I get the full supplier profile, not just the card flags?**
Turn on **Add supplier trust profile**. The extra storefront lookup adds Verified
tenure, Trade Assurance, response rate and business type.

**What does it cost to run?**
One flat price per product delivered, with platform usage included. No separate
usage bill to reconcile. Products that fail to parse are not billed.

**Is this affiliated with Alibaba?**
No. It reads public listing pages, the same ones anyone can open in a browser.

### Related actors

- **Europages Scraper** for European B2B suppliers with contact emails and VAT IDs.

Use Alibaba for China-and-global sourcing at scale, and Europages when you
need Europe coverage on the same buying project.

***

Keywords: alibaba scraper, alibaba.com scraper, alibaba product scraper, alibaba
supplier scraper, b2b supplier data, wholesale supplier list, MOQ pricing,
minimum order quantity, verified supplier, gold supplier, trade assurance,
sourcing data, import export leads, alibaba api alternative, dropshipping supplier
research, procurement supplier list.

# Changelog

This Actor's version history is a separate document: https://apify.com/tagadanar/alibaba-scraper/changelog.md

# Actor input Schema

## `search` (type: `array`):

One entry per line: a product keyword exactly as you would type it into Alibaba's search box (e.g. <code>stainless steel water bottle</code>), an Alibaba search-results URL, or a single product-detail URL. Keywords and URLs can be mixed.

## `maxResults` (type: `integer`):

Stop after this many products across all searches. You are only charged for products actually delivered. The ceiling is what one search can actually reach: 100 result pages of about 40 products. With <b>Add supplier trust profile</b> on, an hour-long run realistically reaches about 800 products, because each new supplier costs an extra storefront lookup.

## `scrapeSupplierProfiles` (type: `boolean`):

Also open each supplier's storefront to add their Gold Supplier tenure, Verified Supplier status, Trade Assurance and response rate. Slower (about 800 products per hour-long run instead of several thousand), and billed as a separate supplier-profile item only when the profile is actually returned.

## Actor input object example

```json
{
  "search": [
    "stainless steel water bottle"
  ],
  "maxResults": 20,
  "scrapeSupplierProfiles": false
}
```

# Actor output Schema

## `products` (type: `string`):

One item per product in the default dataset.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "search": [
        "stainless steel water bottle"
    ],
    "maxResults": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("tagadanar/alibaba-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "search": ["stainless steel water bottle"],
    "maxResults": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("tagadanar/alibaba-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "search": [
    "stainless steel water bottle"
  ],
  "maxResults": 20
}' |
apify call tagadanar/alibaba-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,tagadanar/alibaba-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/b74gkogZbZJEcdf67/builds/f4wqNPHtSlYyl7hY5/openapi.json
