Skip to main content

Best e-commerce scrapers on Apify

:::tip Scraping Amazon specifically? This page is the multi-retailer roundup. For Amazon on its own, the best Amazon scrapers guide maps product detail, ASIN batches, search results, reviews, bestsellers and ad placements to a different Actor each, with per-1,000 costs. :::

Pick the Actor by retailer, not by hype. Amazon needs Buy Box logic and residential proxies; Shopify is a JSON endpoint away; Walmart punishes datacenter IPs; eBay exposes auction mechanics you can't get from a generic scraper. The Actors below are the ones I actually schedule on Apify for weekly price and catalog pulls. This page covers e-commerce specifically; for other verticals, browse the full best Apify Actors list by category.

Quick Answer

For a single marketplace, use the dedicated Actor: you get richer fields (ASIN, Buy Box, usItemId, variantList). For a mixed SKU map spanning 3+ retailers, the E-commerce Scraping Tool trades some field depth for one input schema.

What changed — 2026-09-09

Two pricing labels were wrong and are now fixed: the Amazon Product and Amazon Reviews Actors are pay-per-event, not flat per-result/per-review pricing. The Shopify Scraper switched from its $5/month plan to pay-per-event today, so its row now reflects the new rate. The eBay Actor's own Store listing now flags a newer replacement, and Apify retires rental (flat monthly) pricing platform-wide on October 1, 2026. An unsourced Walmart cost-per-PDP estimate was removed — Apify publishes no such conversion.

Browse the full category: E-commerce Actors →

Comparison table​

ActorPlatformPricingTypical fieldsBest for
Amazon Product ScraperAmazon (all locales)Pay-per-event — $5 / 1k results (Free), $4 / 1k (Starter), $3 / 1k (Business)ASIN, price, listPrice, variants, Buy Box, starsBreakdown, shippingCatalog + dynamic pricing
Amazon Reviews ScraperAmazon reviewsPay-per-event — $6 / 1k reviews (Free), $5 / 1k (Starter), $3 / 1k (Business)Stars, text, verified flag, date, images, reactionsVOC, defect detection
E-commerce Scraping ToolAmazon, Walmart, eBay, Alibaba, Etsy, regionalPay-per-eventName, price+currency, SKU/MPN/GTIN/EAN/UPC, stock, ratingCross-retailer basket
eBay Items ScrapereBay$50 / month + usage (rental pricing retires Oct 1, 2026)Price, wasPrice, seller, condition, auction/BINResale, arbitrage
Walmart Product Detail Scraperwalmart.com/.ca/.com.mxFree Actor — platform usage only ($0.20/CU on Free & Starter)usItemId, priceInfo, variantList, sellerId, availabilityWalmart PDP ingestion
Shopify ScraperAny Shopify storefrontPay-per-event — from $2 / 1k productsTitle, description, price, SKU, variants, stock, currency-normalizedDTC competitor tracking
Etsy ScraperEtsy$30 / month + usage (rental pricing retires Oct 1, 2026)Listing, variation prices, shop, ratingHandmade / long-tail

User counts and ratings drift, so open each listing before committing to a schedule.

Cost per 1,000 products (rule of thumb)​

StackPricing model~$/1k products
Amazon (junglee)pay-per-event (per result + surcharges)$5 / 1k on Free, $4 / 1k on Starter (Bronze), $3.50 / 1k on Scale (Silver), $3 / 1k on Business (Gold) — plus surcharge events
Amazon Reviews (junglee)pay-per-event (per review + date-filter surcharge)$6 / 1k reviews on Free, $5 / 1k on Starter (Bronze), $4 / 1k on Scale (Silver), $3 / 1k on Business (Gold) (≠ 1k products)
Multi-site (apify/e-commerce)pay-per-eventvaries by retailer; Amazon/Walmart are pricier than regional stores
Shopify (autofacts)pay-per-event (per product + optional surcharges)$2.50 / 1k products on Free, down to $2 / 1k on Gold+; no monthly base any more
Walmart (e-commerce)pay-per-usageplatform usage only — $0.20/CU on Free and Starter; run a short test to get your own per-PDP rate

Shopify is the outlier on the cheap side because the data is literally a public JSON endpoint. Amazon and Walmart are the expensive end because you're paying for proxies and browser time, not just parsing.

The Amazon product Actor also charges per offer ($0.0025 on Free), per seller ($0.0025 on Free), and per delivery location ($0.06 on Free, per result) when you request those fields — so a run scoped to ZIP- or country-level pricing costs well above the headline per-result rate. The reviews Actor bills date filtering as a separate event ($0.0013/review on Free, $0.001 on Starter). Its pricing record also sets a $0.50 floor on the maximum-cost-per-run cap you may configure, which is not a minimum charge: a 20-review pilot still bills 20 x $0.005 = $0.10 on Starter. You simply cannot set that run's spend limit below $0.50. Shopify's extras — collection ($0.0008), recommended product ($0.001), and real inventory ($0.0012) — are off by default, and every run also carries a $0.00005 Actor-start fee charged once per GB of allocated memory (minimum one charge).

