1688 Sourcing Profit Analyzer — Landed Cost, Margin & ROI avatar

1688 Sourcing Profit Analyzer — Landed Cost, Margin & ROI

Pricing

from $2.00 / 1,000 results

Go to Apify Store
1688 Sourcing Profit Analyzer — Landed Cost, Margin & ROI

1688 Sourcing Profit Analyzer — Landed Cost, Margin & ROI

Search 1688.com wholesale products and calculate landed cost, unit profit, margin, ROI, break-even price and maximum sourcing cost. Combine live product, demand and supplier signals with your exchange rate, freight, duty, marketplace fee and target-margin assumptions.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

5 days ago

Last modified

Security

Limited permissions

Share

📦 1688 Scraper & Sourcing Profit Analyzer — Landed Cost, Margin, ROI

Turn raw 1688.com wholesale listings into a margin-aware sourcing shortlist. This 1688 scraper searches the Chinese wholesale marketplace, pulls live product, demand and supplier signals, and layers on your real-world cost assumptions to calculate landed cost, unit profit, net margin, ROI, break-even price, maximum sourcing price, a 0–100 sourcing score and machine-readable risk flags — no login, no coding, no spreadsheet formulas. When you scrape 1688 with this tool you get the listing and the business case in one row.

Export to JSON, CSV, Excel, or API.

Built for Amazon FBA and private-label sellers, Shopify and dropshipping researchers, wholesale importers, sourcing agents, and procurement teams who need to know — fast — which 1688 products can actually clear their target margin.


🔎 Why scrape 1688?

1688.com is Alibaba's domestic Chinese wholesale marketplace and the real source behind a huge share of products resold on Amazon, eBay, Shopify, Etsy and local marketplaces worldwide. Prices on 1688 are typically far lower than on Alibaba's international site, which makes it the first place serious sourcers and importers look for factory-direct pricing, minimum order quantities and supplier signals.

The problem is that 1688 is built for the Chinese domestic market: the interface is in Chinese, prices are in CNY, and the demand and supplier information is scattered across search cards. Manually copying listings, converting currency, estimating freight and duty, subtracting marketplace fees and working out whether a product actually leaves you a profit is slow, error-prone and impossible to do at scale across dozens of product ideas.

This 1688 scraper removes that friction. It collects the listings for you and runs every product through one consistent landed-cost and profit model, so you can compare hundreds of wholesale offers on the same financial footing in a single run. Every row carries the raw 1688 data and the derived economics, so a buyer can sort a whole category by modeled margin or ROI in seconds.

Common reasons people scrape 1688:

  • Product research — find cheap factory-direct products and instantly see which ones can support a target retail price and margin.
  • Landed-cost modeling — convert CNY prices to your currency and add freight, duty, marketplace fees and other per-unit costs automatically.
  • Supplier screening — capture supplier location, years active, factory and verification badges, sales volume and repurchase rate.
  • Competitor and price monitoring — track displayed wholesale price ranges across keywords, categories and sort orders over time.
  • Dropshipping and FBA sourcing — shortlist products with healthy modeled ROI before committing to samples or inventory.
  • Procurement reporting — export consistent, structured sourcing data for client decks, dashboards and internal review.
  • Catalog building — bulk-collect product titles, images, offer IDs and direct 1688 URLs for a buying list.

✨ What this 1688 scraper does

  • ✅ Keyword search in English or Chinese — pass one or many search terms; Chinese keywords usually give the best category precision.
  • ✅ Consumer or industrial marketplace — switch between consumer wholesale (pcmarket) and industrial procurement (pcindustry) search.
  • ✅ Automatic multi-page pagination — walks through 1688 search result pages and returns hundreds of de-duplicated products, controlled by maxItems.
  • ✅ Live product data — captures offerId, title, displayed priceCny, currency, imageUrl, direct product url, the result position, searchKeyword and searchPage.
  • ✅ Demand & supplier signals — sales (recent sales volume), returnRatePercent (repurchase rate), supplierLocation, supplierYears, isFactory, isVerified and the raw tags shown on each card (present when 1688 displays them).
  • ✅ Full landed-cost model — productCost (CNY → your currency), freightPerUnit, dutyAndTax, otherCostPerUnit and the combined landedCost.
  • ✅ Profitability math — marketplaceFees, totalCostPerUnit, unitProfit, netMarginPercent, roiPercent and breakEvenSellingPrice.
  • ✅ Buying target — maximumSourcePriceCny, the highest displayed source price that still supports your desired margin.
  • ✅ Decision support — a 0–100 sourcingScore for triage plus clear riskFlags such as NEGATIVE_MODELED_PROFIT or ABOVE_MAXIMUM_SOURCE_PRICE.
  • ✅ Price & MOQ filters — optional priceMin, priceMax and minOrderQuantity pushed into the 1688 search.
  • ✅ Fast & reliable — lightweight HTTP collection (no heavy browser) with China residential proxy rotation, automatic session retry on anti-bot challenges, and de-duplication across pages and keywords.
  • ✅ Export anywhere — JSON, CSV, Excel, XML or RSS, plus the Apify API and client libraries.

