Walmart Product Scraper avatar

Walmart Product Scraper

Pricing

from $2.00 / 1,000 product scrapeds

Go to Apify Store
Walmart Product Scraper

Walmart Product Scraper

Scrape Walmart.com products by keyword or product URL: item ID, name, price, was-price, savings, rating, reviews, seller, deal badges, and image. Export as JSON, CSV, or Excel.

Pricing

from $2.00 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Walmart Product Scraper

Scrape Walmart.com products by keyword or product URL and get clean, structured data — item IDs, prices, was-prices, savings, ratings, reviews, sellers, deal badges, and images — with no Walmart API key and no browser automation.

Search Walmart by keyword or paste product URLs, sort by best match, price, rating, best seller, or newest, page through results automatically, and get 16 structured fields per product — price, was-price, savings, on-sale flag, rating, review count, seller, fulfillment type, deal badge, image, and sponsored flag — ready for JSON, CSV, or Excel.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Use the Apify actor "parsebird/walmart-product-scraper" via the ApifyClient. Example (Python): from apify_client import ApifyClient; client = ApifyClient("<APIFY_TOKEN>"); run = client.actor("parsebird/walmart-product-scraper").call(run_input={"searchQueries": ["laptop"], "productUrls": [], "maxProductsPerSearch": 100, "maxSearchPages": 5, "sort": "best_match", "maxRequestRetries": 5}); items = list(client.dataset(run["defaultDatasetId"]).iterate_items()). Key inputs: searchQueries (array of keywords; each runs a separate search; a Walmart search URL also works), productUrls (array of https://www.walmart.com/ip/... URLs for direct product details; normalized and de-duplicated by item ID), maxProductsPerSearch (integer, default 100), maxSearchPages (integer, default 5, ~40 products per page), sort (one of best_match, best_seller, price_low, price_high, rating_high, new), maxRequestRetries (integer, default 5), proxyConfiguration (defaults to Apify Proxy US residential, which is required). Output fields per product: usItemId, name, price, priceString, wasPrice, savings, onSale, rating, reviewCount, seller, fulfillmentType, flag, thumbnail, url, isSponsored, scrapedAt. Full API spec: https://apify.com/parsebird/walmart-product-scraper/api. Get an API token at https://console.apify.com/settings/integrations.

What does Walmart Product Scraper do?

Walmart Product Scraper extracts product data from Walmart.com the same way the Walmart website loads it — from Walmart's own embedded product data — so you get structured fields instead of text scraped off a rendered page. It is a lightweight Walmart API alternative: no reverse-engineering, no headless browser, no login.

🔎 Two input modes — add a list of search keywords (each keyword runs its own Walmart search), or paste Walmart product URLs (https://www.walmart.com/ip/...) for direct product details and price monitoring. You can mix both in one run.

↕️ Sort control — order search results by best match, best seller, price low-to-high, price high-to-low, rating, or newest, matching Walmart's own sort options.

📄 Automatic pagination — set a maxProductsPerSearch target and the Walmart scraper pages through results (about 40 products per page) on its own, de-duplicating listings and stopping at Walmart's search ceiling of roughly 1,000 products per keyword.

💲 Price and deal data — current price, "was" price, savings text, an onSale flag, and the deal badge Walmart shows on the card (Rollback, Best seller, Clearance, 100+ bought since yesterday, and similar).

Ratings and seller info — average star rating, review count, seller name (Walmart.com or a marketplace seller), and fulfillment type.

📷 Direct links — a clean product URL and a product image URL for every item, plus a usItemId you can use as a stable key.

☁️ Runs on Apifyschedule recurring runs, call it from the API, connect it to integrations (Make, Zapier, n8n, Google Sheets, Slack), and export as JSON, CSV, Excel, or XML.

What data can you extract from Walmart.com?

FieldDescription
usItemIdWalmart item identifier — a stable key for the product
nameProduct name as shown on the Walmart listing
priceCurrent price as a number, e.g. 23.78
priceStringFormatted current price, e.g. $23.78
wasPriceOriginal price before discount, when the item is on sale
savingsSavings text, e.g. SAVE $5.60
onSaleWhether the product is currently discounted
ratingAverage star rating from 0 to 5
reviewCountNumber of customer reviews
sellerSeller name, e.g. Walmart.com or a marketplace seller
fulfillmentTypeDelivery / fulfillment method reported by Walmart
flagDeal badge, e.g. Rollback, Best seller, 100+ bought since yesterday
thumbnailProduct image URL
urlDirect link to the Walmart product page
isSponsoredWhether the listing is a sponsored (paid) placement
scrapedAtISO 8601 timestamp when the data was extracted

See the Output example below for the full record shape. Download results in JSON, CSV, Excel, or XML.

How to scrape Walmart.com product data

  1. Click Try for free / Start to open the Walmart Product Scraper.
  2. Add one or more Search keywords (for example laptop), or paste Product URLs such as https://www.walmart.com/ip/JLab-Go-Air-Pop-Bluetooth-Earbuds/17828556665.
  3. Pick a Sort by order and set Max products per search and Max search pages.
  4. Keep the default Proxy configuration (Apify Proxy, US residential) — it is required to reach Walmart.
  5. Press Start. Watch the run log; results stream into the dataset as they are collected.
  6. Open the Storage tab and export as JSON, CSV, Excel, or XML, or pull them from the API.

Input parameters

ParameterTypeRequiredDefaultDescription
searchQueriesarrayYes*["laptop"]Keywords to search on Walmart. Each keyword runs a separate search. A Walmart search URL also works.
productUrlsarrayYes*[]Walmart.com product URLs for direct product details and price monitoring. URLs are normalized and duplicate item IDs are fetched once.
maxProductsPerSearchintegerNo100Maximum number of products to return for each keyword.
maxSearchPagesintegerNo5Maximum number of search result pages per keyword. Each page has about 40 products.
sortstringNobest_matchSort order: best_match, best_seller, price_low, price_high, rating_high, new.
maxRequestRetriesintegerNo5Retry attempts for failed or blocked requests. Higher values improve reliability.
proxyConfigurationobjectNoUS residentialApify Proxy settings. US residential proxies are the default and are required.

* Provide at least one entry in searchQueries or productUrls.

Input examples

Basic keyword search — collect up to 10 products for one Walmart search term:

{
"searchQueries": ["laptop"],
"productUrls": [],
"maxProductsPerSearch": 10,
"maxSearchPages": 1,
"sort": "best_match",
"maxRequestRetries": 5
}

Multiple keywords, cheapest first:

{
"searchQueries": ["air fryer", "coffee maker", "robot vacuum"],
"maxProductsPerSearch": 100,
"maxSearchPages": 5,
"sort": "price_low"
}

Price monitoring for a fixed set of products:

{
"productUrls": [
"https://www.walmart.com/ip/JLab-Go-Air-Pop-Bluetooth-Earbuds/17828556665",
"https://www.walmart.com/ip/13-inch-MacBook-Neo/19682700559"
]
}

Output example

{
"usItemId": "17828556665",
"name": "JLab Go Air Pop Bluetooth Earbuds, True Wireless with Charging Case",
"price": 23.78,
"priceString": "$23.78",
"wasPrice": "$29.38",
"savings": "SAVE $5.60",
"onSale": true,
"rating": 4.5,
"reviewCount": 34286,
"seller": "Walmart.com",
"fulfillmentType": "FC",
"flag": "500+ bought since yesterday",
"thumbnail": "https://i5.walmartimages.com/seo/JLab-Go-Air-Pop-True-Wireless-Bluetooth-Earbuds.jpeg",
"url": "https://www.walmart.com/ip/JLab-Go-Air-Pop-Bluetooth-Earbuds/17828556665",
"isSponsored": false,
"scrapedAt": "2026-03-03T01:40:32.821Z"
}

Use cases

  • 💰 Price monitoring — track Walmart prices, rollbacks, and "was" prices for a fixed list of product URLs on a schedule.
  • 📊 Competitor and market research — pull a full category's assortment, sellers, and price bands from Walmart search.
  • 🧭 Assortment and rank tracking — watch which products rank for a keyword and how sponsored placements shift over time.
  • 🛍️ Catalog and feed building — collect names, images, item IDs, and product URLs to seed a product database.
  • Review-signal analysis — combine rating and reviewCount to find top-rated products in a niche.
  • 🤖 AI and RAG pipelines — feed structured Walmart product data to agents and LLM workflows via the Apify API or MCP.

How it works

  1. The actor takes each keyword in searchQueries (or the search term from a pasted Walmart search URL) and queries Walmart.com's search results page by page.
  2. Every Walmart product URL in productUrls is normalized to its item ID, de-duplicated, and fetched once for direct product details.
  3. Requests are routed through Apify Proxy US residential IPs, which are required to reach Walmart.
  4. Each product is normalized into a flat 16-field record, and sponsored duplicates of organic listings are removed by item ID.
  5. Records stream into the dataset as they are collected, so partial results are always available.
  6. Pagination stops when maxProductsPerSearch is reached, maxSearchPages is hit, or Walmart runs out of results (its search returns roughly 1,000 products per keyword).

How much does it cost to scrape Walmart.com?

This actor uses pay-per-result pricing through a single event, product-scraped, charged once per product saved to the dataset.

Plan tierPrice per 1,000 products
Free$4.00
Bronze$3.50
Silver$3.00
Gold$2.00

Collecting 1,000 Walmart products costs about $2.00–$4.00 depending on your Apify plan, plus a small amount of Apify Proxy and compute usage. Your Apify plan's monthly usage credits apply. Example: maxProductsPerSearch: 100 for two keywords costs roughly $0.40–$0.80.

FAQ

Do I need a Walmart API key or a Walmart account? No. The actor reads Walmart.com's public product data. There is nothing to authenticate.

Why is a proxy required? Walmart.com blocks datacenter traffic and is US-only. Apify Proxy US residential IPs are set as the default proxyConfiguration and are required. Runs without a proxy will fail.

How many products can I get per keyword? Walmart's search returns roughly 1,000 products (about 25 pages of 40) for a given keyword, regardless of the total it reports. Use narrower keywords or a different sort to reach different slices of a large category.

Can I scrape a Walmart category page? Use a keyword that matches the category, or paste a Walmart search URL. Direct product URLs from any category go in productUrls.

Are sponsored products included? Yes. Sponsored listings are kept and flagged with isSponsored: true. When the same item appears as both a sponsored and an organic result, it is saved once.

How fresh is the data? Every record carries a scrapedAt timestamp and reflects Walmart's live listing at the moment of the request. Schedule the actor to keep a price history.

Can I schedule recurring runs? Yes. Use Apify Schedules to run the Walmart scraper hourly, daily, or weekly, and send results to integrations like Google Sheets, Make, Zapier, or a webhook.

How do I call it from code?

Python:

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("parsebird/walmart-product-scraper").call(run_input={
"searchQueries": ["laptop"],
"maxProductsPerSearch": 100,
"maxSearchPages": 5,
"sort": "best_match",
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["name"], item.get("priceString"))

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<APIFY_TOKEN>' });
const run = await client.actor('parsebird/walmart-product-scraper').call({
searchQueries: ['laptop'],
maxProductsPerSearch: 100,
maxSearchPages: 5,
sort: 'best_match',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Something looks wrong or missing. Open an issue on the Issues tab with the input you used. Feedback is welcome and helps keep the Walmart Product Scraper reliable.

Web scraping of publicly available data is legal in most jurisdictions, including the US and EU, when you do not collect personal data or bypass authentication. This actor only reads public Walmart.com product listings — no login, no personal data. You are responsible for how you use the collected data, including compliance with Walmart's Terms of Service, applicable laws (GDPR, CCPA), and copyright. See Apify's guide to the legality of web scraping for background.

Browse the full ParseBird actor collection for more e-commerce and marketplace scrapers.