Walmart Price & Stock Monitor — Products, Sellers, Buy Box avatar

Walmart Price & Stock Monitor — Products, Sellers, Buy Box

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Walmart Price & Stock Monitor — Products, Sellers, Buy Box

Walmart Price & Stock Monitor — Products, Sellers, Buy Box

Track Walmart product prices, rollbacks, stock status and marketplace-seller competition. Give it your own item IDs or URLs and re-run on a schedule to watch prices move — or discover products from Walmart's own sitemaps. Unit prices, discounts, buy-box offer counts. Company-level data only.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

mochi

mochi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Walmart Price & Stock Monitor — Products, Sellers & Buy Box

Track Walmart.com prices, rollbacks, stock status and marketplace-seller competition — on your own watch-list of products, on a schedule.

Give the actor a list of Walmart product URLs or item IDs, run it daily or weekly, and you get one clean row per product every time: current price, was-price, discount, unit price, in-stock status, who is selling it, and how many other sellers are competing for the same listing. Diff two runs and you have a price-and-availability history.

No API key. No login. No browser automation — the actor reads the structured product data Walmart already embeds in each page, so runs are fast and cheap.


What it is for

You want to…How this actor does it
Watch competitor pricesFeed your competitors' item IDs, schedule a daily run, diff currentPrice between runs
Catch rollbacks and clearancepriceFlags / isRollback mark promotional pricing the moment it appears
Monitor MAP compliancesellerName + sellerType + additionalOfferCount show who else is listing your product and whether a marketplace seller undercut you
Track stock-outsavailabilityStatus / inStock on every run
Compare across pack sizesunitPrice + unitPriceMeasure normalise to $/oz, $/ct, etc.
Build a product datasetDiscover products from Walmart's own sitemaps when you don't have a list yet

The data changes constantly, which is the point — this is a monitoring tool, not a one-off catalogue dump.


Input

Everything is optional. Running with empty input discovers 20 popular products from Walmart's sitemap so you can see the output shape immediately.

FieldTypeDefaultWhat it does
productUrlsarray[]Walmart product-page URLs, e.g. https://www.walmart.com/ip/Redken-Extreme-Length-Shampoo-10-1-oz/620196775
itemIdsarray[]Bare item IDs, e.g. 620196775 — the number at the end of a product URL
discoverFromSitemapbooleantrueWhen no URLs/IDs are given, discover products from Walmart's published sitemaps
sitemapTypeselecthigh-interesthigh-interest (popular items) or long-tail (broad catalogue) — see the note below, they behave very differently
maxResultsinteger20Max product pages per run
onlyInStockbooleanfalseSkip unavailable products
minDiscountPercentinteger0Only return products at least this % below their was-price
proxyConfigurationobjectApify Proxy onRecommended — see Reliability below

Example — monitor a watch-list

{
"itemIds": ["620196775", "39263624", "125113428"],
"onlyInStock": false
}
{
"discoverFromSitemap": true,
"sitemapType": "high-interest",
"maxResults": 200,
"minDiscountPercent": 20
}

Output

One row per product:

{
"itemId": "125113428",
"name": "Intex 10722 Hose Conversion Adapters Kit - 2 Pack",
"brand": "Intex",
"productType": "Outdoor Spa Accessories",
"upc": "018100963675",
"modelNumber": "10722",
"productUrl": "https://www.walmart.com/ip/Intex-10722-Hose-Conversion-Adapters-Kit-2-Pack/125113428",
"currentPrice": 8.99,
"currency": "USD",
"wasPrice": 10.99,
"discountAmount": 2,
"discountPercent": 18.2,
"unitPrice": null,
"unitPriceMeasure": null,
"priceFlags": [],
"isRollback": false,
"availabilityStatus": "IN_STOCK",
"inStock": true,
"fulfillmentType": "MARKETPLACE",
"sellerName": "MyQuickBuy",
"sellerType": "EXTERNAL",
"isMarketplaceSeller": true,
"catalogSellerId": 364,
"additionalOfferCount": 0,
"hasCompetingOffers": false,
"averageRating": 4.6,
"reviewCount": 13,
"categoryPath": ["Patio & Garden", "Hot Tubs", "Hot Tub Accessories", "Hot Tub Parts"],
"category": "Hot Tub Parts",
"imageUrl": "https://i5.walmartimages.com/seo/...jpeg",
"imageCount": 2,
"source": "walmart.com",
"discoveredVia": "sitemap:high-interest",
"scrapedAt": "2026-08-02T02:20:11.821Z"
}

sellerType is INTERNAL when Walmart itself sells the item and EXTERNAL when a marketplace seller does. additionalOfferCount is how many other sellers offer the same listing — the buy-box competition signal.

Three dataset views are provided: Products (everything), Price watch (price fields only) and Seller & buy box.


Honest notes on coverage

These are measured numbers from real runs, not estimates. They matter because they tell you what to expect.

Field fill depends heavily on how popular the product is. Two samples of 40 products each:

High-interest sitemapLong-tail sitemap
Sold by a marketplace (3P) seller43%~0%
Carries a rating95%9%
Has competing offers from other sellers24%3%
Carries a was-price at that moment19%12%

So: wasPrice, discountPercent, averageRating and additionalOfferCount are frequently null on obscure products, and usually present on popular ones. A null was-price means the item simply isn't on promotion right now — it is not a scrape failure. additionalOfferCount normalises to 0 (not null) when there is no competing offer.

Sitemap entries go stale. Roughly 8–10% of URLs in Walmart's own sitemaps return HTTP 404 (delisted products). These are reported in the run log as delisted, not written as empty rows. If you supply your own item IDs this does not affect you.

Out-of-stock items may have no price. That is Walmart's behaviour, and the row is still written — availabilityStatus: "OUT_OF_STOCK" with currentPrice: null is meaningful data for a stock monitor.


Reliability

Walmart intermittently serves a page shell without the embedded product data. Measured across 80 pages, about 20% of requests hit this on the first attempt and succeeded on a retry, so the actor retries each page up to 3 times with backoff and rotates its proxy IP between attempts.

Every run ends with an explicit tally:

Done. 17 product(s) written · 3 delisted (404) · 0 unparseable after 3 attempts · 0 fetch errors · 0 filtered out.

If a page never yields data, you are told — the actor does not silently return short results.

Use Apify Proxy (the default). Without it, expect a higher miss rate.


How it finds products, and what it will not do

Walmart's robots.txt disallows /search and /api/ for all crawlers. This actor honours that — it never touches Walmart's search or internal APIs.

Instead it uses the 34 sitemaps that Walmart publishes in its own robots.txt, which is the sanctioned way to enumerate products. Product pages (/ip/...) carry no crawl restriction.

Consequence to be aware of: there is no keyword search. You cannot ask this actor for "wireless earbuds under $50". You give it products (by URL or ID), or you let it sample Walmart's sitemaps. For the monitoring use case this is rarely a limitation, because you already know which products you care about.


Data protection

Product- and company-level data only. sellerName is the business entity listed on the marketplace.

Review text and reviewer identities are never fetched or emitted — only the aggregate averageRating and reviewCount. There is no personal data in the output.


Scheduling

Use Apify Schedules to run daily or weekly, then compare datasets between runs to build price and availability history. Pair with the Price watch dataset view for a compact diff.