Walmart Product & Reviews Scraper avatar

Walmart Product & Reviews Scraper

Pricing

from $0.80 / 1,000 results

Go to Apify Store
Walmart Product & Reviews Scraper

Walmart Product & Reviews Scraper

Scrape Walmart products and customer reviews with structured data including product titles, prices, ratings, review counts, availability, product URLs, and review details for e-commerce research, price monitoring, and competitor analysis.

Pricing

from $0.80 / 1,000 results

Rating

0.0

(0)

Developer

MrDoe

MrDoe

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

What does Walmart Product & Reviews Scraper do?

Walmart Product & Reviews Scraper extracts data from Walmart.com - product search results, full category listings, deep product details, every third-party seller offer, and paginated customer reviews - anonymously, no login, no Walmart account, no API key. Five operations live in one actor: pick one per run, hand it a single item or a batch, and get clean, flat rows back.

Why use this Actor?

  • Price tracking - schedule productDetails or search on a cron and diff consecutive runs to catch price drops, rollbacks, and restocks.
  • Competitor/catalog mapping - productsByCategory gives you a full category listing (price, rating, seller) for assortment and share-of-shelf analysis.
  • Buy-box / marketplace intelligence - productOffers returns every third-party seller's offer for a product as its own row (seller, price, shipping, WFS, return policy) - see exactly who's undercutting you.
  • Voice-of-customer research - productReviews returns full review text, rating, verified-purchase status, and helpful-vote counts, paginated.
  • Batch, one start fee - pass a list of product IDs, search queries, or category IDs and one run covers all of them.

How to use it

  1. Pick an Operation: Product Search, Products by Category, Product Details, Product Offers, or Product Reviews.
  2. Fill the matching field:
    • Searchquery (e.g. coffee maker) or queries for a batch.
    • Products by CategorycategoryId (e.g. 3944 = Electronics, or 3951 = Laptops) or categoryIds for a batch. You can paste the bare leaf ID or the full underscore-joined breadcrumb path - see Category ID format below.
    • Product Details / Offers / ReviewsproductId or productIds for a batch.
  3. Optionally set domain (us/ca), sortBy, price filters, or the review-specific fields.
  4. Click Start.

Batch fields (queries/categoryIds/productIds) win over their singular counterparts when filled; duplicates and blanks are dropped automatically.

There is no page cap - search, productsByCategory, and productReviews always paginate through to the site's own last reported page for each item. Batch a lot of items and this can produce a very large run; that's intentional, not a bug. Use maxItems (see below) if you want to bound total spend instead.

Input

FieldTypeDescription
operationstring (required)One of: search, productsByCategory, productDetails, productOffers, productReviews.
query / queriesstring / arraySearch keyword(s). Used by search.
categoryId / categoryIdsstring / arrayWalmart category ID(s). Used by productsByCategory.
productId / productIdsstring / arrayNumeric usItemId or alphanumeric product ID(s). Used by productDetails, productOffers, productReviews.
domainstringus (walmart.com) or ca (walmart.ca). Defaults to us.
sortBystringbest_match, price_low, price_high, best_seller, top_rated. Applies to search/productsByCategory.
minPrice / maxPriceintegerPrice filters. Applies to search/productsByCategory.
storeId / statestringLocalize availability/shipping. Applies to search/productsByCategory.
reviewSortstringrelevancy, recent, rating_high_low, rating_low_high. Applies to productReviews.
reviewRatingintegerBias results toward this star rating (1-5). Applies to productReviews - see the caveat below.
reviewLimitintegerReviews per page (default 10, max 50).
maxItemsintegerCaps total result rows across the whole run (all queries/categories/products combined). The first 10 rows in a run are always free - see Pricing. Blank = no cap.
proxyConfigurationobjectA residential proxy is strongly recommended - Walmart's bot defenses flag high-volume traffic from one IP.

Category ID format

Top-level departments are a single number (3944 = Electronics, 4044 = Home). Sub-categories are documented via a full underscore-joined breadcrumb path (3944_1089430_3951 = Electronics › Computers, Laptops and Tablets › Laptops), which you can paste as-is - the Actor extracts just the last (leaf) segment for the actual request, since that's what Walmart's category pages actually key off of.

