AliExpress Scraper - Products, Prices, Orders & Supplier Leads avatar

AliExpress Scraper - Products, Prices, Orders & Supplier Leads

Pricing

from $2.25 / 1,000 product scrapeds

Go to Apify Store
AliExpress Scraper - Products, Prices, Orders & Supplier Leads

AliExpress Scraper - Products, Prices, Orders & Supplier Leads

Scrape AliExpress products by keyword or URL: sale & original price, discount %, orders sold, rating, images, full SKU/variant matrix, live stock, shipping, specs, reviews & supplier leads. Choose currency & ship-to country, filter & monitor price drops.

Pricing

from $2.25 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

94

Total users

22

Monthly active users

3 days ago

Last modified

Share

AliExpress Scraper - Products, Prices, Orders, Reviews & Supplier Leads

Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Alibaba Group or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "AliExpress" is referenced only to describe the publicly available website this Actor collects data from.

Extract complete AliExpress product data - including the sale price without the one-time first-order deal, the first-order deal price shown to new shoppers, the sale-campaign price, original price and discount %, orders-sold counts, ratings, the full SKU/variant matrix with per-option price and live stock, shipping options, full specifications, buyer reviews, and the supplier/store profile. Pick your currency and ship-to country, filter, and run it on a schedule to track price drops and restocks.

No login, no cookies you have to manage, no API key - fast JSON extraction localized to your market.

Why this AliExpress scraper?

This Actor reads AliExpress's own search feed, product data, store listings and review feed, and ships a complete dataset:

DataThis Actor
Regular sale price + original price + discount %✅ in your currency
First-order (new shopper) deal price and saving, kept apart✅ newShopperPrice, newShopperSaving
Orders sold (real count, not "1000+")✅ numeric + text
Average rating + total reviews✅
Full SKU / variant matrix (price + stock per option)✅ with product details
Live total inventory✅ with product details
All images + product video✅
Shipping options (fee / ETA / carrier)✅ with product details, US delivery
Full specifications✅ with product details
Buyer reviews (text, country, photos, bought SKU) + star breakdown✅ opt-in
Supplier / store profile (level, years, country, top-rated)✅ opt-in
Whole store catalogues from a store link✅
Price-drop / restock monitoring✅

Use cases

  • Dropshipping & product research - find winning products by orders sold and rating, capture the price you will really pay, variants and supplier, and monitor price drops & restocks on a schedule so your store and margins stay in sync.
  • Repricing & price intelligence - track product prices and discounts across markets and currencies, without first-order promotions skewing the numbers.
  • Sourcing & supplier vetting - turn every product into a supplier lead with store level, years open, country and top-rated badge, scored 0-100 for quick shortlisting.
  • Catalog & content - pull full specs, images, video and the SKU matrix to build or enrich your own listings.
  • Review & sentiment mining - collect buyer reviews with rating, country and photos to gauge real product quality before you buy.

How to use

  1. Sign up for Apify - the free plan is enough to try this Actor.
  2. Open the AliExpress Scraper, enter search keywords (or paste product, search, category or store URLs), set your currency and ship-to country, and click Start.
  3. Watch results stream into the dataset table.
  4. Export as JSON, CSV, Excel, XML, or RSS - or pull results programmatically via the Apify API.

Input

