Walmart Category Product Scraper – Prices & Listings avatar

Walmart Category Product Scraper – Prices & Listings

Pricing

$3.00 / 1,000 products

Go to Apify Store
Walmart Category Product Scraper – Prices & Listings

Walmart Category Product Scraper – Prices & Listings

Export Walmart category listings for price monitoring and catalog research: current and was prices, unit price, availability, ratings, seller, images, and product URLs. Enter one category reference - not a list of URLs - and get up to ~1,250 products per category.

Pricing

$3.00 / 1,000 products

Rating

5.0

(1)

Developer

Luke Hunter

Luke Hunter

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 hours ago

Last modified

Share

Walmart Category Scraper — Product Prices & Listings

Scrape Walmart category pages into clean, structured product data. Enter one or more Walmart category references or browse URLs and get product names, current prices, was-prices, unit prices, availability, ratings, review counts, sellers, sponsored-placement flags, images, and product URLs.

This Actor is built specifically for Walmart category research: browse an aisle, paginate it automatically, de-duplicate products, and export the category as a dataset without collecting product URLs one by one.

Try the Walmart Category Scraper on Apify

Why use this Walmart category scraper?

NeedWhat this Actor gives you
Scrape a Walmart categoryPaste a browse URL or use its <slug>/<id> category reference
Price monitoringNumeric current price, pre-markdown price, and unit-price display
Category intelligenceProducts across up to 25 browse pages per category
Ad analysisisSponsored identifies Walmart-sponsored placements
Seller researchSeller name plus availability fields
Product comparisonRatings, review counts, brand, description, image, and product link
Predictable spendmaxItems is a hard cap on delivered products and therefore on cost
Clean exportsFlat rows ready for CSV, Excel, JSON, databases, or the Apify API

The key focus is category-level product and price data, not keyword search or one-product-at-a-time scraping.

What can you do with Walmart category data?

Monitor prices across a Walmart category

Collect current prices across an aisle and schedule the same category to run again later. Use usItemId as the stable product identifier when comparing runs.

Find Walmart markdowns

price contains the current price and priceWas contains the previous comparison price when Walmart publishes a markdown.

Analyze sponsored vs. organic products

Every delivered product includes isSponsored, so paid placements can be separated from the rest of the category.

Compare sellers, ratings, and assortment

Use sellerName, averageRating, numberOfReviews, availability, and product identity fields to analyze what Walmart is currently showing in a category.

Export Walmart category products

Every run writes a standard Apify dataset that can be downloaded as CSV, Excel, JSON, or accessed programmatically through the Apify API.

How to scrape a Walmart category

  1. Open a category on Walmart.com.
  2. Copy the browse URL, for example: https://www.walmart.com/browse/food/976759
  3. Paste the full URL into Walmart categories, or enter just: food/976759
  4. Set Maximum products.
  5. Click Start.
  6. Export the resulting dataset or use it through the API.

You can enter up to 20 categories in one run.

Input

{
"categories": [
"food/976759",
"household-essentials/1115193"
],
"maxItems": 100,
"maxPagesPerCategory": 25
}
FieldTypeDefaultDescription
categoriesstring[]required1–20 Walmart category references or full browse URLs
maxItemsinteger1001–5000. Hard cap on products delivered across the whole run
maxPagesPerCategoryinteger251–25. Safety cap on category browse pages fetched

For most users, the only settings that matter are Walmart categories and Maximum products.

Walmart product data fields

CategoryFields
IdentityusItemId, category
Productname, brand, shortDescription
Priceprice, priceWas, currency, unitPriceDisplay
AvailabilityavailabilityStatus, availabilityDisplay
Social proofaverageRating, numberOfReviews
Seller & adssellerName, isSponsored
Media & linksimageUrl, productUrl
FreshnessscrapedAt

Missing values are returned as null. The Actor does not invent missing product data.

Walmart output example

{
"usItemId": "44391605",
"name": "Fresh Strawberries, 1 lb Container",
"brand": null,
"category": "food/976759",
"price": 1.97,
"priceWas": 3.14,
"currency": "USD",
"unitPriceDisplay": "12.3 ¢/oz",
"availabilityStatus": "IN_STOCK",
"availabilityDisplay": "In stock",
"averageRating": 4.5,
"numberOfReviews": 1203,
"sellerName": "Walmart.com",
"isSponsored": false,
"imageUrl": "https://i5.walmartimages.com/seo/example.jpeg",
"productUrl": "https://www.walmart.com/ip/Fresh-Strawberries-1lb-Container/44391605",
"scrapedAt": "2026-09-20T00:00:00.000Z"
}