Which Actor for which job​

Amazon: use the dedicated stack, not the generic one​

junglee/Amazon-crawler returns the fields an Amazon operator actually cares about: asin, price.value, listPrice, priceVariants, starsBreakdown, seller, shipping. The multi-site tool will give you price and rating, but it won't give you the Buy Box seller or variant-level pricing that drives repricing logic. Pair with junglee/amazon-reviews-scraper when you need review text; the product Actor omits review bodies to keep runs fast. If you haven't run either yet, our step-by-step Amazon scraping guide covers setup and input configuration in more depth than fits here.

Residential proxy is not optional on Amazon. Datacenter IPs increasingly return listings without prices or with the wrong marketplace currency. The junglee Actor auto-picks proxy country from the domain; override apifyProxyCountry only if you're deliberately geo-testing.

eBay: auction state matters​

Generic scrapers flatten eBay listings into "price." That's wrong for auctions: you need price, wasPrice, bid count, and BIN flag separately. dtrungtin/ebay-items-scraper surfaces those. It's a subscription Actor ($50/mo flat + usage), so it only pencils out above a few thousand listings/month; for smaller jobs, the multi-site tool is cheaper even with shallower fields.

Two caveats before you commit to it. First, the listing's own Store title now reads "eBay Scraper => Switch to 'eBay Search Scraper' (per results)" — Apify itself is steering users toward a newer, per-result Actor, so check that one before signing up for the rental. Second, Apify is retiring flat-rate rental pricing across the whole platform on October 1, 2026 and migrating remaining rental Actors to pay-per-usage, so this $50/month price has a fixed shelf life regardless of which Actor you pick.

Walmart: proxy quality is the whole game​

Walmart's bot defense is more aggressive than Amazon's on datacenter ranges. e-commerce/walmart-product-detail-scraper is maintained by Apify's internal team and bundles the right proxy config. The output has priceInfo.price, priceInfo.wasPrice, variantList[] with per-variant availabilityStatus, sellerId, and usItemId (Walmart's ASIN equivalent). For search-listing ingestion, pair with e-commerce/walmart-fast-product-scraper.

Shopify: it's a JSON endpoint, so stop overpaying​

Every Shopify store exposes /products.json. autofacts/shopify wraps that with pagination, currency normalization, and a monitoring mode. You don't need a headless browser here; runs are fast and cheap. Shopify's own docs confirm the endpoint paginates at 250 products per page; if you're seeing a partial catalog on a large store, don't assume a hard cutoff — pass explicit collection URLs or filter by vendor/tag instead of relying on page-number pagination alone.

Etsy: handmade = variation prices​

Etsy listings routinely have 10+ variants with different prices. epctex/etsy-scraper exposes includeVariationPrices: turn it on if you're benchmarking or reselling, off if you only need headline listing prices (runtime drops sharply).

Mixed basket: the multi-site Actor​

If you're tracking 200 SKUs spread across Amazon, Walmart, and three Shopify DTC brands, maintaining six different schemas and six different proxy configs burns engineering time. apify/e-commerce-scraping-tool accepts product URLs from any supported domain and returns a normalized schema (name, price, priceCurrency, SKU/MPN/GTIN/EAN/UPC, stock, rating). Trade-off: you lose Amazon's Buy Box field and Walmart's variantList structure. This is also the shape of feed most market intelligence work needs — breadth over per-retailer depth.

Price tracking vs one-shot extraction​

These are different jobs with different Actor choices — see our e-commerce price monitoring guide for schedule and alerting patterns beyond what's in this section.

One-shot catalog build (competitor teardown, PIM seed, MAP baseline): run once, capture everything, export to Sheets/BigQuery. Use the richest Actor you can afford; field coverage matters more than run cost.

Price tracking over time (dynamic pricing, MAP enforcement, availability alerts): run on a schedule, append to a table keyed by (asin_or_sku, timestamp), compute deltas. Run cost matters more than field depth: you only need price, availability, maybe sellerId. Budget math: 500 SKUs × 24 runs/day × 30 days = 360k calls/month. At the Business-plan rate (Gold Store discount) of $3/1k that's $1,080/month on Amazon; a Free account pays $5/1k ($1,800/month) and a Starter account $4/1k ($1,440/month). The same volume on a Shopify store is a few dollars.

A common mistake: running the maximal-field Actor on a daily price schedule. You're paying for review scraping and variant expansion every day when you only need price. For long-running price jobs, pick the minimal Actor.

Proxy requirements by retailer​

RetailerMinimum proxyNotes
AmazonResidential, country-matchedDatacenter IPs return listings without prices
WalmartResidentialTriggers interstitial on datacenter
eBayDatacenter often worksAuction/search pages are relatively open
Shopify (public JSON)None required/products.json is meant to be public
EtsyDatacenter usually worksBump to residential if you hit rate limits

Apify Proxy with residential IPs is billed separately from Actor compute, so factor it into the $/1k math; it's often larger than the Actor fee itself. If a retailer starts blocking mid-run, our web scraping challenges guide covers the broader bot-mitigation patterns behind this table.

