September 24, 2026 · 14 min read
Flipp Grocery Deals Scraper: Up to 1,000 Free Results a Month (2026)
A thousand store-level circular results cost $5.00 on Apify's free plan, returning product listings across nearby US and Canadian retailers without logins or API keys. Each search record yields 15 product fields, including currentPrice, originalPrice, saleStory, merchantName, validFrom, and validTo dates. Switch modes to pull active circular metadata or extract every product inside a specific flyer ID. Built for regional pricing analysts, basket monitoring services, and promo tracking teams. Not for teams seeking direct consumer contact details or historical price archives, which the records do not include.
Try it before you read further. Apify's free plan includes $5.00 of usage every month with no credit card, enough for up to 1,000 results at $0.005 each before platform usage. Open Flipp Grocery Deals Scraper on Apify and run the prefilled example.
How reliable is Flipp Grocery Deals Scraper in production?
Across the last 30 days of public runs on the Apify platform, Flipp Grocery Deals Scraper recorded 214 runs with the following outcomes.
| Outcome | Runs | Share |
|---|---|---|
| Succeeded | 214 | 100.0% |
| Failed | 0 | 0.0% |
| Aborted by the user | 0 | 0.0% |
| Timed out | 0 | 0.0% |
| Total | 214 | 100.0% |
No run failed or timed out in the last 30 days. Keep a retry and an alert on scheduled runs all the same: a clean month is a record, not a guarantee.
What does it cost to run Flipp Grocery Deals Scraper?
Each result costs $0.005 on Apify's free plan, which is $5.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.
| Apify plan | Per result | Per 1,000 results |
|---|---|---|
| FREE | $0.005 | $5.00 |
| BRONZE | $0.00433 | $4.33 |
| SILVER | $0.00367 | $3.67 |
| GOLD | $0.003 | $3.00 |
| PLATINUM | $0.003 | $3.00 |
| DIAMOND | $0.003 | $3.00 |
Worked example: collecting 10,000 results costs $50.00 in result charges before run-start fees and platform usage. No run failed or timed out in the last 30 days, so the list price is a fair budget; keep a retry in place all the same.
The primary cost driver is maxItems, which caps how many result records a run writes to your dataset. Running mode search across broad queries like milk produces more dataset items than narrow queries or flyer listings. To validate your configuration cheaply, set maxItems to 10 on your first run before processing extensive keyword lists.
How do you run Flipp Grocery Deals Scraper from the API?
The schema marks 2 of its 13 controls as required: mode, postalCode. Nothing in the payload below is illustrative. Those are the schema's prefilled defaults for Flipp Grocery Deals Scraper, so the request works once your token is in place.
Call the synchronous endpoint to start a run and receive dataset items in one request:
curl -X POST "https://api.apify.com/v2/acts/crawlerbros~flipp-grocery-deals-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"search","postalCode":"45202"}'
The same run from Python, using the official client:
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "search",
"postalCode": "45202"
}
run = client.actor("crawlerbros~flipp-grocery-deals-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
And from Node.js:
import { ApifyClient } from 'apify-client'
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
const input = {
"mode": "search",
"postalCode": "45202"
}
const run = await client.actor('crawlerbros~flipp-grocery-deals-scraper').call(input)
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)
Because the call is synchronous, your client waits for the whole run. Keep it for exploration. For scheduled work, start the run without waiting and collect the dataset afterwards, so network trouble costs you a retry rather than the results.
Which Flipp Grocery Deals Scraper inputs matter, and which can you skip?
The mode and postalCode controls are required and dictate what data is returned. Setting mode to search requires query to define the product target, while mode flyerItems requires flyerIds. Leave minPrice, maxPrice, and category empty during initial tests to avoid over-filtering your dataset.
mode(string): What to fetch. Default:"search".postalCode(string): A US ZIP code (e.g.45202) or Canadian postal code (e.g.K1A 0B1). Determines which stores' flyers/prices are searched. Not used for mode=flyerItems or mode=merchants. Default:"45202".query(string): Product keyword, e.g.milk,chicken breast,paper towels. Default:"milk".itemType(string): Filter to weekly-ad flyer items (in-store circular pricing), online/e-commerce items, or both. Default:"all".sortBy(string): Order search results before filtering. Default:"relevancy".merchantName(string): Only keep results from a merchant whose name contains this text, e.g.Kroger,Publix,ALDI,Walmart,Costco,CVS. Also applies in mode=merchants.category(string): Only keep results whose category/subcategory contains this text, e.g.Beverages,Meat,Dairy.flyerIds(array): Numeric flyer IDs to list every item from, e.g.8041414. Get IDs from theflyerIdfield ofsearch/flyersmode output, or from a flyer URL likeflipp.com/en-us/flyer/8041414. Default:[].minPrice(number): Drop items priced below this (USD/CAD).maxPrice(number): Drop items priced above this (USD/CAD).includeRelatedItems(boolean): Also emit Flipp's 'related items' (cross-sell/adjacent product suggestions returned alongside some search results, e.g. searchingiphonesurfaces related phone-plan or accessory deals). Off by default since most queries return none. Default:false.includeCoupons(boolean): Also emit real digital-coupon offers (savings text, disclaimer, matched product) surfaced alongside search results for that postal code, e.g.$2.00 off Tyson. Off by default since not every query surfaces coupons. Default:false.
The other 1 controls, with their defaults, are listed in the input schema on Flipp Grocery Deals Scraper on Apify.
Fixed-choice controls: mode accepts search (Search products/prices near a postal code), flyers (Browse active flyers near a postal code), flyerItems (List every item inside a specific flyer (by flyer ID)), merchants (List Flipp's full merchant/retailer directory); itemType accepts all (Both (flyer + online)), flyer (Weekly-ad flyer items only), ecom (Online/e-commerce items only); sortBy accepts relevancy (Relevance), price_low_to_high (Price: low to high), price_high_to_low (Price: high to low).
What does Flipp Grocery Deals Scraper return?
Returned dataset records supply localized weekly circular pricing, store merchant details, item descriptions, and promotion validity dates. They do not contain historical circular records from past weeks or customer review metrics for in-store flyer items. Use search mode for keyword queries or flyerItems mode for complete circular dumps.
Output per record (search mode)
itemId,namecurrentPrice,originalPrice- USD/CADpriceQualifier- e.g. "with digital coupon", "/EA"saleStory- promotional copy, when presentmerchantName- e.g.Kroger,Publix,ALDImerchantId- Flipp's numeric retailer ID (cross-reference withmerchantsmode)merchantLogoUrlcategory,subcategoryimageUrl- product/circular clipping imagevalidFrom,validTo- ISO dates (flyer items only)flyerId,averageRating,totalReviews- when availablesourceUrl- the Flipp flyer/page this price came fromitemType-flyerorecomisRelatedItem-trueonly for cross-sell/related suggestions whenincludeRelatedItemsis onrecordType: "product"("relatedItem"for related suggestions),scrapedAt
Output per record (search mode coupons, when includeCoupons is on)
couponId,savingsText- e.g. "$2.00 off 1"disclaimerText- the coupon's legal/redemption termsproductNames[]- matched product(s)/brand(s)requiredQuantity- units required to redeem, when statedrecordType: "coupon",scrapedAt
Output per record (flyers mode)
flyerId,merchantName,merchantId,namevalidFrom,validTocategories[]thumbnailUrl,merchantLogoUrlpostalCode,sourceUrlrecordType: "flyer",scrapedAt
Output per record (flyerItems mode)
itemId,flyerId,name,brandprice- USD/CADdiscountPercent- when the flyer marks a % offvalidFrom,validToimageUrl- the cut-out product image from the scanned flyer pagemerchantPageUrl- the retailer's own product/landing page, when the flyer links to onesourceUrl- the Flipp flyer pagerecordType: "flyerItem",scrapedAt
Output per record (merchants mode)
merchantId,merchantName,nameIdentifierusBased- whether the retailer is US-basedsourceUrl- the retailer's Flipp storefront pagerecordType: "merchant",scrapedAt
These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.
How do you build the workflow end to end?
Open Flipp Grocery Deals Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.
- Select mode search and enter a target postalCode like 45202 alongside a product query like milk.
- Run the Actor on a single term with maxItems set to 10 to inspect the output schema.
- Verify that returned records include valid itemId, currentPrice, and merchantName fields.
- Add a merchantName string like Kroger or ALDI if you need to scope results to specific local stores.
- Set includeCoupons to true if your workflow requires digital coupon discounts and disclaimerText.
- Switch mode to flyers using the same postalCode to discover active flyerId values in the area.
- Pass target flyerId values into flyerIds with mode set to flyerItems to fetch complete circular inventories.
- Export dataset records to JSON or CSV for downstream price analysis once validation succeeds.
How do you apply it? Three worked playbooks
These are Flipp Grocery Deals Scraper's own documented use cases, each worked through as an operating pattern rather than a description.
Use case 1: Basket price tracking
Outcome: Track Kroger/Publix/ALDI prices for a shopping list across a zip code
Configure: Set mode to search, postalCode to 45202, query to milk, itemType to flyer, and maxItems to 40.
Working method: Run the initial query for a baseline item, verify merchantName contains expected retailers, then cycle through your product list across identical postal code inputs.
Deliverable: A dataset of current weekly-ad item records containing currentPrice, merchantName, and saleStory across local stores.
Stop condition: The returned dataset contains zero records for a valid ZIP code with active retail coverage.
Use case 2: Cross-retailer price comparison
Outcome: Compare weekly-ad pricing for the same product across multiple retailers
Configure: Set mode to search, postalCode to 90210, query to paper towels, sortBy to price_low_to_high, and itemType to flyer.
Working method: Execute a search across a single item, inspect currentPrice across distinct merchantId entries, and sort results to highlight lowest regional prices.
Deliverable: A structured array of product records sorted by price, mapped to specific merchant names and circular source URLs.
Stop condition: The search output lacks currentPrice or originalPrice data on returned circular items.
Use case 3: Weekly price trend monitoring
Outcome: Monitor grocery price trends over time by re-running the actor on a schedule
Configure: Set mode to search, postalCode to K1A 0B1, query to chicken breast, and run on a weekly schedule matching circular refresh cycles.
Working method: Execute scheduled runs weekly, store returned records alongside scrapedAt timestamps, and compute price shifts per merchant over time.
Deliverable: A historical time-series dataset tracking price changes and validTo date ranges across scheduled runs.
Stop condition: Scheduled run outputs fail to return valid ISO dates in validFrom and validTo fields.
What breaks, and how do you design around it?
- Coverage is store/region dependent: a given retailer's flyer only appears for postal codes where that retailer operates.
averageRating/totalReviewsare only present for e-commerce items that have received reviews.- Flyer item prices reflect the currently active weekly circular; historical pricing is not available.
When a specific store circular does not appear, verify that the retailer operates physical locations within that postal code. If averageRating or totalReviews are missing, update downstream schemas to treat them as optional e-commerce-only attributes. Because historical circular data is unavailable, schedule automated runs weekly to capture active circular windows before validTo dates expire.
When should you not use Flipp Grocery Deals Scraper?
Do not use this Actor if you require historical circular archives or non-North American coverage. For UK grocery monitoring across chains like Tesco, Asda, and Sainsbury's, use Trolley Grocery Price Comparison Scraper instead. If you need direct e-commerce delivery pricing rather than weekly print circular deals, use Instacart Storefront Price Scraper. If your project focuses exclusively on single-brand store inventory like ALDI US, evaluate Aldi US Scraper.
What should you check before trusting the output?
- Confirm validFrom and validTo ISO date strings exist on flyer items to prevent using expired pricing.
- Check that currentPrice contains a non-null numeric value before running pricing models.
- Monitor merchantName to ensure search results match expected local store availability.
- Filter out records where recordType is coupon if your ingest pipeline expects only physical item listings.
- Halt automated workflows if a run returns zero records for a known valid postalCode.
None of this proves a record is correct. It gives a scheduled Flipp Grocery Deals Scraper run defined points where it should stop instead of quietly passing bad data downstream.
Frequently asked questions
How much does it cost to scrape 1,000 grocery results?
Results cost $0.005 each, which comes out to $5.00 per 1,000 results on the free plan. Apify's free plan includes $5.00 of monthly usage, allowing you to fetch up to 1,000 results at no cost before platform run charges.
How reliable is the Flipp Grocery Deals Scraper?
Telemetry shows 214 runs in the last 30 days with 214 succeeded, yielding a 100.0% success rate with 0 failed, 0 aborted, and 0 timed out.
Does this scraper collect historical circular prices?
No. Flipp only exposes active weekly circulars currently valid for a postal code. To track price trends over time, schedule the Actor to run weekly and append output records to a persistent database.
Why are ratings missing on some returned items?
The averageRating and totalReviews fields are populated only for online e-commerce items that have received reviews. In-store weekly circular flyer items do not carry rating attributes.
How do I target a specific store circular?
Set mode to search or flyers alongside your target postalCode to extract active flyerId values, then pass those IDs into flyerIds using mode flyerItems to pull all items from that circular.
Where to go next
When you are ready to run it, open Flipp Grocery Deals Scraper on Apify; the free plan covers up to 1,000 results a month.
Start with the Flipp Grocery Deals Scraper Actor page for the current input schema, pricing tier, and run history.
Readers running Flipp Grocery Deals Scraper commonly pair it with:
- Flipp Weekly Deals & Grocery Ad Scraper: Scrape Flipp - the #1 grocery deals platform used by Walmart, Lidl, Costco, Target, Kroger, and 2000+ US retailers.
- Trolley Grocery Price Comparison Scraper: Scrape UK grocery prices from Trolley.co.uk - compare Tesco, Asda, Sainsbury's, Morrisons, Waitrose, Ocado & more.
- Instacart Storefront Price Scraper: Scrape real-time grocery prices from Instacart storefronts.
- Aldi US Scraper: Scrape Aldi US groceries - search products by keyword, browse curated collections (Weekly Specials, ALDI Finds, Price Drops, ALDI Brands), real prices, discounts and images.
Related guides:
- Canadian Tire Scraper: Get Product Data for $5.00 per 1,000 Results
- Walgreens Scraper: 25 Data Fields, Up to 1,000 Free Results/Month
- Reddit Community Scraper: Playbooks for Subreddit Intelligence and
Resources
Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-24.
Actor last updated by its maintainers on 2026-08-03.
Run outcome figures cover the 30 day public window ending 2026-09-24.
Featured actors
Flipp Grocery Deals Scraper
Scrape real store-level weekly-ad prices near any US or Canadian postal code - Kroger, Publix, ALDI, Walmart, Target, Costco, CVS, Walgreens and dozens more retailers. Search by product keyword or browse all active flyers for an area. No login, no API key.
Run on Apify ↗