# Walmart Fast Product Scraper (`e-commerce/walmart-fast-product-scraper`) Actor

Scrape product data from Walmart.com and Walmart.ca search and category pages, including name, priceInfo, availability, averageRating, and sellerName. Export data, run via API, schedule and monitor runs, or integrate with other tools.

- **URL**: https://apify.com/e-commerce/walmart-fast-product-scraper.md
- **Developed by:** [E Commerce](https://apify.com/e-commerce) (Apify)
- **Categories:** E-commerce
- **Features:** Full permissions
- **Stats:** 337 total users, 8 monthly users, 82.6% runs succeeded, 6 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

**Powered by [E-commerce Scraping Tool](https://apify.com/apify/e-commerce-scraping-tool).** Need data from other stores too? The E-commerce Scraping Tool gets you data from Walmart, Amazon, eBay, and any other e-commerce site.

## Walmart Fast Product Scraper: bulk product data from search and category pages

> Scrape product data from Walmart.com and Walmart.ca search and category pages - names, prices, ratings, sellers, and availability - with no Walmart API required.

### What does Walmart Fast Product Scraper do?

Walmart Fast Product Scraper extracts structured product data from Walmart.com and Walmart.ca listing pages. Paste a search or category URL and it pulls every product on the page - faster than opening items one by one, and without the official Walmart API.

- ⚡ **Fast by design** - reads many products straight from search and category pages
- 🌎 **Walmart.com and Walmart.ca** - works across both storefronts
- 💰 **Full pricing data** - current price, was-price, unit price, and price ranges
- 🏪 **Seller and availability** - seller name, stock status, and fulfillment type
- 📊 **Structured output** - clean JSON, CSV, or Excel, ready to use

### What data can you extract from Walmart?

| Product data | Pricing and availability | Seller and ratings |
|---|---|---|
| Product name | Price and display price | Seller name and ID |
| Product URL | Was price and unit price | Average rating |
| Product and item ID | Price range | Number of reviews |
| Brand | Availability status | Fulfillment type |
| Thumbnail image | Subscription eligibility | Sponsored and badge flags |

### Can I scrape Walmart product listings, categories, and search results?

Yes. Walmart Fast Product Scraper works on Walmart.com and Walmart.ca search results and category pages. Paste the URLs you want and set how many products to pull from each.

### How does Walmart Fast Product Scraper work?

1. Paste Walmart search or category URLs
2. The Actor opens each listing and reads the product data directly from the page
3. It keeps going up to the `maxProductsPerStartUrl` limit you set
4. Results stream to a dataset you can preview or export as JSON, CSV, or Excel

### How to use Walmart Fast Product Scraper

1. Create a free [Apify account](https://console.apify.com/sign-up)
2. Add Walmart search or category URLs
3. (Optional) Set `maxProductsPerStartUrl` to cap how many products to pull per URL
4. Click **Start**
5. Preview or download your data from the **Dataset** tab

#### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `startUrls` | array | required | Walmart search or category page URLs to scrape, for example `https://walmart.com/search?q=tshirt`. |
| `maxProductsPerStartUrl` | integer | `10` | Maximum number of products to pull from each start URL. |

```json
{
  "startUrls": [{ "url": "https://walmart.com/search?q=tshirt" }],
  "maxProductsPerStartUrl": 10
}
```

### What does the output look like?

Each product is one structured record:

```json
{
  "productId": "690NATIK1K20",
  "usItemId": "533225197",
  "name": "TCL 55\" Class 4-Series 4K UHD HDR Smart Roku TV - 55S451",
  "url": "https://www.walmart.com/ip/.../533225197",
  "averageRating": 4.2,
  "numberOfReviews": 14595,
  "sellerName": "Walmart.com",
  "availability": "IN_STOCK",
  "priceInfo": {
    "price": "$248.00",
    "priceDisplay": "$248.00",
    "wasPrice": null,
    "unitPrice": null
  },
  "fulfillmentType": "STORE",
  "isSponsored": true,
  "badge": "In 200+ people's carts",
  "badges": ["In 200+ people's carts", "Best seller"]
}
```

### Why use Walmart Fast Product Scraper?

| Feature | Official API or manual | Walmart Fast Product Scraper |
|---|---|---|
| Access | No public product API | No API or login needed |
| Setup | Build and maintain a scraper | Paste a URL and run |
| Coverage | Limited or none | Search and category pages, .com and .ca |
| Output | Raw HTML to parse | Structured JSON, ready to use |
| Scale | Rate-limited, manual | Many products per run |

### What can you do with Walmart data?

- **Price comparison** - pricing teams pull `priceInfo` across a category on a schedule to benchmark Walmart prices and discounts against other retailers, and flag when a rival undercuts them.
- **Market research** - analysts map Walmart's assortment by brand, seller, and rating to size a category and spot white space before launching a product.
- **Competitor analysis** - brands track where their products rank for a search term and how `sellerName` and price compare to rivals on the same page.
- **Trend analysis** - merchandising teams watch `numberOfReviews`, `averageRating`, and badges to catch fast-moving products early.

For ongoing monitoring, schedule the Actor to run daily for fast-moving categories or weekly for stable ones.

### How much does Walmart Fast Product Scraper cost?

Walmart Fast Product Scraper uses Apify's pay-per-event pricing: a small fee each time a run starts, plus a per-result fee of $5.00 per 1,000 products on the free tier. That rate drops on higher plans, down to $2.00 per 1,000 products on the Business plan. Apify gives you $5 in free usage credits every month on the [free plan](https://apify.com/pricing), enough to pull around 1,000 products at no cost. See the Actor's **Pricing** tab for the current rate on each plan.

### How do I run Walmart Fast Product Scraper via the Apify API?

```bash
curl -X POST "https://api.apify.com/v2/acts/e-commerce~walmart-fast-product-scraper/runs?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "startUrls": [{ "url": "https://walmart.com/search?q=tshirt" }],
    "maxProductsPerStartUrl": 10
  }'
```

### What can I integrate Walmart Fast Product Scraper with?

The Actor runs on the Apify platform, so its data plugs into the tools you already use:

- **Google Sheets and Excel** - export product data for analysis
- **Make, Zapier, and n8n** - trigger workflows when prices or stock change
- **Slack** - alert your team to restocks or price drops
- **LangChain and MCP** - feed Walmart data into AI agents and apps
- **Apify API and webhooks** - push results into your own database or BI tool

### Limitations

- Scrapes publicly visible listing data; it does not sign in to a Walmart account.
- It does not scrape reviews - use the [Walmart Reviews Scraper](https://apify.com/e-commerce/walmart-reviews-scraper) for that.
- Coverage depends on the current structure of Walmart.com and Walmart.ca pages.

### Troubleshooting

- **No results in the dataset** - Make sure each start URL is a public Walmart search or category page that opens without signing in. Individual product URLs belong in the [Walmart Product Detail Scraper](https://apify.com/e-commerce/walmart-product-detail-scraper).
- **Some fields are empty** - Walmart does not show every field on every listing, so values like `wasPrice` or `unitPrice` can be `null`. This is expected and does not fail the run.
- **Fewer products than expected, or slow runs** - Walmart limits heavy traffic. Keep Apify Proxy enabled, lower `maxProductsPerStartUrl`, or split the work across more runs.

For anything else, open an issue on the Actor's **Issues** tab and include your input and the run URL.

### FAQ

#### Can I scrape Walmart without the official API?

Yes. Walmart Fast Product Scraper reads product data straight from Walmart pages, so you do not need API access or credentials.

#### Can I scrape both Walmart.com and Walmart.ca?

Yes. Paste search or category URLs from either storefront.

#### How many products can I scrape per run?

Set `maxProductsPerStartUrl` to control how many products are pulled from each URL. Add more URLs to scale a single run.

#### Can I scrape Walmart data behind a login?

No. Walmart Fast Product Scraper reads only publicly visible listing data and does not sign in to a Walmart account.

#### Can I get historical Walmart price data?

The Actor captures data as it appears at run time. To build a price history, schedule it to run on a regular interval and store each run's dataset.

#### How often should I schedule Walmart runs?

Run it daily for fast-moving categories such as electronics, and weekly for stable catalogs. For live price or stock alerts, run it hourly on a small set of URLs.

#### Does Walmart Fast Product Scraper scrape reviews?

No. For ratings text and customer reviews, use the [Walmart Reviews Scraper](https://apify.com/e-commerce/walmart-reviews-scraper).

#### Can I run Walmart Fast Product Scraper with the Apify API?

Yes - see the API section above. It runs like any other Apify Actor via REST.

#### Can I use Walmart Fast Product Scraper through an MCP server?

Yes. The Actor is callable through the Apify MCP server, so AI agents can scrape Walmart programmatically.

#### Is it legal to scrape Walmart?

Scraping publicly available data is generally legal, but personal data is protected by GDPR in the European Union and by other regulations elsewhere. Do not scrape personal data without a legitimate reason, and read [is web scraping legal?](https://blog.apify.com/is-web-scraping-legal/) if you are unsure.

### Related Actors

- 🛒 [E-commerce Scraping Tool](https://apify.com/apify/e-commerce-scraping-tool) - get product data from Walmart, Amazon, eBay, and any other e-commerce site
- ⭐ [Walmart Reviews Scraper](https://apify.com/e-commerce/walmart-reviews-scraper) - collect ratings and customer reviews from Walmart

### Changelog

#### 0.0.1

- Initial release: scrape Walmart.com and Walmart.ca search and category pages, cap results per start URL with `maxProductsPerStartUrl`, and export to JSON, CSV, or Excel.

### Your feedback

Found a bug or want a field added? Open an issue on the Issues tab - we read every one.

# Changelog

This Actor's version history is a separate document: https://apify.com/e-commerce/walmart-fast-product-scraper/changelog.md

# Actor input Schema

## `startUrls` (type: `array`):

One or more Walmart search or category page URLs to scrape, for example https://walmart.com/search?q=tshirt. Each page is read in listing order, and its products are collected up to the limit set in Max products (per start URL).

## `maxProductsPerStartUrl` (type: `integer`):

The maximum number of products to scrape from each start URL, for example 10. Products are collected in listing order until this limit is reached.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://walmart.com/search?q=tshirt"
    }
  ],
  "maxProductsPerStartUrl": 10
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://walmart.com/search?q=tshirt"
        }
    ],
    "maxProductsPerStartUrl": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("e-commerce/walmart-fast-product-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://walmart.com/search?q=tshirt" }],
    "maxProductsPerStartUrl": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("e-commerce/walmart-fast-product-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://walmart.com/search?q=tshirt"
    }
  ],
  "maxProductsPerStartUrl": 10
}' |
apify call e-commerce/walmart-fast-product-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,e-commerce/walmart-fast-product-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/dh8ZNhxV8nVztaJuD/builds/npyIPpdUsLTabFJSE/openapi.json