Field coverage cheatsheet​

What you should expect from a well-built retailer Actor vs a generic one.

FieldWhy it mattersAmazon (junglee)Walmart (e-commerce)Multi-site
Stable product IDJoining across runsasinusItemIdMixed (SKU/MPN)
Buy Box sellerRepricing, counterfeit detection✅✅ (sellerId)❌
Variant-level pricesSize/color pricing✅ (priceVariants)✅ (variantList[])❌
Was-price / list pricePromo detection✅ (listPrice)✅ (wasPrice)Partial
Stars breakdownDefect analysis✅ (starsBreakdown)Avg onlyAvg only
AvailabilityStock-out alerts✅✅✅

If you need joinable IDs for a longitudinal dataset, the retailer-specific Actors are worth the premium.

Workflows I actually run​

Weekly Amazon catalog sweep. junglee/Amazon-crawler on a category or ASIN list → Apify dataset → Google Sheets integration. Pull asin, title, price.value, listPrice.value, seller, inStock. Keyed on ASIN, one row per run.

Hourly MAP check on 200 hot SKUs. Schedule the same Actor with a tight SKU list every hour during business hours. Webhook to Slack when price.value < map_floor. Residential proxy, maxConcurrency: 10, scrapes finish in under 90 seconds.

DTC competitor price feed. autofacts/shopify pointed at 12 competitor storefronts, daily. Costs a few dollars a month total. Append to BigQuery, build a Metabase dashboard keyed on (vendor, handle, date).

Review sentiment on a launch. junglee/amazon-reviews-scraper for a week post-launch, filtered to 1–3 stars, piped through an LLM summarizer. filterByRatings: ["oneStar", "twoStar", "threeStar"] cuts volume by ~40%.

Compliance​

Retailer ToS routinely prohibit automated access. Scraping public listings is generally defensible in the US (hiQ v. LinkedIn lineage), but legal outcomes depend on jurisdiction, authentication, and data type. Keep it to public pages, avoid PII from reviews unless you have a lawful basis, and don't scrape behind logins. See is web scraping legal? before standing up a production program.

Run your first commerce scrape

Start with Amazon Product Scraper on 10 ASINs. Confirm price.value, asin, and seller land in your dataset before scaling the schedule. Sign up for Apify — a run this small clears comfortably inside the monthly free usage credit, and the Actor's Pricing tab shows your exact per-result rate before you commit to a schedule.

Frequently Asked Questions

apify/e-commerce-scraping-tool covers Amazon, Walmart, eBay, Alibaba, Etsy, and many regional/local stores with one input schema. For a single marketplace, the dedicated Actor returns richer fields: ASIN and Buy Box for Amazon, usItemId and variantList for Walmart.

Yes, effectively. Datacenter IPs increasingly return listings with missing prices or wrong currency. The junglee Actor auto-selects proxy country from the domain. Residential proxy is billed separately from Actor compute, so include it in your $/1k estimate.

On Amazon: 500 x 24 x 30 = 360k results/month. On the Business plan (Gold Store discount) that's $3/1k = $1,080 in Actor cost plus residential proxy; a Free account pays $5/1k ($1,800) and a Starter account $4/1k ($1,440). On Shopify storefronts the same volume costs a few dollars because the data is public JSON. Drop fields you don't need (reviews, variants) to keep long-running price schedules cheap.

Schedule the Actor, append each run to a table keyed by (stable_id, timestamp) where stable_id is asin for Amazon, usItemId for Walmart, or variant SKU for Shopify. Graph deltas or webhook-alert on threshold breaks. Avoid running maximal-field Actors on a price schedule; you're paying for data you discard.

Maintained Actors bundle browser automation, retries, and proxy rotation that absorb most soft challenges. Hard CAPTCHA rates depend on proxy quality and concurrency more than the Actor code. Lower maxConcurrency and switch to residential before adding a solver.

Apify Store, ecommerce category: https://apify.com/store/categories/ecommerce-scrapers?fpr=use-apify

Common mistakes and fixes

Amazon returns empty price or Buy Box fields.

Set `apifyProxyCountry` to match the marketplace (US for amazon.com, GB for amazon.co.uk). Residential proxies are required on tight SKUs; datacenter IPs get stripped prices. Retry off-peak with lower concurrency.

Different HTML across Amazon domains.

Pin one marketplace per run (don't mix amazon.com and amazon.de in the same input). ASINs are marketplace-scoped; the same ASIN can resolve to different listings per region.

Shopify store returns partial catalogs.

Shopify's public `/products.json` endpoint paginates at 250 items per page (Shopify's own documented limit). If a run stops short of the full catalog, don't assume a fixed cutoff — pass collection URLs explicitly or chunk by vendor/tag filters instead of paging through the whole store by number alone.

Walmart returns 'Robot or human?' interstitial.

Walmart is aggressive on datacenter IPs; switch to residential proxy and cap concurrency at 5–10. Walmart Product Detail Scraper handles this automatically when proxy is enabled.