Home Depot Product Scraper avatar

Home Depot Product Scraper

Pricing

Pay per event

Go to Apify Store
Home Depot Product Scraper

Home Depot Product Scraper

Extract Home Depot products, prices, ratings, specifications, images, promotions, and ZIP/store-localized fulfillment from keywords and URLs.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract structured Home Depot product, price, rating, specification, image, promotion, and local fulfillment data from search terms and public product URLs.

Use it for retail intelligence, price monitoring, assortment research, contractor sourcing, brand tracking, and store-level availability checks.

No Home Depot login is required.

What does Home Depot Product Scraper do?

Home Depot Product Scraper turns public homedepot.com pages into export-ready records.

Give it one or more:

  • ๐Ÿ”Ž Search keywords such as cordless drill
  • ๐Ÿ”— Home Depot search result URLs
  • ๐Ÿงฐ Home Depot product detail URLs

The Actor returns unique products with identifiers, commercial data, content, social proof, and location-aware fulfillment details.

It handles Home Depot's public anti-bot layer with US residential browser sessions and bounded retries.

Who is it for?

Retail pricing teams

Track current prices, original prices, promotions, and local inventory for comparable products.

Brands and manufacturers

Monitor how products appear on Home Depot, including titles, images, ratings, review counts, specifications, and availability.

Contractors and procurement teams

Compare products and check pickup, delivery, quantity, and store context before purchasing.

Market researchers

Build repeatable snapshots of categories, brands, assortments, and customer demand signals.

Data and automation teams

Feed clean Home Depot data into databases, dashboards, spreadsheets, webhooks, APIs, and AI agents.

Why use this Home Depot scraper?

  • โœ… Search by keyword or scrape exact product URLs
  • โœ… Receive clean JSON, CSV, Excel, XML, and RSS exports
  • โœ… Deduplicate products by Home Depot item ID
  • โœ… Capture price, promotion, rating, images, and inventory in one row
  • โœ… Localize fulfillment with a store ID and US ZIP code
  • โœ… Avoid maintaining anti-bot browser infrastructure
  • โœ… Pay only for the run start and products successfully saved
  • โœ… Integrate through Apify API, schedules, webhooks, and MCP

What Home Depot data can you extract?

FieldDescription
itemIdHome Depot Internet item ID
productUrlCanonical public product URL
titleProduct name
brandBrand or manufacturer
modelNumberManufacturer model number
storeSkuHome Depot store SKU
parentIdParent or product-family item ID
productTypeHome Depot product classification
priceCurrent localized price when displayed
originalPriceOriginal price when displayed
promotionPromotion and savings metadata
ratingAverage customer rating
reviewCountTotal customer review count
imageUrlsFull-size product image URLs
descriptionProduct description on detail pages
highlightsProduct highlights on detail pages
specificationsName/value specification table
categoriesHome Depot category hierarchy
availabilityBuyable and discontinued status
fulfillmentPickup, shipping, delivery, and inventory rows
storeIdStore context requested by the user
zipCodeDelivery ZIP context requested by the user
sourceUrlInput page that produced the record
scrapedAtUTC extraction timestamp

Search pages naturally contain fewer detail fields than product pages.

Use product URLs when specifications and long descriptions are essential.

How to scrape Home Depot products

  1. Open the Actor input page.
  2. Add one or more search keywords or Home Depot URLs.
  3. Set a low maxItems value for your first test.
  4. Enter the delivery ZIP code and Home Depot store ID you want to monitor.
  5. Click Start.
  6. Preview records in the Home Depot products dataset view.
  7. Export the dataset or connect it to your workflow.

A first run with one keyword and 10 products is usually enough to validate the fields.

Input options

Search keywords

keywords is an array of Home Depot search phrases.

Examples:

  • cordless drill
  • french door refrigerator
  • patio furniture
  • Milwaukee M18

Product or search URLs

productUrls accepts public Home Depot product pages and search result pages.

You can mix keyword and URL inputs in the same run.

Maximum products

maxItems is the global limit across every input.

Duplicate item IDs do not count twice.

Delivery ZIP code

zipCode sets the requested US delivery context.

The default is 30303.

Home Depot store ID

storeId sets the requested store context for price and fulfillment data.

The default is 121.

Input example

