Walmart.com Product Search & Price Filter Scraper
Pricing
from $0.49 / 1,000 results
Walmart.com Product Search & Price Filter Scraper
Search Walmart.com by keyword and filter results by price, rating, review count, free shipping, stock status, brand or seller, with sponsored placements flagged apart from organic results.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
vexaloom-labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Features
Share
Walmart mixes sponsored placements into its search results and hides useful filters behind click-by-click pages. This actor reads Walmart.com directly and returns clean, structured records from four surfaces: keyword search, category shelves, full product pages and customer reviews. No account, cookies or proxy setup is needed.
What you can scrape
| Mode | What it returns |
|---|---|
| Search by keyword | Products from Walmart's own search, page by page, for one or many keywords |
| Browse a category URL | Products from any /browse/ or /cp/ category shelf, with the same filters and sort orders |
| Product details | The full item document for URLs, numeric item IDs or alphanumeric product IDs |
| Customer reviews | Paginated review rows with rating, text, author, date, verified-purchase flag and photos |
Filters that actually apply
- Price band — Walmart's own
min_price/max_pricefilter, plus a client-side safety check - Minimum rating and review count — keep only products proven by shoppers
- Brands — exact Walmart brand facet (pass several brands at once)
- Retailer facet — Walmart-fulfilled, Pro Sellers, marketplace sellers, or any other facet Walmart exposes
- Any Walmart facet — pass
type:value, such asspecial_offers:Rollback,customer_rating_range_facet_new_filter_v0:4 - 5 Stars, orexclude_oos:Show available items only - Free shipping — search rows are enriched from product pages so the flag is real
- In stock / out of stock — drop unavailable items
- Sponsored placements — kept and flagged, or excluded so only organic results remain
- Seller name — substring match, case-insensitive
Sort orders: best match, price low-to-high, price high-to-low, best seller, highly rated, newest.
What a product record contains
Search and browse rows:
productId, productUrl, name, brand, price, priceDisplay, wasPrice,
minPrice, savingsAmount, currency, unitPrice, rating, reviewCount,
imageUrl, images[], availability, availabilityDisplay, inStock,
freeShippingEligible, sellerName, sellerId, sellerType, isSponsored,
badges[], categoryPath, categoryPathId, fulfillmentTypes[],
deliveryDate, pickupDate, storeId, storePostalCode, storeCity,
storeState, variants[], variantCount, shortDescription, position,
organicRank, searchQuery, sourcePage, categoryUrl, recordType,
scrapedAt.
Product-detail rows add:
brandUrl, upc, model, manufacturerProductId, longDescription,
specifications, highlights[], fulfillmentOptions[], shippingPrice,
deliveryAvailable, pickupAvailable, returnPolicy, returnWindowDays,
returnable, freeReturns, reviewDistribution, recommendedPercent,
reviewsWithTextCount.
Review rows:
reviewId, productId, productUrl, productName, rating, title,
reviewText, author, reviewDate, verifiedPurchase, positiveFeedback,
negativeFeedback, photos[], fulfilledBy, externalSource, recordType,
scrapedAt.
Empty values are omitted at every depth: no null, blank strings, empty lists
or empty objects.
Input reference
| Field | Default | Purpose |
|---|---|---|
mode | search | search, browse, products or reviews |
searchQueries | ["iphone case"] | One or more keywords (search mode) |
categoryUrls | [] | Walmart /browse/ or /cp/ category links |
productUrls | [] | Walmart /ip/ links (products/reviews modes) |
itemIds | [] | Numeric item IDs or alphanumeric product IDs |
maxItems | 50 | Hard row cap for the run |
maxPages | 5 | Maximum result pages per query/category (Walmart caps at 25) |
sortBy | best_match | Listing order |
minPrice / maxPrice | – | Price band in USD |
minRating | – | Minimum average rating (0-5) |
minReviewCount | – | Minimum number of reviews |
freeShippingOnly | false | Only free-shipping products (auto-enriches cards) |
excludeOutOfStock | true | Drop out-of-stock products |
excludeSponsored | false | Drop sponsored placements |
brands | [] | Exact brand names, e.g. DEWALT |
sellerContains | – | Seller-name substring |
facet | – | Any Walmart facet as type:value |
enrichDetails | false | Open each search row's product page for brand/UPC/specs |
maxConcurrency | 4 | Parallel product/review requests (1-10) |
maxReviews | 10 | Reviews per product (reviews mode) |
reviewSort | relevancy | Review order |
Example inputs
Top-rated coffee makers under $60, no sponsored rows:
{"mode": "search","searchQueries": ["coffee maker"],"maxItems": 100,"minPrice": 20,"maxPrice": 60,"minRating": 4,"excludeSponsored": true,"sortBy": "rating_high"}
Cheapest in-stock electronics from a category shelf:
{"mode": "browse","categoryUrls": ["https://www.walmart.com/browse/electronics/3944"],"maxItems": 50,"sortBy": "price_low","excludeOutOfStock": true}
Full details for a list of products:
{"mode": "products","productUrls": ["https://www.walmart.com/ip/20042402979","https://www.walmart.com/ip/16864710228"],"maxItems": 2}
Newest reviews for a product:
{"mode": "reviews","itemIds": ["20042402979"],"maxReviews": 50,"reviewSort": "submission-desc"}
Brand-only search with enrichment:
{"mode": "search","searchQueries": ["cordless drill"],"brands": ["DEWALT", "Makita"],"enrichDetails": true,"maxItems": 20}
Typical uses
- Price monitoring — schedule a daily search and compare
priceacross runs - MAP / reseller checks — see which marketplace sellers undercut a brand
- Product research — collect ratings, review counts and badges for a niche
- Catalog enrichment — feed names, images, UPCs, specs and prices downstream
- Review mining — export text reviews with ratings and verified-purchase flags
- Sponsored-share analysis — compare
isSponsoredrows withorganicRank
FAQ
Do I need an Apify proxy or any credentials? No. The actor reads Walmart without an account. It chooses its network path automatically and only changes it if Walmart returns a bot challenge.
Why does my search return fewer rows than Walmart shows? Walmart caps listing pagination at 10-25 pages per query. Split the query by brand, facet, price band or sort order to go deeper.
Why is brand or UPC missing from some search rows? Walmart's search cards
omit brand/UPC for many categories. Turn on enrichDetails or use product mode
to read the full item page.
Why does free shipping require extra time? Search cards no longer publish
shipping badges, so the actor opens each product page to check Walmart's real
free-shipping flag. freeShippingOnly enables this automatically.
How many reviews can I get? Walmart only lists reviews that contain text,
usually 10-20 per product even when the total review count is much higher.
maxReviews controls how many of those the actor reads.
Are prices store-specific? Prices and availability reflect the store and
ZIP Walmart resolves for the request; search and browse rows expose that
location as storeId, storePostalCode, storeCity and storeState.
There is no input to pin a different store or ZIP.
Does it support Walmart Canada or Mexico? No, this actor targets walmart.com in the United States. The regional sites use different page data.
What happens when every filter rejects every row? The run ends cleanly with a status message and an empty dataset, never placeholder or sentinel rows.
What do the transient warnings in the log mean? Walmart sometimes drops or throttles a proxy connection (HTTP 444/456). The actor retries, rotates its proxy session and continues; a run can still return fewer rows during a Walmart bot wave.
Can I paste an old task input? Yes. Legacy keys such as searchQuery,
query, maxResults, maxPage, sort, brandContains, useApifyProxy,
inStockOnly, includeSponsored, fetchDetails and maxReviewsPerProduct
are still honoured in code even though the input form now shows the new names.
Limitations
- Walmart review pages expose only reviews with text; the total review count can be much larger.
- Category shelves can be empty if Walmart retired the category; paste the
current
/browse/or/cp/link from the site. - Listing depth is capped by Walmart's own pagination.
- Search-card brand/UPC/specs require
enrichDetails; without it those fields appear only when Walmart includes them. - A few store-restricted product pages return 404 from some proxy locations. Product mode retries the item's reviews page, which can recover a leaner record (name, price, stock, image, category). If that page is also 404 at the same location, the item is skipped; retry the run or use review mode.
- US walmart.com only.
- Prices follow Walmart's default location for the request; the actor cannot pin a different store or ZIP.
Data source
Records come from Walmart.com's server-rendered pages and the JSON embedded in them. No external API, account or paid data source is used.