🎯 Use cases

  • Amazon FBA & private label — compare product ideas on one cost model, spot margin headroom, and drop offers priced above your maximum viable sourcing cost.
  • Shopify & dropshipping — test a planned retail price against source cost, freight, payment and marketplace fees and target margin before you list a product.
  • Wholesale importing — build a purchasing shortlist with supplier age, location, demand and repurchase signals beside landed-cost estimates.
  • Sourcing & buying agencies — export consistent opportunity data for client reports, supplier screening and review workflows.
  • Procurement teams — benchmark factory-direct pricing and MOQ for industrial and consumer products in one place.
  • Market & competitor research — track displayed wholesale price ranges across keywords and compare consumer with industrial listings.

📥 Input

Provide at least one product keyword and your cost assumptions. Everything else is optional and has a sensible default.

FieldTypeDescription
keywordsarrayRequired. Search terms in English or Chinese (e.g. ["wireless earbuds", "蓝牙耳机"]).
maxItemsintegerGlobal number of unique products to save across all keywords. Default 100, max 5000.
sortBystringHow 1688 ranks results: relevance, priceAsc or priceDesc. Default relevance.
priceMinnumberOptional lower source-price filter in CNY.
priceMaxnumberOptional upper source-price filter in CNY.
minOrderQuantityintegerOptional MOQ filter sent to 1688 search.
searchTypestringpcmarket (consumer wholesale) or pcindustry (industrial products).
targetSellingPricenumberPlanned selling price per unit in your target currency.
cnyExchangeRatenumberValue of CNY 1 in your target currency (e.g. 0.14 for USD).
freightPerUnitnumberInternational freight and forwarding cost per unit.
dutyPercentnumberDuty and import tax applied to product cost plus freight.
marketplaceFeePercentnumberMarketplace and payment fees as a percent of selling price.
otherCostPerUnitnumberPackaging, inspection, labeling, domestic delivery and other unit costs.
targetMarginPercentnumberDesired net margin used to calculate the maximum sourcing price.
proxyConfigurationobjectProxy settings. 1688 search requires a China residential session (prefilled).

Example input

{
"keywords": ["phone case", "手机壳", "wireless earbuds", "蓝牙耳机"],
"maxItems": 400,
"sortBy": "relevance",
"searchType": "pcmarket",
"targetSellingPrice": 29.99,
"cnyExchangeRate": 0.14,
"freightPerUnit": 2.5,
"dutyPercent": 5,
"marketplaceFeePercent": 15,
"otherCostPerUnit": 1,
"targetMarginPercent": 25,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "CN" }
}

All monetary outputs use the same target currency you set through cnyExchangeRate. For USD, enter the current USD value of CNY 1 and keep selling price, freight and other costs in USD.

📤 Output

Each dataset item is one analyzed 1688 product — the scraped listing plus the full profit model. This example is a real record from a live verification run:

{
"offerId": "854938564474",
"searchKeyword": "phone case",
"searchPage": 1,
"position": 1,
"title": "来图定制适用安卓苹果手机保护套卡通可爱软壳全包防摔硅胶手机壳",
"priceCny": 1.45,
"currency": "CNY",
"sales": 12,
"returnRatePercent": 0,
"supplierLocation": "东莞市",
"isFactory": true,
"isVerified": false,
"tags": ["深度验厂"],
"imageUrl": "https://cbu01.alicdn.com/img/ibank/O1CN01rs5LJF1uX7cpRqz5V_!!948876046-0-cib.jpg_270x270xzq60.jpg",
"url": "https://detail.1688.com/offer/854938564474.html",
"targetSellingPrice": 29.99,
"productCost": 0.2,
"freightPerUnit": 2.5,
"dutyAndTax": 0.14,
"marketplaceFees": 4.5,
"otherCostPerUnit": 1,
"landedCost": 3.84,
"totalCostPerUnit": 8.34,
"unitProfit": 21.65,
"netMarginPercent": 72.19,
"roiPercent": 259.59,
"breakEvenSellingPrice": 4.52,
"maximumSourcePriceCny": 97.75,
"sourcingScore": 89.5,
"riskFlags": ["LOW_REPURCHASE_RATE"],
"assumptions": {
"targetCurrencyPerCny": 0.14,
"freightPerUnit": 2.5,
"dutyPercent": 5,
"marketplaceFeePercent": 15,
"otherCostPerUnit": 1,
"targetMarginPercent": 25
},
"scrapedAt": "2026-11-02T00:57:03.843Z"
}