Why the Walmart price extraction is useful

Walmart category-page data does not always put the usable price in the most obvious top-level field. This Actor reads Walmart's structured price lines and recognizes both regular current prices and markdown pricing.

That matters because a markdown can be represented as a discounted price with a separate comparison or was-price. The Actor exposes those as:

  • price — current product price
  • priceWas — previous comparison price when published
  • unitPriceDisplay — Walmart's own per-unit price text

This makes the dataset more useful for category price monitoring than a parser that only reads one top-level price field.

Use it as a Walmart category API

The Actor can be called from your own application through the Apify API. No Walmart API key or Walmart login is required.

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("lukehunter/walmart-category-scraper").call(
run_input={
"categories": ["food/976759"],
"maxItems": 100,
"maxPagesPerCategory": 25,
}
)
for product in client.dataset(run["defaultDatasetId"]).iterate_items():
print(product["name"], product["price"], product["sellerName"])

Use Apify schedules for recurring category snapshots, and webhooks or integrations to send completed datasets into the rest of your workflow.

Pricing and cost control

This Actor uses pay per delivered product pricing.

Current configured rate: $0.003 per product delivered. Check the Apify Pricing tab for the latest published rate.

Products deliveredCost at $0.003/product
100$0.30
1,000$3.00
5,000$15.00

There is no charge for merely starting a run. maxItems gives you a clear upper bound on the number of billable products.

Products are de-duplicated by usItemId within a run.

Reliability and data quality

The Actor is designed to make data problems visible instead of hiding them.

  • If Walmart blocks a category before any products are found, the run fails instead of returning an apparently successful empty dataset.
  • Built-in quality checks detect malformed or degraded Walmart responses and reject pages that no longer look like normal product data instead of quietly treating them as valid.
  • Individual products can still have fields that Walmart does not provide. Missing values are returned as null rather than guessed.
  • Sponsored products are delivered but explicitly labelled with isSponsored.
  • Products without a usable usItemId are dropped rather than risking incorrect de-duplication.
  • Missing values remain null; they are not guessed.

Important limitations

  • Category browsing, not keyword search. This Actor does not build Walmart /search queries.
  • Walmart exposes a practical ceiling of about 25 pages per category, roughly 1,250 products when pages contain around 50 products.
  • Up to 20 categories per run.
  • No store or ZIP input. Walmart pricing and availability can vary by location. This Actor reflects the category-page context Walmart serves to the request and should not be treated as guaranteed store-specific inventory.
  • Availability fields reflect what Walmart publishes on the category page, not a live stock check at a specific store.
  • Prices, ratings, sellers, and availability can change after the run. scrapedAt records the observation time.
  • The Actor does not use CAPTCHA bypass, proxy rotation, credential capture, or impersonation.
  • Public catalogue data only; no personal data is collected.
  • This is an independent tool and is not affiliated with, endorsed by, or connected to Walmart Inc. Walmart is a trademark of its owner. You are responsible for using the data in accordance with applicable terms and laws.

FAQ

Can I scrape all products in a Walmart category?

The Actor pages through the category until it reaches Walmart's available pages, your maxItems limit, or your maxPagesPerCategory limit. Walmart category browsing itself has a practical ceiling of about 25 pages.

How do I find the Walmart category ID?

Open the category on Walmart.com. For a URL such as:

https://www.walmart.com/browse/food/976759

you can enter either the whole URL or the final two path segments:

food/976759

Can I export Walmart products to CSV or Excel?

Yes. Every run writes a standard Apify dataset that can be exported as CSV, Excel, JSON, and other supported formats.

Can I track Walmart price changes?

Yes. Schedule the same category to run repeatedly and compare products by usItemId. price gives the current value and priceWas captures a published comparison price when available.

Does it identify sponsored Walmart products?

Yes. isSponsored is true when Walmart marks the product as a sponsored placement.

Does it scrape Walmart search results?

No. It is deliberately focused on category browse pages.

Can I scrape prices for a specific Walmart store or ZIP code?

No. This Actor does not currently accept a store or ZIP input.

Do I need a Walmart API key or account?

No separate Walmart API key or Walmart login is required.

How do I control the cost?

Set maxItems. It is a hard cap on the number of products delivered across the run and therefore on billable results.