Grocery Product Scraper for Instacart
Pricing
from $5.00 / 1,000 products
Grocery Product Scraper for Instacart
Scrapes product details, retailer storefronts and cross-retailer search results from instacart.com. Independent tool, not affiliated with or endorsed by Instacart.
Pricing
from $5.00 / 1,000 products
Rating
0.0
(0)
Developer
FalconScrape
Maintained by CommunityActor stats
1
Bookmarked
26
Total users
6
Monthly active users
11 days ago
Last modified
Categories
Share
π Grocery Product Scraper for Instacart
Extract product data from Instacart across 70+ US grocery retailers β Costco, Safeway, Walmart, Target, Sprouts, Kroger, Publix, Wegmans, Whole Foods and more. The Instacart Scraper pulls structured product details from individual product pages, retailer storefronts, and cross-retailer search results in one run.
β¨ Features
- π·οΈ Rich Product Data: Names, brands, sizes, images, prices, sale prices, availability, dietary attributes, and category.
- π¬ Three Source Types: Product detail pages (PDPs), retailer storefronts (~32 featured items per store), and cross-retailer search (~14 items per query, mixed retailers).
- πΊπΈ Multi-Retailer Coverage: A single run can sweep Costco, Safeway, Walmart, Target, Sprouts and any other Instacart partner store.
- β‘ Fast & Lightweight: Plain HTTP via CheerioCrawler β no browser overhead. Each request returns a fully populated product feed item.
- π ZIP-Aware: Records the postal code context against every item (Instacart prices vary by ZIP).
π οΈ How It Works
- Configure the input β Provide any mix of Instacart URLs, retailer slugs, search queries, and product IDs.
- Run the Actor β It fetches each page, parses the embedded Apollo state and JSON-LD, and emits one record per product.
- Download the dataset β Get clean JSON / CSV / Excel output ready for analysis, monitoring, or further enrichment.
π₯ Input
All input fields are optional. Combine them freely β for example, scrape three retailer storefronts plus a few direct PDPs in one run.
| Field | Type | Description | Example |
|---|---|---|---|
startUrls | array | Any Instacart URLs: PDPs (/products/...), retailer storefronts (/store/{retailer}), or cross-retailer search (/store/s?k=...). Unsupported URL families are skipped. | [{ "url": "https://www.instacart.com/store/costco" }] |
retailerSlugs | string[] | Retailer slugs to scrape as storefronts. Equivalent to passing /store/{slug} start URLs. | ["costco", "safeway", "target"] |
searchQueries | string[] | Free-text queries run against cross-retailer search. Only the first SSR page is captured (~14 items per query). | ["milk", "bread"] |
productIds | string[] | Instacart product IDs fetched directly as PDPs. | ["7079", "20630136"] |
defaultRetailerSlug | string | Retailer to attach as ?retailerSlug= when fetching productIds. Leave empty for Instacart's default market. | "safeway" |
seedFromHome | boolean | If true, fetch https://www.instacart.com/ and enqueue every retailer storefront found on it. | false |
postalCode | string | US ZIP code recorded against each item. Instacart defaults to 94105 (San Francisco). | "10001" |
maxItems | integer | Stop pushing to the dataset after this many products. 0 = unlimited. | 50 |
proxyConfiguration | object | Apify proxy settings. Instacart works from any IP for these endpoints; a US proxy gives more accurate location defaults. | { "useApifyProxy": false } |
π Sample Output Data
Every record follows the same shape regardless of source (PDP, storefront, or search). The source field tells you where each item came from.
[{"id": "items_88059-20630136","productId": "20630136","retailerSlug": "walmart","retailerId": null,"shopId": null,"url": "https://www.instacart.com/products/20630136-great-value-2-reduced-fat-milk-1-gal?retailerSlug=walmart","name": "Great Value 2% Reduced Fat Milk","brand": "Great Value","size": "128 oz","image": "https://d2lnr5mha7bycj.cloudfront.net/product-image/file/large_5c855497.jpeg","category": "Plain Milk","description": null,"price": 3.48,"priceString": "$3.48","fullPriceString": null,"priceCurrency": "USD","availability": "InStock","dietaryAttributes": [],"source": "pdp","postalCode": "94105","scrapedAt": "2026-05-23T06:26:03.293Z"},{"id": "items_74-20110703","productId": "20110703","retailerSlug": "costco","url": "https://www.instacart.com/products/20110703-kirkland-signature-mini-chocolate-chip-cookies-60-ct?retailerSlug=costco","name": "Kirkland Signature Mini Chocolate Chip Cookies, 60-count","brand": "kirkland signature","size": "each","image": "https://d2lnr5mha7bycj.cloudfront.net/product-image/file/large_63fb7a0f.jpeg","price": 9.94,"priceString": "$9.94","fullPriceString": "$11.94","priceCurrency": "USD","availability": "inStock","dietaryAttributes": [],"source": "storefront","postalCode": "94105","scrapedAt": "2026-05-23T06:26:04.891Z"}]
Build price feeds, run availability checks, and compare grocery prices across US retailers with the Grocery Product Scraper for Instacart today! π
βοΈ Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Instacart or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.