Field reference

FieldDescription
offerId1688 offer ID (unique product identifier and natural dedup key).
searchKeywordThe keyword that returned this product.
searchPage, positionResult page and ranked position within the search.
titleProduct title (original Chinese preserved when provided).
priceCnyDisplayed source price in CNY.
currencySource currency, always CNY.
salesRecent sales signal (present when displayed).
returnRatePercentRepurchase rate percent (present when displayed).
supplierLocationSupplier city/region (present when displayed).
supplierYearsYears the supplier has been active (present when displayed).
isFactory, isVerifiedWhether factory / verification badges appear on the card.
tagsRaw badge/label text shown on the listing card (e.g. 深度验厂, 48小时发货).
imageUrlProduct image URL (Alibaba CDN).
productCostpriceCny converted to your target currency.
freightPerUnit, dutyAndTax, otherCostPerUnitYour per-unit cost inputs and computed duty/tax.
landedCostProduct cost + freight + duty/tax + other costs.
marketplaceFeesSelling price × marketplace fee rate.
totalCostPerUnitLanded cost + marketplace fees.
unitProfitTarget selling price − total cost per unit.
netMarginPercentUnit profit ÷ selling price.
roiPercentUnit profit ÷ total cost per unit.
breakEvenSellingPriceSelling price at which unit profit is zero.
maximumSourcePriceCnyHighest source price (CNY) that still hits your target margin.
sourcingScore0–100 triage score combining margin, demand and supplier signals.
riskFlagsMachine-readable warnings (see table below).
assumptionsThe exact cost inputs used for this record (audit trail).
urlDirect link to the 1688 offer page.
scrapedAtISO timestamp of collection.

Field coverage (from a live run): identity and calculated fields — offerId, title, priceCny, url, imageUrl, landedCost, unitProfit, netMarginPercent, roiPercent, sourcingScore, assumptions — populate at 100%. Supplier/demand fields are present when 1688 shows them on the card: sales, returnRatePercent and supplierLocation on virtually every card, supplierYears on a majority, and tags/badge flags only when the listing carries them. The scraper never invents missing supplier facts — it leaves the field empty and raises a riskFlag instead.

The dataset ships with two ready-made views: Sourcing opportunities (a compact decision table) and Full sourcing data (every field, assumption and calculation).

🔁 Pagination & scale

The 1688 scraper paginates automatically. For every keyword it walks the search result pages in order (beginPage=1,2,3…), collecting roughly 16–19 products per page and de-duplicating by offerId across all pages and keywords. It keeps going until it reaches your maxItems target, the keyword's results are exhausted (a nearly-empty page, or two pages in a row that add no new unique offers), or it passes the total match count 1688 reports for that search — then stops cleanly. With several focused keywords and a high maxItems, a single run returns hundreds of unique analyzed products.

maxItems is the single global cap (default 100, up to 5000). 1688 serves search behind a China-residential anti-bot layer that occasionally challenges a session; the scraper rotates to a fresh China-residential session and retries up to six times per page, and treats a blocked page as "try the next page" rather than "end of results", so an unlucky batch of sessions recovers instead of ending the run early. To go broad, use several focused keyword variants rather than one giant generic search.

⚙️ How to use

  1. Open the actor on the Apify Console and add one or more product keywords.
  2. Enter your targetSellingPrice and cost assumptions (cnyExchangeRate, freightPerUnit, dutyPercent, marketplaceFeePercent, otherCostPerUnit, targetMarginPercent).
  3. Set maxItems and optional filters (sortBy, priceMin, priceMax, minOrderQuantity, searchType).
  4. Click Start, then open the Dataset tab when the run finishes.
  5. Export as JSON, CSV, Excel, XML or RSS, or pull results via the Apify API.
  6. Automate it: run on a schedule, trigger via API, or pipe the dataset into Make, Zapier, Google Sheets, a webhook, a database or your own app.