{
"searchTerms": ["wireless earbuds"],
"sort": "orders",
"minPrice": 5,
"maxPrice": 50,
"fourStarPlus": true,
"shipToCountry": "US",
"currency": "USD",
"maxProducts": 100,
"includeProductDetails": true,
"includeReviews": true,
"maxReviewsPerProduct": 20,
"emitStoreLeads": true
}
  • searchTerms - keywords; each is scraped as its own product feed (~60 products per page). Several keywords share maxProducts equally, and one with fewer products leaves its share to the next.
  • startUrls - product pages (/item/<id>.html), search pages (/w/wholesale-<kw>.html, every filter in the link is kept, and the price and switch filters you set in the form are added where the link sets none), category pages (/category/<id>/<name>.html), store pages (/store/<id>, the store's whole catalogue) or short share links (a.aliexpress.com/_...).
  • productIds - AliExpress product IDs to fetch full detail for directly. A product ID or product URL always returns the full record (AliExpress's product data is its only source) and is billed as a product detail. An ID AliExpress does not have is named on the run card and not billed.
  • sort - default, orders (most sold), newest, priceAsc, priceDesc. AliExpress's search no longer offers a newest-first order, so a newest run gets its best-match order (monitor mode gives you only products new since your last run). The run card says so whenever AliExpress applied a different order.
  • minPrice / maxPrice / fourStarPlus / choiceOnly / freeShippingOnly - filters. Keyword searches and pasted search links send each one to AliExpress as its own search filter; category and store links are filtered on their rows only. Every delivered row is checked again on the values it carries.
  • shipToCountry / currency / language - localize prices, availability and text. The country takes a two-letter code or an English name (Germany, United Kingdom).
  • includeProductDetails (default false) - full SKU/variant matrix (price + stock per option), live inventory, review count, all images & video, shipping, specs, description URL and the supplier/store profile.
  • includeReviews (default false) - buyer reviews (rating, text, country, photos, bought SKU) plus the star breakdown on the product row (reviewStats); maxReviewsPerProduct caps them. reviewSort photo uses AliExpress's own photo filter (only reviews with photos); AliExpress's review feed has no newest, positive or critical order, so for newest, positive and negative the Actor reads up to 4 pages more than the cap needs and orders those reviews itself.
  • emitStoreLeads (default false) - one deduplicated supplier lead per store (type store) with level, years, country, top-rated badge and a 0-100 lead score.
  • monitorMode / monitorKey - emit only products that are new or whose price/stock changed since the last run. Each run watches the first maxProducts of each search, and an unchanged product is not billed. A product counts as new only when it was listed later than every product the monitor has checked on that search before (AliExpress's item numbers follow listing order): its search order reshuffles from hour to hour, so older listings that move into the watched part are recorded without billing. Stock is compared only between two readings of AliExpress's product data, so a product whose detail call AliExpress refused this time is never reported as out of stock or restocked, and a price is compared only with one read the same way. A large monitor in a quiet period stops checking after its first pages, and the run card says how many products it checked.

Importing a list of URLs from a file

Got the URLs already? You do not have to add them one at a time. Import URLs from a file takes one URL per line, two ways:

  1. Paste the list - open your .txt, select all, paste it into the box.
  2. Link the file - put a single link there instead and it is downloaded for you: a public .txt/.csv, a Google Sheets or Drive share link (converted to CSV export automatically), or an Apify key-value-store record.
{ "urlsFromFile": "https://example.com/my-urls.txt" }

Imported URLs are added to startUrls. Blank lines, Windows line endings, a UTF-8 BOM, # comments, surrounding quotes and extra CSV columns are all tolerated, and duplicates are only scraped once. A PDF, an Excel or Word file or an image is not read as a list, and a Google Sheet that is not shared publicly opens a sign-in page instead of the file: in both cases the run card says what it found and what to do (save the list as .csv or .txt, or share the Sheet as "Anyone with the link"). If the file cannot be read, the run says so on the run card instead of quietly returning nothing.

Regular prices and first-order deals

AliExpress shows every visitor who is not logged in the prices it offers new shoppers on their first order: on a typical search for a popular product, most of the top results carry a "New shoppers save $X" deal or a "free with any purchase" gift, often 60-90% below the price it shows without the deal. This Actor keeps the two apart:

  • salePrice is the price without the first-order deal: for a product shown with that deal, the price AliExpress shows it struck through (on the product page, the deal price plus AliExpress's own "New shoppers save" amount); otherwise the sale price shown. discountPercent compares it with originalPrice.
  • During a sale campaign (such as the 11.11 warm-up), AliExpress shows some visits a product's campaign price where other visits see the first-order deal against the list price, so the same product can come back at different prices in two runs minutes apart. Rows with product details carry campaignPrice (and variants[].campaignPrice) when AliExpress's product data holds one, and originalPrice is the steady list price to compare products on.
  • newShopperPrice and newShopperSaving hold the first-order deal, and isNewShopperDeal says whether the product had one (empty when the page did not show it). variants[].newShopperPrice does the same per option.

Price filters and monitor mode use salePrice, so a product does not pass a "max $5" filter or report a "price drop" only because of a one-time new-shopper deal. Monitor mode also ignores moves under 2% (AliExpress's currency conversion moves prices by a few cents between visits) and compares a visit shown the first-order deal with one shown without it on the list price only. AliExpress's own price sorts ("Price: low to high") rank products by the price it shows a new shopper, so the regular prices of a price-sorted run are not in strict order.

What AliExpress shows in each market

  • Search pages carry orders sold, rating, listing date, category and promo badges on every product. The Actor reads them through residential exits in your ship-to country; AliExpress sometimes serves an exit its basic card instead (title, image and price only), and such a page is asked for again on a fresh exit. If it stays basic, the run card says so.
  • AliExpress's product-detail data is made for US delivery: logged out, it answers for US delivery whatever ship-to country is set (tested with the country setting, the market cookie and exits in the country itself). So with another ship-to country, detail rows keep the search page's own prices for that country and leave the shipping block empty, and detailMarket shows the market the detail data was made for. Rating, review count, specs, variants, stock and the supplier profile are the same in every market.
  • The run card names what AliExpress applied when it differs from your input: a ship-to country, currency or sort order it did not use.

Output

One record per product (type: "product"), plus optional review records (type: "review") and supplier lead records (type: "store"):

{
"type": "product",
"productId": "3256808722668670",
"title": "Luxury Magnetic Matte Translucent Armor Shockproof Case For iPhone 11 12 13 14 15 16",
"url": "https://www.aliexpress.com/item/3256808722668670.html",
"salePrice": 6.59,
"originalPrice": 6.59,
"discountPercent": 0,
"currency": "USD",
"ordersCount": 152245,
"ordersText": "100K+ sold",
"rating": 4.9,
"isChoice": true,
"categoryId": "202192403,202228401,380230",
"skuId": "12000047159359797",
"reviewsCount": 15638,
"availableInventory": 6430,
"images": ["https://ae-pic-a1.aliexpress-media.com/kf/S....jpg"],
"video": { "videoId": "5000493944477", "url": "https://video.aliexpress-media.com/.../5000493944477.mp4" },
"variantOptions": [{ "name": "Color", "values": ["Wine Red", "Dark Green"] }],
"variants": [
{ "skuId": "12000047159359808", "option": "Color:Wine Red", "available": true, "stock": 988, "salePrice": 6.59, "originalPrice": 6.59, "newShopperPrice": 1.09 }
],
"specs": [{ "name": "Compatible Brand", "value": "Apple iPhones" }],
"shipping": { "shipFrom": "China", "shipTo": "US", "fee": "Free", "deliveryEstimate": "Nov. 04", "deliveryDaysMax": 13 },
"storeId": "1103576287",
"storeName": "Stone's Store",
"storeUrl": "https://www.aliexpress.com/store/1103576287",
"sellerLevel": "12-s",
"store": { "country": "China", "openedYears": 2, "topRated": false, "logoUrl": "https://ae-pic-a1.aliexpress-media.com/kf/S....png", "positiveRate": 100, "feedbackCount": 10 },
"searchTerm": "phone case",
"scrapedAt": "2026-10-29T01:02:58.412Z",
"imageUrls": ["https://ae-pic-a1.aliexpress-media.com/kf/S....jpg"],
"listedAt": "2025-04-25",
"promoTags": ["Fastest delivery in 6 days", "Magnetic"],
"isAd": false,
"categoryPathIds": "202192403/202228401/380230",
"salesSummary": "This seller: 10,000+ sales | Total sales: 100K+",
"soldCount": 100000,
"returnPolicy": "Free returns within 90 days",
"deliveryGuarantee": "Fast delivery",
"coupons": ["$2.00 off on $15.00"],
"defaultVariant": "Color:Wine Red",
"itemId": "1005008908983422",
"isNewShopperDeal": true,
"newShopperPrice": 1.09,
"newShopperSaving": 5.5,
"promoTagsText": "Fastest delivery in 6 days | Magnetic",
"deliveryDaysMin": 6,
"deliveryDaysMax": 11,
"detailMarket": "US",
"soldByStore": "Stone's Store"
}

Every search hit also carries all of its card images (imageUrls), the date it was listed (listedAt), the promo badges AliExpress shows on it (promoTags, and promoTagsText as one line), whether it is a sponsored placement (isAd), AliExpress's item id (itemId: in the US, search cards link a multi-seller listing id starting 3256, and itemId is the 1005... listing behind it), the delivery window the card shows (deliveryDaysMin, deliveryDaysMax) and a free-shipping badge when the card has one (freeShipping). With product details on, each product adds the category path and root category, the seller id, the platform-wide sales summary and soldCount, the per-shopper purchase limit, the return policy, the delivery guarantee with its refund conditions, the coupons on offer, downloadable guides and documents, the default variant, and per-variant images inside variants[]; supplier leads gain the store logo, positive-feedback rate, feedback count and the store card's own stats.

Review rows carry the review text (translated and original), stars, buyer country, photos, the bought option, helpful and unhelpful votes, the review language and its date (reviewDate as shown, reviewedAt as YYYY-MM-DD). On a multi-seller listing AliExpress shows reviews from various sellers of similar items: those rows carry fromSimilarItems: true, and a review shared by two listings in one run is delivered and billed once.

The dataset views show one record type's columns each: Products, Reviews and Supplier leads. When a run's supplier leads follow more than 50 product and review rows, the run card says on which page of the Console's Supplier leads view they start; through the API, read a view with clean=true to get only that view's rows.

When a field is empty

  • ordersCount, ordersText, listedAt, categoryId, skuId and promoTags come from the search card: empty on product-ID rows and on the rare basic card (see above). Product-ID rows carry salesSummary and soldCount instead.
  • video, coupons, documents and variants are empty when the product has none; rating is empty when a product has no reviews yet (never 0 stars).
  • shipping is empty outside the US (AliExpress's detail data is US delivery).
  • spuId (AliExpress's catalogue id for a product family) is on the search cards that carry one, about two in three for some searches and none for others; store-list rows never carry it.
  • isChoice and isNewShopperDeal are empty when the page does not show them (a basic card, a product-ID row for isChoice), and totalOrdersInRun on a supplier lead is empty when its products came without order counts.

How much does it cost to scrape AliExpress?

This Actor uses Apify's pay-per-event pricing: you pay for the results it delivers, with no monthly rental. From 12 November 2026 (20:00 UTC), each run also has Apify's start fee of $0.005, charged when the run starts: once for a run of up to 1 GB of memory (the default is 512 MB) and once more for each further GB. So from then on a monitor run that finds nothing new costs $0.005. The events it can charge are:

  • Product - One AliExpress product from a search, a category, a store or a link: title, the sale price without the first-order deal, original price and discount, currency, orders sold, rating, store and product link.
  • Detailed product - A product with its full detail, billed instead of the product price on that row, never on top of it: description, specs, every variant with its own price and stock, shipping options and seller details.
  • Review - One buyer review: rating, text, country, date, helpful votes and review photos when present.
  • Supplier lead - One deduplicated AliExpress store (supplier) lead: store name, link, ratings and item counts gathered from the products found.
  • Actor Start (from 12 November 2026) - Apify's fee each time a run starts: $0.005 at the default memory.

A product row is billed once, as either a product or a detailed product (with details on, the detailed product price replaces the product price). The current price of each event is shown on the Pricing tab of this page. Set a maximum total charge on the run if you want a hard cap on spend: each kind of row stops on its own budget, so a cap too small for another detailed product can still deliver the cheaper review rows that fit. Use the input limits to control how much the Actor fetches.

A run that keeps reading pages without finding anything it can deliver stops early and says so on its run card: a search whose pages hold almost nothing that passes your filters stops after a few pages (and a further search in the same run does not start), and when AliExpress refuses most product calls in a run, the remaining search products come as plain rows at the product price. Narrow the search term or loosen the filters to reach more matching products.

Automate & schedule

Run this Actor on autopilot and pull results into your own stack:

  • Apify API - start runs, fetch datasets, and manage schedules over REST.
  • apify-client for JavaScript and apify-client for Python - official SDKs.
  • Schedules - run it hourly/daily to track price drops, restocks and new products in a niche; perfect for dropshipping pipelines and repricing.
  • Webhooks - trigger downstream actions (import to your store, Slack price-drop alert, sheet update) the moment a run finishes.
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/aliexpress-scraper').call({
searchTerms: ['phone case'],
sort: 'orders',
shipToCountry: 'US',
currency: 'USD',
maxProducts: 100,
includeProductDetails: true,
emitStoreLeads: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} products & supplier leads`);

Integrate with any app

Connect the dataset to 5,000+ apps - no code required:

  • Make - multi-step automation scenarios.
  • Zapier - push price drops or new products straight into your store or sheet.
  • Slack - get notified when a monitored product drops in price or restocks.
  • Google Drive / Sheets - auto-export every run to a spreadsheet.
  • Airbyte - pipe results into your data warehouse.
  • GitHub - trigger runs from commits or releases.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this Actor from Claude, ChatGPT, or any agent framework through the Apify MCP server - ask your assistant to "find the best-selling wireless earbuds under $15 on AliExpress with their suppliers" and let it run this scraper for you.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready: AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402: an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server, with no account and no API key.
  • Skyfire: agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

More scrapers from scrapesage

Build a complete e-commerce, sourcing & price-intelligence stack:

  • eBay Scraper - active listings on 10 eBay marketplaces, prices, item details and seller leads.
  • TradeIndia Scraper - India B2B suppliers, products and contact leads.
  • ImportYeti Scraper - supplier/importer shipment records from US customs data.
  • Shopify Store Scraper - products, prices, inventory and merchant leads from any Shopify store.
  • Poshmark Scraper - fashion resale listings, sold comps and seller leads.
  • Reverb Scraper - musical-instrument marketplace listings, price guide and seller leads.
  • Steam Scraper - game listings, prices, reviews and publisher leads.

Tips

  • Find winners fast: sort by orders and turn on fourStarPlus to surface proven, well-rated products.
  • Localize correctly: set shipToCountry and currency together - a US shopper and a German shopper see different prices. The Actor sets AliExpress's own ship-to and currency on every request and reads back what AliExpress applied: the run card says so if a page came back for another country or currency.
  • Plan with the right price: salePrice is the price without the one-time first-order deal (newShopperPrice); during sale campaigns look at campaignPrice, and use originalPrice for a steady list price.
  • Cost control: leave includeProductDetails/includeReviews off for a fast, cheap price/orders sweep; turn them on only when you need the full SKU matrix, specs or reviews. Supplier leads are deduplicated per store.
  • Recurring monitoring: combine Schedules with monitorMode to get only new products and price-drop/restock changes - ideal for repricing and dropshipping alerts.
  • Proxies: keep the default. The Actor reads search pages through residential proxies (AliExpress shows datacenter visitors its basic search cards without orders or ratings) and asks for product, review and store data through Apify datacenter proxies first, switching to residential when AliExpress refuses them.

FAQ

How do I scrape AliExpress products for a keyword? Put the keyword in searchTerms (e.g. led strip). Combine with sort, price filters and fourStarPlus to narrow it down, or paste a search, category, product or store URL into startUrls.

Why does the sale price differ from what I see on AliExpress? Logged out, AliExpress shows you its first-order deal for new shoppers. This Actor's salePrice is the price without that deal, and the deal you saw is in newShopperPrice; during a sale campaign another visit may be shown the campaign price (campaignPrice on rows with details). See "Regular prices and first-order deals" above.

Does it work without the AliExpress API? Yes. No developer key or affiliate account is needed - the Actor reads AliExpress's own public search feed and product data, localized to your chosen market.

Can I get prices in my currency? Yes - set currency (e.g. EUR, GBP) and shipToCountry. Search prices are the ones AliExpress shows for that market.

Can I scrape a whole store? Yes - paste the store link (https://www.aliexpress.com/store/<id>) into startUrls. The Actor lists the store's catalogue from AliExpress's own store listing, up to maxProducts.

Can I export to Google Sheets, CSV, or Excel? Yes - one click in the dataset view, or automatically on every run via the Google Drive integration.

How do I track price drops automatically? Create a Schedule (e.g. daily) with monitorMode on - each run emits only new products and items whose price or stock changed, each tagged with a changeType (price_drop, price_rise, restocked, out_of_stock, new).

Can I get the supplier's email or phone? No - AliExpress does not publish seller emails or phone numbers; contact is handled through the platform. The supplier lead gives you the store URL, level, years open, country, top-rated badge and a lead score for vetting and outreach via the store page.

A field is empty - why? See "When a field is empty" above: some fields come only from the search card, some products have no video, variants or reviews, and shipping is US delivery only.

Is scraping AliExpress legal? This Actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws (e.g. GDPR/CCPA for personal data) and AliExpress's terms.

Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Alibaba Group or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

"AliExpress" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official AliExpress product, is not authorised or certified by Alibaba Group, and does not distribute AliExpress software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.

Need help?

Open an issue on the Actor's Issues tab, or visit the Apify help center. Feature requests are welcome - this Actor is actively maintained.