Piotr VassevPiotr Vassev

How to Track Walmart Listing Prices and Sellers

The Walmart Listings Scraper collects product cards from Walmart.com searches and categories. I maintain the Actor. This guide uses an air-fryer search to build a price snapshot with product identifiers, seller names, and availability.

The important comparison is the same product under a comparable offer. A cheaper search result may be a different capacity, bundle, seller, or variant.

How to Scrape Walmart Product Listings

Arrange proxy access before the first run

Walmart blocks datacenter traffic, and this Actor's deployed schema requires residential US proxies in practice. A paid Apify plan is needed for that access. Keep the default residential-US configuration and include proxy traffic in the total budget.

Supply keywords for a plain search or searchUrls for filtered search and /browse/ pages copied from Walmart. This Actor covers listing cards, not full product pages or customer-review text.

maxPages applies to each keyword or URL. A page has roughly 50 products, while Walmart search itself stops at about 25 pages. There is no product-count cap in this input, so begin with one source and a small page limit.

Budget for the sample

Pricing as of September 6, 2026. The active Actor price is $0.001 per returned product. Residential US proxy traffic is also billed by Apify and can materially affect total run cost. A pricing change is scheduled for 2026-09-12; recheck the rate before a later run or recurring schedule. Check current Actor pricing and the run charge breakdown; these calculations describe Actor events, and separately billed platform or proxy resources may also apply.

Collect two Walmart result pages

Open the Actor on Apify. In Input, switch to the JSON editor and paste:

{
  "keywords": [
    "air fryer"
  ],
  "searchUrls": [],
  "maxPages": 2,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}

Click Start, then open the completed run’s output dataset.

Two pages are a small discovery sample, not a promise of exactly 100 products. After completion, inspect several names, prices, and seller values. Check that the search found appliances rather than replacement baskets or accessories.

If prices are missing across many rows, inspect the log for Walmart challenges and the proxy configuration before using the export. Missing prices can indicate extraction or session problems rather than unavailable products.

Read the returned fields

FieldHow to use it
usItemIdWalmart item identifier
nameProduct name
priceCurrent price
wasPricePrevious price when shown
sellerNameDisplayed seller
availabilityStatusAvailability label

Use usItemId for matching products between exports and retain sellerName as offer context. wasPrice is the previous/reference price displayed by Walmart; it is not your own collected price history.

The historical sample includes a current price of 79 and a was-price of 99.99. Those values illustrate the field relationship only. For a real change calculation, compare two dated observations of price for the same item and check whether the seller or variant changed.

Historical walmart listings scraper output

Build a dated item-price table

Export CSV and retain usItemId, name, price, wasPrice, sellerName, availabilityStatus, and the source URL. Add collection time and search context. Keep item IDs as text.

Separate air fryers by capacity and model number. Exclude accessories and bundles from a single-appliance comparison. Open unclear product links to verify what the offer includes, especially when a price is far outside the rest of the group.

Create a comparison sheet with one row per item observation, keeping the seller alongside the price. Calculate a displayed discount from wasPrice only when both values are numeric and the reference value is positive. Label it clearly; it does not measure how much the price changed since your previous run.

For tracking, save the input as an Apify task and retain each completed export. Join later snapshots on item ID, then flag changes in price, seller, and availability separately. Keep a row for an earlier item even if it is absent from the latest search.

Before acting on a price alert, open the product and verify delivery context and current availability. A search-card availability label is not an inventory count or a guarantee for every location. Sponsored labels and buying flags likewise should not be treated as a full sales-history dataset.

Separate access problems from search limits

If requests show robot checks, confirm residential US access and inspect retry failures. Test a small rerun before scaling. Never replace null prices with zero or report them as a discount.

If the dataset stops at the page limit, decide whether more pages would answer your question. Increasing maxPages beyond Walmart's search ceiling cannot force unavailable pages. A product missing from a limited search is not enough evidence to mark it discontinued.

For product research on other platforms, see Amazon storefront exports and AliExpress listings. Compare exact models and offer scope before combining prices.

For collecting dated Walmart price snapshots, see the Node.js example. Use the current input fields above if the example differs.

Frequently asked questions

Are residential proxies required?

Yes, in practice. The current schema specifies residential US proxies and says a paid Apify plan is needed for that access.

Does maxPages limit the whole run?

No. It applies to each keyword or URL. Walmart also imposes its own search-page ceiling.

Does wasPrice provide historical price tracking?

No. It is Walmart’s displayed reference value. Save repeated dated price observations to build your own history.

Piotr Vassev

Piotr Vassev

Founder of FalconScrape. Building production-grade web scraping systems and data automation pipelines for businesses worldwide.

Connect on LinkedIn