💡 Tips

  • Use both English and Chinese keywords for the same product to widen and sharpen coverage (e.g. "phone case" and "手机壳"). Chinese terms often return more results and more precise categories.
  • Keep your cnyExchangeRate, freightPerUnit, dutyPercent and marketplaceFeePercent current — they drive every downstream number.
  • Sort by priceAsc to surface the cheapest factory-direct offers, then let the sourcingScore and riskFlags filter out weak suppliers.
  • Watch the ABOVE_MAXIMUM_SOURCE_PRICE flag: it marks offers whose CNY price is too high to ever hit your target margin.
  • Switch searchType to pcindustry for industrial, machinery and bulk procurement categories.
  • Start with the prefilled 20-result example, then scale maxItems up and add more keyword variants.

❓ FAQ

Is scraping 1688 legal? The actor collects publicly visible search-listing data. Use it in line with applicable laws, 1688's terms and Apify's policies, avoid collecting personal data, and verify commercial, customs, tax and supplier details independently. The outputs are estimates for research, not financial, legal, tax or customs advice.

How many products can it return and how fast? As many as your maxItems allows, up to 5000, paginating automatically across search pages and keywords. It uses lightweight HTTP collection rather than a full browser; a broad multi-keyword search returns hundreds of unique analyzed products, and the default prefill is capped at 20 for a quick first run. Runtime scales with how many pages and sessions are needed to clear the anti-bot layer.

Do I need proxies or a login? No login. 1688 search requires a China residential session, which is prefilled in proxyConfiguration. The scraper rotates sessions and retries automatically when it hits an anti-bot challenge.

What export formats are supported? JSON, CSV, Excel, XML and RSS from the Apify dataset, plus the Apify API and JavaScript/Python clients.

Is there a 1688 API? 1688 has no convenient public product API for international sourcing, which is why this actor exists. You consume the data through the standard Apify API and dataset endpoints instead.

Can I search in English, or do I need Chinese? Both work. English keywords are convenient; Chinese keywords usually give better category precision. Pass several variants in the keywords array.

How fresh is the data? Every item is scraped live at run time and stamped with scrapedAt. Schedule the actor to keep a dataset continuously up to date.

Can I filter by price or minimum order quantity? Yes — set priceMin, priceMax and minOrderQuantity, and choose relevance, priceAsc or priceDesc with sortBy.

Why are supplierYears, tags or returnRatePercent sometimes empty? 1688 doesn't display these on every card. When a signal is missing the scraper leaves it empty and raises the relevant risk flag (e.g. MISSING_DEMAND_SIGNAL or NO_VISIBLE_VERIFICATION) rather than guessing.

Is the displayed price the final price? Not always. A card price can be a starting or promotional price; final price depends on SKU, quantity tier, customization and shipping. Confirm specifications, MOQ, tier pricing and the final quote directly with the supplier before buying.

🔧 How the calculations work

Product cost = 1688 price CNY × target currency per CNY
Duty and tax = (product cost + freight) × duty rate
Landed cost = product cost + freight + duty/tax + other unit costs
Marketplace fees = target selling price × marketplace fee rate
Total unit cost = landed cost + marketplace fees
Unit profit = target selling price − total unit cost
Net margin = unit profit ÷ target selling price
ROI = unit profit ÷ total unit cost
Break-even price = landed cost ÷ (1 − marketplace fee rate)

maximumSourcePriceCny solves the model in reverse — the highest displayed source price that still supports your chosen targetMarginPercent. The sourcingScore is a 0–100 sorting aid that blends modeled margin with visible demand, repurchase, supplier-age, factory and verification signals; it is for triage, not a guarantee of supplier quality.

Risk flags

FlagMeaning
MISSING_SOURCE_PRICEA usable displayed price was unavailable.
MISSING_DEMAND_SIGNALNo sales signal was visible.
LOW_RECENT_SALESVisible sales signal was below 10.
LOW_REPURCHASE_RATEVisible repurchase rate was below 10%.
NEW_SUPPLIERVisible supplier history was below two years.
NO_VISIBLE_VERIFICATIONNo factory or verification badge appeared.
NEGATIVE_MODELED_PROFITYour assumptions produce a unit loss.
ABOVE_MAXIMUM_SOURCE_PRICESource price exceeds your target-margin ceiling.

Building a cross-marketplace sourcing and supplier pipeline? Pair this 1688 scraper with other B2B suppliers scrapers from the same author:


From a 1688 wholesale search to a margin-aware sourcing shortlist — in one run. ▶️ Hit Start and scrape 1688 now.