Costco Products Scraper avatar

Costco Products Scraper

Pricing

from $0.36 / 1,000 product scrapeds

Go to Apify Store
Costco Products Scraper

Costco Products Scraper

Scrape public Costco product search, category, and product-page data for pricing, stock, ratings, images, and catalog research.

Pricing

from $0.36 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Costco Products Scraper exports structured public Costco product data from keywords, search URLs, category URLs, and product URLs. Use it for ecommerce catalog research, price monitoring, assortment checks, stock signal tracking, and repeatable CSV/JSON/API workflows.

What does this scraper do?

  • Search and category extraction: collect Costco products from search terms like laptop or public category URLs like /hair-care.html.
  • Product snapshots: normalize a direct Costco product URL into the same output format when Costco returns it through the public product data route.
  • Buyer-ready product fields: product URL, item number, IDs, name, brand, description, price fields, currency, rating, reviews, availability signals, member-only flag, categories, and images.
  • Cost control: cap total products, products per source, and paginated pages per source.

Costco price tracker and product-data use cases

Use this Costco price tracker workflow to monitor public assortment and visible price changes. The same output also supports a Costco product data API workflow for ecommerce, reporting, and automation.

  • Ecommerce teams: monitor Costco assortment and visible price changes.
  • Market researchers: compare product names, categories, brands, and customer-review signals.
  • Data teams: feed public Costco catalog records into BI, spreadsheets, alerts, and internal APIs.
  • Automation builders: run repeatable Apify tasks or MCP-powered agents with the same JSON input.

Input example

{
"keywords": ["laptop"],
"maxItems": 10,
"maxItemsPerStartUrl": 10,
"maxSearchPagesPerStartUrl": 1
}

Output example

{
"productUrl": "https://www.costco.com/.product.4000318634.html",
"sourceUrl": "https://www.costco.com/s?keyword=laptop",
"itemNumber": "4000318634",
"name": "Lenovo Slim 7i 14\" OLED Touchscreen Copilot+ PC",
"brand": "Lenovo",
"price": 999.99,
"currencyCode": "USD",
"rating": 4.5,
"reviewsCount": 123,
"isInStock": true,
"image": "https://www.costco.com/example.jpg",
"scrapedAt": "2026-07-29T00:00:00.000Z"
}

Input settings

FieldTypeDescription
keywordsstring[]Costco search terms such as laptop, coffee, or vitamins.
startUrlsrequest listCostco search, category, or product URLs.
searchUrlsstring[]Optional plain URL list for compatibility with other Costco scraper inputs.
maxItemsintegerHard cap on total product records.
maxItemsPerStartUrlintegerHard cap for each keyword or URL.
maxSearchPagesPerStartUrlintegerMaximum paginated Costco result pages per source.
proxyConfigurationobjectOptional proxy settings. Default runs without proxy for the public search API route.
debugbooleanSave blocked or malformed response snippets to the key-value store.

Output fields

FieldDescription
productUrl, sourceUrlProduct URL and the input/source URL that produced the record.
productId, groupId, itemNumberCostco product identifiers when available.
name, brand, brands, descriptionProduct text and brand data.
price, listPrice, minPrice, maxPrice, currencyCode, pricePerUnitVisible price data returned by Costco.
rating, reviewsCountReview summary fields when available.
isBuyable, isInStock, availabilityStatus, memberOnlyAvailability and member-only signals.
categoryPaths, image, images, scrapedAtCategory, image, and scrape timestamp metadata.

Input recipes

  • Costco laptop search: {"keywords":["laptop"],"maxItems":25,"maxSearchPagesPerStartUrl":2}
  • Costco category monitor: {"startUrls":[{"url":"https://www.costco.com/hair-care.html"}],"maxItems":25}
  • Costco product snapshot: {"startUrls":[{"url":"https://www.costco.com/.product.4000318634.html"}],"maxItems":1}

Pricing

This Actor uses pay-per-event pricing:

EventPrice
Run start$0.005 per run
Product scraped - Free tier$0.00046 per product
Product scraped - Bronze tier$0.00040 per product
Product scraped - Silver tier$0.000312 per product
Product scraped - Gold tier$0.00024 per product
Product scraped - Platinum tier$0.00016 per product
Product scraped - Diamond tier$0.000112 per product

Tips and limits

  • Keep first runs small (maxItems 10-25) while validating your source terms.
  • Costco may omit optional fields for some products; nullable fields are preserved instead of dropping valid records.
  • This Actor scrapes public product/search/category data only. It does not log in, use private accounts, read carts, or claim warehouse-specific member inventory.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/costco-products-scraper').call({
keywords: ['laptop'],
maxItems: 10
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('fetch_cat/costco-products-scraper').call(run_input={
'keywords': ['laptop'],
'maxItems': 10,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~costco-products-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"keywords":["laptop"],"maxItems":10}'

MCP / agent usage

Use this Actor from Apify MCP when you want an AI agent to collect public Costco product data.

$claude mcp add apify -- npx -y @apify/actors-mcp-server --actors fetch_cat/costco-products-scraper
{
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server", "--actors", "fetch_cat/costco-products-scraper"],
"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }
}
}
}

Example prompts:

  • "Scrape 25 Costco laptop products and return price, rating, and product URL."
  • "Monitor this Costco category URL and list products that are member-only."
  • "Get one product snapshot for this Costco product URL."

Responsible use

This Actor collects public product data. Make sure your use complies with Costco terms, applicable laws, and privacy rules. Do not use it to access accounts, carts, private member data, or non-public systems.

FAQ

What data can I export with Costco Products Scraper? Public listing records can include product IDs, item numbers, names, brands, visible prices, availability signals, review summaries, categories, images, and source URLs when Costco returns them.

Can I run Costco Products Scraper through an API, schedule, or MCP client? Yes. Use the API examples above for programmatic runs, schedule the same input in Apify, or call the Actor from an MCP client.

How much does it cost to use Costco Products Scraper? The Actor charges one run-start event and one event for each product record it saves. Current tier prices are shown in the Pricing section and on the Actor Pricing tab.

Can it scrape warehouse-specific prices? No. It extracts public product/search/category data returned by Costco's public routes.

Why are some price or review fields empty? Costco does not return every optional field for every product. Empty optional fields are kept as null or empty arrays.

Can I use category URLs and keywords together? Yes. Combine keywords, startUrls, and searchUrls; maxItems still caps the total output.

Support

If you need help, open an issue on the Actor page and include:

  • Input JSON: the exact input you used.
  • Expected output: what product, field, or count you expected.
  • Actual output: what the run produced instead.
  • Reproducible public URL: a Costco keyword, category URL, product URL, or public Apify run URL that reproduces the issue.