{
"keywords": ["cordless drill", "impact driver"],
"productUrls": [
{
"url": "https://www.homedepot.com/p/Whirlpool-25-cu-ft-French-Door-Refrigerator-in-Fingerprint-Resistant-Stainless-Steel-WRF555SDFZ/301711642"
}
],
"maxItems": 25,
"zipCode": "30303",
"storeId": "121"
}

Output example

{
"itemId": "326680222",
"productUrl": "https://www.homedepot.com/p/RYOBI-ONE-18V-Cordless-3-8-in-Drill-Driver-Kit-with-Compact-Battery-and-Charger-PCL201K1/326680222",
"title": "ONE+ 18V Cordless 3/8 in. Drill/Driver Kit with Compact Battery and Charger",
"brand": "RYOBI",
"modelNumber": "PCL201K1",
"storeSku": "1010127831",
"price": 49.97,
"originalPrice": 49.97,
"currency": "USD",
"rating": 4.6051,
"reviewCount": 3991,
"categories": ["Tools", "Power Tools", "Drills", "Power Drills"],
"storeId": "121",
"zipCode": "30303",
"scrapedAt": "2026-07-14T06:26:48.616Z"
}

Fields unavailable on a source page are omitted rather than invented.

How much does it cost to scrape Home Depot products?

This Actor uses pay-per-event pricing.

You pay a small run-start fee plus a per-product event for records successfully saved.

The exact tier price appears on the Actor pricing tab before you run it.

Residential browser traffic and compute are included in the Actor's pricing model; no separate proxy setup is needed.

Start with a low maxItems value to estimate the cost of your workflow.

Price monitoring workflow

Schedule a run daily or weekly with stable keywords and location settings.

Export these fields into your database:

  • itemId
  • price
  • originalPrice
  • promotion
  • availability
  • fulfillment
  • scrapedAt

Compare each snapshot with the previous one to detect price, promotion, or stock changes.

Use a webhook to notify Slack, email, or your internal system when values change.

Local inventory and fulfillment

Home Depot data can vary by store and ZIP code.

The fulfillment array can include:

  • Buy online, pick up in store
  • Ship to home
  • Express or scheduled delivery
  • Store name and location ID
  • Inventory quantity and stock flags
  • Distance from the selected location
  • Delivery timeline and charge

Availability is public but can change quickly.

Treat each run as a timestamped observation, not a reservation guarantee.

Search pages versus product pages

Search pages are efficient for assortment discovery.

They usually include:

  • IDs
  • Titles and brands
  • Prices and promotions
  • Ratings and review counts
  • Images
  • Category paths
  • Fulfillment summaries

Product pages are best for enrichment.

They can additionally include:

  • Long descriptions
  • Product highlights
  • Full specification tables
  • More images
  • Rich product metadata

For a two-stage workflow, scrape search results first and then run selected productUrl values through a detail job.

Tips for reliable runs

  • ๐ŸŽฏ Keep the first run to 5โ€“10 products.
  • ๐Ÿ“ Use a real US ZIP code and its matching Home Depot store ID.
  • ๐Ÿ”— Prefer canonical Home Depot URLs.
  • ๐Ÿงฉ Use detail URLs when specifications are required.
  • โฑ๏ธ Schedule at a reasonable frequency; inventory may change throughout the day.
  • ๐Ÿงน Deduplicate downstream by itemId and scrapedAt.
  • ๐Ÿ”„ Retry a failed run later if Home Depot temporarily restricts public traffic.

The Actor automatically rotates up to six residential sessions per source.

Export formats

Apify datasets support:

  • JSON
  • JSONL
  • CSV
  • Excel
  • XML
  • RSS

Choose a clean export to omit hidden dataset metadata.

Large image and fulfillment arrays are preserved most naturally in JSON.

Integrations

Google Sheets

Send each completed dataset to a spreadsheet for a lightweight price watch list.

Webhooks

Trigger an automation when the run succeeds, fails, or times out.

Make and Zapier

Connect product records to alerts, CRM objects, catalog audits, or reporting flows.

Amazon S3 and cloud storage

Archive timestamped JSON snapshots for historical analysis.

Databases and BI tools

Load stable item IDs and numeric fields into PostgreSQL, BigQuery, Snowflake, or a dashboard.

API usage

JavaScript API access

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/home-depot-product-scraper').call({
keywords: ['cordless drill'],
maxItems: 10,
zipCode: '30303',
storeId: '121'
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

