Grocery Product Scraper for Instacart avatar

Grocery Product Scraper for Instacart

Pricing

from $5.00 / 1,000 products

Go to Apify Store
Grocery Product Scraper for Instacart

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

FalconScrape

Maintained by Community

Actor stats

1

Bookmarked

26

Total users

6

Monthly active users

11 days ago

Last modified

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

  1. Configure the input – Provide any mix of Instacart URLs, retailer slugs, search queries, and product IDs.
  2. Run the Actor – It fetches each page, parses the embedded Apollo state and JSON-LD, and emits one record per product.
  3. 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.

FieldTypeDescriptionExample
startUrlsarrayAny 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" }]
retailerSlugsstring[]Retailer slugs to scrape as storefronts. Equivalent to passing /store/{slug} start URLs.["costco", "safeway", "target"]
searchQueriesstring[]Free-text queries run against cross-retailer search. Only the first SSR page is captured (~14 items per query).["milk", "bread"]
productIdsstring[]Instacart product IDs fetched directly as PDPs.["7079", "20630136"]
defaultRetailerSlugstringRetailer to attach as ?retailerSlug= when fetching productIds. Leave empty for Instacart's default market."safeway"
seedFromHomebooleanIf true, fetch https://www.instacart.com/ and enqueue every retailer storefront found on it.false
postalCodestringUS ZIP code recorded against each item. Instacart defaults to 94105 (San Francisco)."10001"
maxItemsintegerStop pushing to the dataset after this many products. 0 = unlimited.50
proxyConfigurationobjectApify 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.