Gopuff Scraper - US Quick-Commerce Prices & Assortment avatar

Gopuff Scraper - US Quick-Commerce Prices & Assortment

Pricing

from $1.50 / 1,000 product records

Go to Apify Store
Gopuff Scraper - US Quick-Commerce Prices & Assortment

Gopuff Scraper - US Quick-Commerce Prices & Assortment

Scrape Gopuff, the US quick-commerce delivery store, by location or product: prices, promotions, stock and availability per fulfillment location across thousands of everyday products. Availability monitoring (NEW, UPDATED, REAPPEARED, EXPIRED), detail enrichment, incremental runs, MCP export.

Pricing

from $1.50 / 1,000 product records

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Scrape Gopuff, the US quick-commerce delivery store, by location or by product: per-store prices, promotions, stock counts and availability across thousands of everyday products, exported through MCP connectors when you need them elsewhere.

Why This Scraper?

  • Blue-ocean coverage: Gopuff's micro-fulfillment catalog (thousands of products, ~1000 US locations, 15-minute delivery) has no dedicated storefront scraper.
  • Per-location truth: Gopuff prices and assortment differ per fulfillment location. This actor resolves each ZIP/city you name to the storefront's own location and walks the catalog with that location's prices and deals.
  • Promotions, not just prices: multi-buy offers ("2 for $5"), coupon-backed deals, unit prices, Fam-member pricing, badges and sponsored tiles are part of every record.
  • Monitoring built in: label every record NEW / UPDATED / REAPPEARED / EXPIRED across runs, resume an interrupted crawl, and export to MCP connectors.
  • Structured failures: a blocked run fails loudly with a clear message instead of returning an empty dataset.

Data You Get

Catalog mode walks the collections of each location and returns one record per product: product id, title, URL, image, price and currency, Fam price, unit price, promotions (text + coupon id), badges, size label, availability, stock quantity, SNAP eligibility, sponsored flags, category and location ids.

Product mode reads product links or ids and returns one enriched record per product: everything above plus description, brand, SKU and the product's own image. With the detail-enrichment option, catalog records gain the same detail fields.

Incremental runs add changeType, changedFields, firstSeenAt and lastSeenAt to every record.

How to Use

  1. Pick Catalog by location (the default), add one or more US ZIP codes or city names, and run. The actor walks the storefront navigation and emits records until Max items is reached.
  2. Want specific departments? Put collection links (for example https://www.gopuff.com/c/candy/txERmYDy) or deal-page links into Collections.
  3. Need individual products? Switch to Product links or ids mode and list product links or numeric ids.
  4. Monitoring a catalog over time? Turn on Incremental runs and reuse the same input; the actor tracks what changed between runs.
  5. Optional: connect an MCP connector to push records into Notion or another destination after each run.

Input Parameters

ParameterTypeDefaultDescription
modeselectcategoriesCatalog by location, or product links/ids
locationsarray-Catalog mode: US ZIP codes, city names, or lat,lng pairs
locationIdstringemptyAdvanced: pin an exact storefront location id
categoryInputsarrayemptyCatalog mode: collection links or bare ids; empty walks the whole navigation
discoverCategoriesbooleantrueRead the storefront navigation when no collections are set
inStockOnlybooleanfalseHide items the location currently cannot deliver
productInputsarrayemptyProduct mode: product links or numeric ids
maxItemsinteger20Stop after this many records (0 = unlimited); shared across locations
maxPagesinteger0Max pages per collection (0 = every page the collection has)
pageSizeinteger50Products per page (10-50)
fetchDetailsbooleanfalseCatalog mode: read each product's own document (per-record surcharge)
incrementalModebooleanfalseTrack NEW / UPDATED / REAPPEARED / EXPIRED between runs
emitUnchangedbooleanfalseAlso return (and bill) unchanged records
emitExpiredbooleanfalseAlso return (and bill) records gone from a complete scan
stateKeystringemptyName a monitoring campaign explicitly
resumeFromRunIdstringemptySkip records already collected by a run or dataset
mcpConnectorsarrayemptyMCP connector export
notionParentPageUrlstringemptyNotion parent page for the Notion connector
maxNotifyListingsinteger50Cap per connector per run
proxyConfigurationobjectproxy onApify proxy; the read needs one residential US exit

Keyword search is deliberately not offered: the storefront answers keyword queries with result counts and facets but serves its result grid only to sessions with a delivery address, which an anonymous read cannot set. The collection walk is the way to enumerate the catalog.

Output Example

{
"kind": "product",
"productId": "302563",
"url": "https://www.gopuff.com/p/starburst-sour-fruit-chews-chewy-candy-share-size-3-45-oz/p302563",
"title": "STARBURST Sour Fruit Chews Chewy Candy, Share Size, 3.45 oz",
"price": 3.29,
"currency": "USD",
"pricePerUnitUsd": 0.954,
"unit": "oz",
"hasPromotion": true,
"promotions": [{"text": "2 for $5", "couponId": "6d22245b-bd84-4dad-bf0b-bc9181d2961d", "couponSystem": "GOCOUPONS"}],
"sizeLabel": "3.45oz",
"availability": "in_stock",
"quantityAvailable": 19,
"snapEligible": true,
"categoryId": "txERmYDy",
"categoryName": null,
"locationId": "691",
"imageUrl": "https://images.gopuff.com/blob/...",
"priceChannel": "default",
"changeType": "NEW",
"firstSeenAt": "2026-08-30T02:00:00+00:00",
"lastSeenAt": "2026-08-30T02:00:00+00:00"
}

Send results into your apps (MCP connectors)

Optionally pipe results into Notion, Linear, Airtable or Apify via MCP connectors, in the Integrations section of the input. Each connector receives a condensed summary per product; the complete record always stays in the dataset, so nothing is lost if you leave this off.

  • mcpConnectors - the MCP connectors to export this run's products into (Notion, Linear, Airtable, Apify). Leave it empty and nothing is exported.
  • notionParentPageUrl - Notion connector only: the page under which one child page per product is created. Required when mcpConnectors includes Notion, ignored otherwise.
  • maxNotifyListings - how many products are exported to each connector in one run, default 50. This caps the export only; it never changes what the dataset returns.

Export runs after the dataset is complete and is best-effort: if a connector is unreachable the run still succeeds with a warning, and your products are still in the dataset.

Plan Requirement & Notes

  • Pay-per-event: one unit per returned record, plus an Actor Start event, plus a detail-enrichment unit for each catalog record enriched from its product document (only when the enrichment option is on).
  • The read goes out in the store's own mobile-app request shape, which the storefront answers directly: no browser runs in a normal pass. If the storefront ever challenges that shape, the actor falls back for the rest of the run to a browser-cleared session on the same connection. A run needs the Apify proxy with a residential US exit. A storefront that answers neither way fails the run loudly - it is never reported as an empty search. The default 1 GB memory covers the direct read; if a run ever needs the browser fallback, raise the run memory to 2 GB for it.
  • Detail documents (the fetchDetails option and product mode) are priced by the storefront's default location rather than the walked location; catalog-mode prices, promotions and stock are always the walked location's own.