API access with Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('automation-lab/home-depot-product-scraper').call(run_input={
'keywords': ['cordless drill'],
'maxItems': 10,
'zipCode': '30303',
'storeId': '121',
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

API access with cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~home-depot-product-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keywords":["cordless drill"],"maxItems":10,"zipCode":"30303","storeId":"121"}'

Poll the returned run ID, then download items from its default dataset.

Use with Apify MCP

Connect the Actor to AI assistants through the Apify MCP server:

https://mcp.apify.com?tools=automation-lab/home-depot-product-scraper

Claude Code setup

$claude mcp add --transport http apify-home-depot "https://mcp.apify.com?tools=automation-lab/home-depot-product-scraper"

Then ask:

Scrape 10 Home Depot cordless drills for store 121 and compare price, rating, and pickup quantity.

Claude Desktop setup

Add this server to the Claude Desktop MCP configuration:

{
"mcpServers": {
"apify-home-depot": {
"url": "https://mcp.apify.com?tools=automation-lab/home-depot-product-scraper"
}
}
}

Then ask:

Extract this Home Depot refrigerator page and summarize its specifications and customer rating.

Cursor setup

Use the same mcpServers JSON in Cursor MCP settings and enable apify-home-depot.

VS Code setup

Add the same HTTP MCP URL through the VS Code MCP server settings, then select the Home Depot tool in agent mode.

Example prompts

  • "Scrape 10 Home Depot cordless drills and rank them by rating and price."
  • "Extract this Home Depot appliance page and summarize its dimensions and warranty."
  • "Monitor patio furniture for ZIP 10001 and show products available for pickup."
  • "Compare current price, original price, promotion, and inventory for these product URLs."

Agent workflow prompt

Run a weekly Home Depot patio furniture monitor for ZIP 10001, store 6175, and flag products whose price changed.

MCP makes the Actor callable as a tool while datasets preserve the complete structured result.

Scheduling and webhooks

Create an Apify schedule for recurring monitoring.

Use the same input on each run so item IDs and location context remain comparable.

A webhook can send the run dataset ID to your processing service.

Recommended pattern:

  1. Schedule the Actor.
  2. Receive a successful-run webhook.
  3. Download the default dataset.
  4. Compare it with the previous snapshot.
  5. Store changes and send alerts.

Data quality and limitations

Home Depot controls the source data and can change page structure, prices, inventory, and availability.

Some products intentionally hide prices or are store-only.

Search records may not contain full specifications.

A selected store may not serve every ZIP code.

The Actor extracts public observations and does not place orders, reserve inventory, or access accounts.

Legality and responsible use

This Actor accesses public product pages without logging in.

You are responsible for your use case, collection volume, storage, and compliance with applicable laws and website terms.

Do not use the Actor to collect personal data, bypass access controls, or interfere with the source service.

Use reasonable schedules and retain only data needed for a legitimate purpose.

Troubleshooting

Why did a run return no products?

Check that the URLs are public homedepot.com product or search pages and that keywords are not empty.

Home Depot may temporarily block public sessions; retry later if all six bounded sessions fail.

Why is price missing?

Some products hide price, require store selection, are unavailable, or expose price only for a different location.

Try a relevant store ID and ZIP code.

Why are specifications empty?

Search pages expose overview data.

Run the returned productUrl as a detail input for richer fields.

Why does inventory differ from the website?

Inventory changes quickly and may depend on location, quantity, delivery method, and source timing.

Use scrapedAt, storeId, and zipCode when comparing observations.

FAQ

Does the Actor require a Home Depot account?

No.

It accesses public US product and search pages anonymously.

Can I scrape multiple keywords?

Yes.

Add several values to keywords; the global maxItems limit applies across them.

Are duplicate products returned?

No.

Records are deduplicated by Home Depot item ID within each run.

Can I scrape reviews?

The Actor returns aggregate rating and review count.

It does not output individual review records.

Can I monitor a specific store?

Yes.

Set storeId and zipCode and preserve those values across scheduled runs.

Does it support Canada or Mexico?

No.

The current Actor targets the public US homedepot.com catalog.

Combine this Actor with other automation-lab retail tools:

Use source-specific IDs separately and join products by model number, GTIN, brand, or normalized title when appropriate.

Support

If a valid public Home Depot input fails consistently, open an issue from the Actor page.

Include:

  • The input URL or keyword
  • Store ID and ZIP code
  • Approximate run time
  • The failing run URL
  • The expected product or field

Do not include passwords, account cookies, payment details, or other secrets.