Find a category's ID by opening any product in it via productDetails and reading the categories[] array in the output - each entry's URL ends in one number; the leaf category's number is what you want.

Output

One flat row per item. Search/category rows carry product fields; offer rows carry seller fields; review rows carry review fields. Every row has _operation (which mode produced it) and status (success or error) so you can split/filter a mixed export.

Product row example:

{
"_operation": "productDetails",
"productId": "4SZSM8SXAAJT",
"usItemId": "609040889",
"productTitle": "Restored MacBook Air 13.3\" Laptop - Apple M1 chip - 8GB Memory - 256GB SSD - Space Gray",
"brand": "Apple",
"model": "MGN63LL/A",
"upc": "194252048955",
"price": 399,
"listPrice": null,
"currency": "USD",
"rating": 4.2,
"reviewCount": 6442,
"ratingBreakdown": { "five": 4727, "four": 428, "three": 196, "two": 141, "one": 950 },
"availability": "In stock",
"outOfStock": false,
"seller": "Nebsys Corp",
"sellerType": "EXTERNAL",
"returnReturnable": true,
"returnFree": true,
"returnWindowDays": 30,
"categories": [{ "name": "Electronics" }, { "name": "Laptops" }],
"specifications": [{ "name": "Processor", "value": "Apple M1" }],
"images": ["https://i5.walmartimages.com/..."],
"productUrl": "https://www.walmart.com/ip/.../609040889",
"status": "success"
}

Offer row example (one per seller):

{
"_operation": "productOffers",
"productId": "3406383181",
"offerId": "A6E0AF9655D24A1098AF19C794FB4BB1",
"sellerName": "Walmart.com",
"sellerType": "INTERNAL",
"price": 49.97,
"priceDisplay": "$49.97",
"wfsEnabled": false,
"freeShipping": true,
"returnReturnable": true,
"returnWindowDays": 90,
"inStock": true,
"status": "success"
}

Review row example:

{
"_operation": "productReviews",
"productId": "609040889",
"reviewId": "423325961",
"reviewTitle": "Great machine for the price",
"reviewRating": 5,
"reviewBody": "Very light, fast and easy to setup...",
"reviewAuthor": "zae357",
"verifiedPurchase": true,
"status": "success"
}

Every row also spreads the raw upstream Walmart fields alongside the curated ones (curated fields always win on any name collision), so nothing is lost if you need something not in the curated set above.

Pricing

This Actor uses pay-per-event pricing - one small run-start charge, then a per-row charge for each operation (search/category/product-detail/offer/review result). See the Pricing tab for current rates. The first 10 result rows in a run are always free, regardless of how many items you batch in; every row after that is charged normally. Failed lookups land as status: "error" rows and are never charged. There's no page cap, so use maxItems (and batch size) to bound spend on a given run.

Limitations

  • Only the numbers/text Walmart shows to an anonymous, logged-out visitor are available - no seller-account-only data.
  • reviewRating biases results toward that star rating but isn't a strict hard filter in every case - pairing it with an explicit reviewSort is more reliable (see code comments for what was live-verified).
  • Walmart's page schema drifts over time (already observed once during development - a price field moved from a flat string to a nested priceLines structure); the extraction code is written defensively with multiple fallback paths, but very large future redesigns may need an update.

FAQ

Does Walmart have a public API? Not one that covers open product search, full category listings, per-seller offers, or customer reviews without seller/partner approval. This Actor gets you the same data anonymously, no approval process.

Do I need a Walmart account or API key? No - it runs entirely against Walmart's public, logged-out web pages.

Which marketplaces are supported? walmart.com (domain: "us") and walmart.ca (domain: "ca").

A run returns 0 results with no error - why? For productsByCategory, this is almost always the category ID pointing at a top-level department "hub" page (curated modules, no plain product grid) rather than a real leaf category - try a more specific sub-category ID. For search/productReviews, an unusually narrow filter combination can also legitimately return nothing.

Disclaimer

This Actor is an independent tool, not affiliated with or endorsed by Walmart Inc. It only accesses data Walmart serves publicly to anonymous visitors. Use it in compliance with Walmart's Terms of Service and applicable law in your jurisdiction. Found a bug or have a feature request? Use the Issues tab on this Actor's page.