Costco Scraper
Costco Scraper
Extract product data from Costco.com — prices, member prices, descriptions, ratings, images, and availability. Paste in product detail page URLs.
What it does
Point it at Costco.com product pages and it returns structured product records: item number, title, regular price, member price, description, rating, review count, availability, images, and category breadcrumb.
Bright Data Web Unlocker handles Costco's Akamai bot protection server-side so you don't have to.
Inputs
| Field | Type | Description |
|---|---|---|
startUrls |
array | Costco product detail page URLs (https://www.costco.com/p/-/<slug>/<itemNumber>). Category/browse URLs are accepted as a best effort. |
maxItems |
integer | Cap on total records (default: 100) |
If startUrls is empty the actor exits with an error. Keyword search is not supported — Costco's search endpoint is not reachable through the unblocker.
Output
Each record in the dataset:
{
"item_number": "4000140441",
"product_url": "https://www.costco.com/p/-/kutano-commercial-1-door-merchandiser-refrigerator/4000140441",
"title": "Kutano Commercial 1-Door Merchandiser Refrigerator",
"price": "$1849.99",
"member_price": "",
"description": "Kutano Commercial 1-Door Merchandiser Refrigerator, Stylish Black Laminated Vinyl...",
"rating": "4.09",
"review_count": "",
"availability": "",
"images": "https://bfasset.costco-static.com/...",
"specifications": "",
"categories": "",
"scraped_at": "2026-06-24T19:37:21.596Z"
}
How it works
- Product detail URLs (
/p/-/<slug>/<itemNumber>) go straight to the product handler, which parses Costco's Next.js RSC payload for the product data. - Category/collection URLs are treated as listing pages: product links are collected from the rendered HTML and each product page is then fetched.
Bot protection is handled transparently via Bright Data Web Unlocker — no proxy configuration, no CapSolver, no Playwright.
Limitations
- Member pricing is only populated when Costco exposes it without authentication.
- Specifications table extraction depends on the page rendering consistently; some product types (electronics, tires) use non-standard markup.
- Keyword search is not supported. Provide product detail URLs directly.
- Category pages are large and slow through the unblocker, and link density varies by category — direct product URLs are the most reliable input.