# AliExpress Search Scraper – Products, Prices, Orders & Ratings (`tubetext/aliexpress-search-scraper`) Actor

Scrape AliExpress search results by keyword: price and discount, items sold, rating, listing date, ships-from country, free shipping, Choice and deal badges. Any ship-to country and currency. No login. $0.0025/product.

- **URL**: https://apify.com/tubetext/aliexpress-search-scraper.md
- **Developed by:** [TubeText Labs](https://apify.com/tubetext) (community)
- **Categories:** E-commerce, Automation
- **Stats:** 1 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 products

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

## AliExpress Search Scraper – Products, Prices, Orders & Ratings

> By **TubeText Labs** – see all our tools at the end of this page.

Scrape AliExpress search results by keyword: price and original price, discount, **items sold**, star rating, listing date, ships-from country, free shipping, AliExpress Choice and deal badges, delivery estimate and images. For dropshippers, product researchers, e-commerce sellers and price trackers – any ship-to country and currency, no login, pay per product.

### Why this one

- 🔎 **Deep search, up to 20 pages per keyword** – AliExpress repeats some products across pages, so you get fewer unique products than requested (584–997 unique for 1,200 requested in our tests); repeats are removed
- 🏆 **Sort by orders** to find best sellers, or by price; optional price range; price sorting follows the price shown in the results
- 🌍 **Ship-to country & currency** – US, UK, Germany, France, Spain, Brazil, Korea and more; see local-warehouse products (e.g. ships from DE/PL)
- 📢 **Sponsored results flagged** (about 1 in 4 on AliExpress) – keep or skip them
- 💸 **$2.50 per 1,000 products**, failed searches free

### Input example

```json
{
  "keywords": ["yoga mat", "phone case"],
  "maxItemsPerKeyword": 120,
  "sortBy": "orders",
  "shipTo": "DE",
  "currency": "EUR",
  "minPrice": 5,
  "maxPrice": 30
}
```

### Output example

Real output (shortened), `yoga mat`, ship to US:

```json
{
  "status": "ok",
  "keyword": "yoga mat",
  "rank": 2,
  "productId": "3256806808957451",
  "url": "https://www.aliexpress.com/item/3256806808957451.html",
  "title": "Yoga Mat Pilates Fitness Mat 3/4/6mm Thicknes Non Slip Yoga Cushion Travel Fitness Exercise Pad…",
  "price": 2.33,
  "priceText": "US $2.33",
  "originalPrice": 12.72,
  "discountPercent": 81,
  "currency": "USD",
  "soldText": "10,000+ sold",
  "soldCount": 10000,
  "rating": 4.9,
  "listedDate": "2024-05-16",
  "shipFrom": "CN",
  "freeShipping": false,
  "choice": true,
  "sponsored": false,
  "deliveryEstimate": "Oct 16 - 20",
  "badges": ["Lowest price in 90 days"],
  "image": "https://ae-pic-a1.aliexpress-media.com/kf/S2519edadb8104a8a914b2c6c1ff4151bZ.jpg",
  "totalResults": 7870
}
```

`soldCount` is the number AliExpress shows ("10,000+ sold" → 10000), so treat it as a lower bound. `shipFrom` is empty when AliExpress does not state it.

### Pricing

Pay per event:

- **$2.50 per 1,000 products** (cheaper on higher Apify plans: down to $2.00).
- Failed or empty searches are free.
- The *Product details* price shown on the pricing tab is not used by this Actor and is never billed; it will be removed from the price list.

Example: 120 products for each of 10 keywords = 1,200 products ≈ **$3.00**.

### Tips

- **Duplicate keywords**: `Yoga Mat` and `yoga  mat` count as the same search (case and extra spaces are ignored), so you're not charged twice.
- **Product research**: sort by `orders`, then rank by `soldCount` and `rating`; compare `listedDate` to spot new winners.
- **Price tracking**: schedule the same keywords daily and compare `price` per `productId`.
- **Local warehouses**: set *Ship to* to your market and filter `shipFrom` for faster delivery.
- **TikTok Shop too?** See [TikTok Shop Product Scraper](https://apify.com/tubetext/tiktok-shop-product-scraper) from the same team.

### Ready-made examples

- [AliExpress Best-Selling Products](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-best-selling-products)
- [AliExpress Dropshipping Product Research](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-dropshipping-product-research)
- [AliExpress Prices in Your Currency](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-prices-eur-gbp)
- [AliExpress Phone Case Best Sellers](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-phone-case-best-sellers)
- [AliExpress LED Strip Lights Best Sellers](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-led-strip-lights-best-sellers)
- [AliExpress Pet Supplies Best Sellers](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-pet-supplies-best-sellers)
- [AliExpress Car Accessories Best Sellers](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-car-accessories-best-sellers)
- [AliExpress Kitchen Gadgets Best Sellers](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-kitchen-gadgets-best-sellers)
- [AliExpress Price Monitor](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-price-monitor)
- [AliExpress Choice & Free Shipping](https://apify.com/tubetext/aliexpress-search-scraper/examples/aliexpress-choice-free-shipping)

### TubeText Labs tools

**TubeText Labs** builds 9 pay-per-result Apify Actors for video, social and e-commerce data – no login, JSON/CSV/Excel output, and ready for ChatGPT and Claude (Apify MCP), n8n, Make and Zapier. All tools: [apify.com/tubetext](https://apify.com/tubetext)

**Transcripts**

- [YouTube Transcript Scraper](https://apify.com/tubetext/youtube-transcript-fast) – videos, Shorts, playlists and whole channels to text; Whisper AI when there are no captions
- [TikTok Transcript Scraper](https://apify.com/tubetext/tiktok-transcript) – TikTok captions plus Whisper AI, SRT and timestamps
- [Instagram Reels Transcript](https://apify.com/tubetext/instagram-reels-transcript) – reel links or @usernames to text with Whisper AI

**Video & ad analysis**

- [Video Breakdown AI](https://apify.com/tubetext/video-breakdown-ai) – hook analysis, shot list, cut pacing, products shown and script of any TikTok, Reel or YouTube video
- [Video Ad Analyzer](https://apify.com/tubetext/video-ad-analyzer) – competitors' YouTube video ads by brand or domain (Google Ads Transparency), torn down by AI

**Channel analytics**

- [YouTube Channel Analytics](https://apify.com/tubetext/youtube-channel-analytics) – subscribers, recent video performance, Social Blade grade, ranks and estimated earnings

**E-commerce & travel**

- [TikTok Shop Product Scraper](https://apify.com/tubetext/tiktok-shop-product-scraper) – US TikTok Shop prices, items sold, stock per SKU and shop stats
- [AliExpress Search Scraper](https://apify.com/tubetext/aliexpress-search-scraper) *(this tool)* – AliExpress search results by keyword: price, items sold, rating, shipping, badges
- [Google Hotels Scraper](https://apify.com/tubetext/google-hotels-scraper) – hotel prices for any destination and dates, per booking site and as a 90-day price calendar

### FAQ

**Does it open each product page?** No – AliExpress loads product pages in the browser through signed requests, so this Actor reads the search results, which already include price, sales, rating and badges. Store names and full specifications are not included.

**Why are some results sponsored?** AliExpress mixes ads into search results. They are flagged with `sponsored: true`; turn on *Skip sponsored products* to drop them.

**Can I search in other languages?** Yes – keywords in any language and script work (`瑜伽垫`, `коврик для йоги`, `Handyhülle`).

**Why did a keyword return `no_results`?** AliExpress found nothing real for it. When it has only a few matches, AliExpress pads the page with unrelated recommendations; those are filtered out, and a keyword with no real matches returns a single free `no_results` row.

**Why are so many prices so low?** Most prices in AliExpress search are one-time new-shopper welcome deals – in our test 43 of 60 results on a normal search, and 58 of 60 when sorted by lowest price. Turn on *Skip new-shopper deals* (`skipNewShopperDeals`) to drop them, or filter on `priceIsNewShopperDeal`. Some other promo prices aren't marked by AliExpress, so very low prices can still appear.

**What is `priceIsNewShopperDeal`?** `true` when the price shown is a one-time new-customer offer ("New shoppers save $14"). Regular buyers pay more, and AliExpress doesn't include the regular price in search results – filter these rows out if you compare prices.

**Is this legal?** The Actor only reads public search pages without logging in and collects no personal data. You are responsible for how you use the data and for complying with AliExpress's terms.

**Can I cap what a run costs?** Yes – set *Maximum cost per run* in the run options. The run stops cleanly when the next item would go over it: you are never charged more, and you get a clear "stopped at your limit" status message.

**What happens if a big run hits the time limit?** It stops cleanly shortly before the limit: everything finished so far is delivered, the run ends as succeeded, and the status message says how many items weren't started. Raise the run timeout, or run again with the inputs that were not started.

# Actor input Schema

## `keywords` (type: `array`):

One search per line, e.g. 'yoga mat', 'phone case', 'led strip lights'.

## `maxItemsPerKeyword` (type: `integer`):

AliExpress shows 60 products per page (up to 20 pages).

## `sortBy` (type: `string`):

Result order on AliExpress.

## `minPrice` (type: `integer`):

Optional, in the selected currency.

## `maxPrice` (type: `integer`):

Optional, in the selected currency.

## `shipTo` (type: `string`):

Prices, shipping and local warehouses depend on the destination.

## `currency` (type: `string`):

Currency for prices.

## `skipSponsored` (type: `boolean`):

Ads are mixed into AliExpress results (about 1 in 4). Turn on to keep organic results only.

## `skipNewShopperDeals` (type: `boolean`):

Many search prices are one-time welcome deals for new AliExpress customers ("New shoppers save…"), which regular buyers don't get. Turn on to leave those products out, e.g. for supplier price comparisons. Each row also has priceIsNewShopperDeal.

## `maxConcurrency` (type: `integer`):

How many keywords are searched at the same time.

## Actor input object example

```json
{
  "keywords": [
    "yoga mat"
  ],
  "maxItemsPerKeyword": 60,
  "sortBy": "best_match",
  "shipTo": "US",
  "currency": "USD",
  "skipSponsored": false,
  "skipNewShopperDeals": false,
  "maxConcurrency": 3
}
```

# Actor output Schema

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

No description

# 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 = {
    "keywords": [
        "yoga mat"
    ],
    "maxItemsPerKeyword": 60
};

// Run the Actor and wait for it to finish
const run = await client.actor("tubetext/aliexpress-search-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 = {
    "keywords": ["yoga mat"],
    "maxItemsPerKeyword": 60,
}

# Run the Actor and wait for it to finish
run = client.actor("tubetext/aliexpress-search-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 '{
  "keywords": [
    "yoga mat"
  ],
  "maxItemsPerKeyword": 60
}' |
apify call tubetext/aliexpress-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,tubetext/aliexpress-search-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/dkLQMAbM7TnaSJ7Bu/builds/G9hdsQNR45apjZwpC/openapi.json
