Costco Scraper — Prices, Item Numbers, Ratings & Specs avatar

Costco Scraper — Prices, Item Numbers, Ratings & Specs

Pricing

from $5.00 / 1,000 costco product scrapeds

Go to Apify Store
Costco Scraper — Prices, Item Numbers, Ratings & Specs

Costco Scraper — Prices, Item Numbers, Ratings & Specs

Scrape Costco.com by keyword or product/category URL: prices, item numbers, brand, ratings, availability, images, and optional specs. Uses a managed JavaScript unlocker with browser-proxy fallback and transparent run outcomes. Pay per event. MCP-ready.

Pricing

from $5.00 / 1,000 costco product scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Costco Scraper — Prices, Item Numbers & Ratings

Costco Scraper is an Apify Actor for Costco.com public catalog data. It accepts a keyword, a Costco search or category URL, or a direct product URL, and returns one normalized record per product with title, price, item number, brand, rating, reviews, availability, image, and source details. It is usable through Apify MCP, and each record represents one Costco product from the live catalog context.

Best fit and connected workflows

This Actor fits workflows that start with Costco.com search, category, or product pages and end with structured product rows in an Apify dataset. Common routing patterns include:

  • Keyword discovery from Costco search results such as laptop or olive oil.
  • Category monitoring from Costco listing pages.
  • Direct product lookups from .product.<id>.html URLs.
  • AI agent workflows through Apify MCP when an agent needs Costco product facts, provenance, and a bounded result count.

For broader pipelines, the dataset can feed spreadsheets, databases, dashboards, or monitoring jobs that compare Costco product facts over time.

Practical scenario

Maya, a procurement analyst, starts with the keyword robot vacuum and a modest maxResults value. The Actor returns product rows with title, public price, item number, rating, review count, availability, product URL, and image URL. Maya uses those fields to shortlist a few Costco items, then opens the product URLs for a closer review and compares the item numbers against her internal buying notes.

Input fields

FieldTypePurpose
searchQuerystringKeyword search on Costco.com, such as laptop or patio set.
startUrlsarray of stringsCostco search, category, or product URLs. Product URLs return one full detail record.
maxResultsintegerMaximum number of product records to return across all sources.
minPriceintegerKeep products at or above this USD price.
maxPriceintegerKeep products at or below this USD price.
minRatingintegerKeep products at or above this star rating.
enrichProductDetailsbooleanOpen product detail pages for breadcrumbs, full specs, description, and image gallery.
proxyConfigurationobjectOptional proxy settings for the browser fallback.

Focused JSON input example

{
"searchQuery": "robot vacuum",
"maxResults": 10,
"minPrice": 100,
"minRating": 4,
"enrichProductDetails": true,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Output fields

The default dataset contains product records. The live dataset contract includes the following fields.

FieldTypeMeaning
recordTypestringDataset row type, with product as the product record value.
titlestringCostco product title shown in the catalog or product page.
productUrlstringCanonical Costco product URL for the record.
itemIdstringCostco item ID when available.
itemNumberstringCostco item number when available.
skustringCostco SKU when available.
manufacturerSkustringManufacturer SKU when available.
brandstringBrand name extracted from the product data.
pricenumberCurrent price in the listed currency.
originalPricenumberOriginal price when shown.
savingsnumberSavings amount when shown.
savingsPercentintegerSavings percentage when shown.
currencystringCurrency code such as USD when present.
requiresMembershipbooleanMembership pricing signal from Costco.
ratingnumberAverage star rating when present.
reviewCountintegerPublic review count when present.
availabilitystringPublic stock or availability signal.
imageUrlstringMain product image URL.
imagesarrayAdditional image URLs from the gallery.
breadcrumbsarrayCategory breadcrumbs from detail enrichment.
categorystringCategory name when available.
subCategorystringSubcategory name when available.
dimensionsstringProduct dimensions when available.
weightstringProduct weight when available.
materialstringMaterial when available.
colorstringColor when available.
descriptionstringProduct description when enriched.
featuresarrayFeature bullets when available.
specsobjectStructured specifications when enriched.
shippingInfostringShipping information when available.
freeShippingbooleanFree shipping flag when available.
promoFlagstringPromotion label when available.
variantCountintegerNumber of variants when available.
positionintegerResult position in a listing.
searchQuerystringSearch term used for the run.
sitestringSite source marker when available.
sourceUrlstringSource page URL.
retrievalMethodstringRoute used to obtain the record.
scrapedAtstringTimestamp of collection.
_warningsarrayRecord-level warnings when present.

Illustrative dataset record

{
"recordType": "product",
"title": "Example Costco Product",
"productUrl": "https://www.costco.com/example.product.100000001.html",
"itemId": "100000001",
"itemNumber": "100000001",
"brand": "Example Brand",
"price": 49.99,
"originalPrice": 59.99,
"savings": 10,
"savingsPercent": 17,
"currency": "USD",
"requiresMembership": false,
"rating": 4.7,
"reviewCount": 218,
"availability": "In Stock",
"imageUrl": "https://cdn.example.com/product.jpg",
"searchQuery": "example",
"sourceUrl": "https://www.costco.com/CatalogSearch?keyword=example",
"retrievalMethod": "listing",
"scrapedAt": "2026-07-20T12:00:00.000Z"
}

How it works

The Actor supports keyword search and Costco URLs. Listing pages are auto-detected and paginated until maxResults is reached. Product URLs return one full detail record. When enrichProductDetails is enabled for keyword or listing runs, the Actor opens each product detail page to add the item number, brand, breadcrumbs, full specifications, description, and image gallery.

Costco.com is protected by Akamai. The Actor first uses a managed US JavaScript-unlocker route, then falls back to browser-proxy handling when needed. The default dataset contains the product rows, and the key-value store contains machine-readable OUTPUT and RUN_SUMMARY records for the run outcome.

Pricing

This Actor uses Pay per event plus Apify platform usage.

  • Actor start event: charged once per run start.
  • Product event: charged for each product record written to the dataset.

For example, a run that returns ten product records uses eleven Actor events total: one start event and ten product events. Apify compute and proxy usage are billed separately by the platform. For current pricing details, open the live Pricing tab for this Actor when planning a run size or schedule.

Use with AI agents (MCP)

This Actor is available through Apify MCP as a structured Costco product-data tool. The exact Actor identity is khadinakbar/costco-scraper.

A practical MCP use case is a retrieval step where an agent gathers Costco catalog facts, then reads the dataset for product rows and the run store for the outcome metadata.

Search Costco for wireless headphones, return up to 10 product rows, and then summarize the title, public price, item number, rating, review count, availability, and source URL for each product. Read the dataset for product rows and the OUTPUT record for the run outcome.

The agent can interpret the dataset as structured product facts and use sourceUrl plus scrapedAt as provenance for downstream comparisons. For listing runs, position and searchQuery help preserve search context. For pagination and cost guidance, maxResults sets the product cap across all sources, and each product written to the dataset is a billable event. The OUTPUT and RUN_SUMMARY records provide outcome, route, validation, and billing diagnostics when present.

Run with the Apify API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('khadinakbar/costco-scraper').call({
searchQuery: 'wireless headphones',
maxResults: 5,
enrichProductDetails: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
console.log(item.title, item.price, item.itemNumber);
}
from apify_client import ApifyClient
import os
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("khadinakbar/costco-scraper").call(
run_input={
"searchQuery": "protein powder",
"maxResults": 5,
"enrichProductDetails": False,
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("title"), item.get("price"), item.get("itemNumber"))

Best results and outcome guidance

Start with a narrow keyword or a specific Costco URL and a modest maxResults value. Use startUrls when you already have a search, category, or product page. Turn on enrichProductDetails when you need breadcrumbs, full specs, description, or the image gallery. Use minPrice, maxPrice, and minRating to shape the returned dataset before downstream processing. For AI agent workflows, read both the dataset and the OUTPUT record so the agent can separate product facts from run outcome metadata.

Continue the workflow

Design note

I found that the live dataset contract makes recordType and scrapedAt required on every product row. That means every stored product record carries a clear record type and a collection timestamp.

FAQ

Can I start from a Costco search page instead of a keyword?

Yes. startUrls accepts Costco search pages, category pages, and product pages. The Actor auto-detects the URL type.

When should I use searchQuery?

Use searchQuery when you want the Actor to open Costco search results from a keyword such as laptop or patio set.

What happens with a Costco product URL?

A product URL returns one full detail record. This is useful when you already know the exact product page and want the full structured record.

Can I keep the output focused on a price range or rating range?

Yes. Use minPrice, maxPrice, and minRating to shape the returned product rows before they are written to the dataset.

Is this Actor usable through Apify MCP?

Yes. It is an Apify Actor usable through Apify MCP, and it returns structured Costco product data that an agent can read from the dataset.

Where are run outcome details stored?

The default dataset stores the product rows. The key-value store contains OUTPUT and RUN_SUMMARY records with outcome and execution diagnostics.

Responsible use

Use this Actor only for public Costco.com catalog pages and publicly visible product data. Keep requests within the requested scope, respect applicable law and site terms, and use the returned source URL and timestamp when you cite or compare product facts.