Skip to content
    ↑↓ to choose · Enter to open

    · 12 min read

    Flipp Weekly Deals & Grocery Ad Scraper: 25 Data Fields per Record

    By CrawlerBros Engineering Team

    Each deal record carries 25 fields, including product names, current prices, discount percentages, and validity dates from US retail flyers. Results cost $5.00 per 1,000 items on Apify's free plan. Built for developers building price comparison tools, regional deal alerts, or retail intelligence pipelines. Not for teams seeking Canadian circulars or international stores.

    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 Weekly Deals & Grocery Ad Scraper on Apify and run the prefilled example.

    How reliable is Flipp Weekly Deals & Grocery Ad Scraper in production?

    Across the last 30 days of public runs on the Apify platform, Flipp Weekly Deals & Grocery Ad Scraper recorded 271 runs with the following outcomes.

    Outcome Runs Share
    Succeeded 271 100.0%
    Failed 0 0.0%
    Aborted by the user 0 0.0%
    Timed out 0 0.0%
    Total 271 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 Weekly Deals & Grocery Ad 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 maxItems control directly dictates your result charges because billing scales per written dataset record. Keep maxItems small during initial query setup to test schema mapping before scaling up. Changing mode alters output types between deal and flyer records but does not change the per-result rate.

    How do you run Flipp Weekly Deals & Grocery Ad Scraper from the API?

    The schema marks 1 of its 6 controls as required: mode. The payload below uses the schema's own prefilled values, so it runs as written once you substitute your API token.

    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-weekly-deals-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"mode":"weeklyDeals","merchant":"Lidl","postalCode":"10001","searchQuery":"chicken","category":"All","maxItems":20}'
    

    The same run from Python, using the official client:

    from apify_client import ApifyClient
    
    client = ApifyClient("<YOUR_APIFY_TOKEN>")
    
    run_input = {
      "mode": "weeklyDeals",
      "merchant": "Lidl",
      "postalCode": "10001",
      "searchQuery": "chicken",
      "category": "All",
      "maxItems": 20
    }
    
    run = client.actor("crawlerbros~flipp-weekly-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": "weeklyDeals",
      "merchant": "Lidl",
      "postalCode": "10001",
      "searchQuery": "chicken",
      "category": "All",
      "maxItems": 20
    }
    
    const run = await client.actor('crawlerbros~flipp-weekly-deals-scraper').call(input)
    const { items } = await client.dataset(run.defaultDatasetId).listItems()
    console.log(items)
    

    The synchronous endpoint holds the connection open until the run finishes, which is convenient for small batches and wrong for large ones. For anything long running, start the run asynchronously and poll, or attach a webhook, so a dropped connection does not cost you the results.

    Which Flipp Weekly Deals & Grocery Ad Scraper inputs matter, and which can you skip?

    The mode parameter dictates whether you fetch items from a single store flyer, search product terms across all local circulars, or list available flyers by retailer. When using search mode, supply a search term in searchQuery and set postalCode to target specific local markets.

    • mode (string): What to scrape from Flipp. Default: "weeklyDeals".
    • merchant (string): Store to pull deals from. Supported: Lidl, Walmart, Target, Kroger, Costco, Aldi, CVS, Walgreens, Safeway, Publix, Whole Foods, Dollar General, etc. Default: "Lidl".
    • postalCode (string): US ZIP code to find local store flyers. Flipp coverage varies by region. Default: "10001".
    • searchQuery (string): Keyword to search across all store flyers (e.g. 'chicken', 'yogurt', 'detergent'). Default: "chicken".
    • category (string): Filter deals by product category. Default: "All".
    • maxItems (integer): Maximum number of deal records to return. Default: 50.

    Fixed-choice controls: mode accepts weeklyDeals (current weekly flyer items from a specific store), search (Search deals - search items across all stores by keyword), byMerchant (get all current flyers for a specific retailer); merchant accepts 24 values (default Lidl), including Lidl, Walmart, Target, Kroger; category accepts 12 values (default All), including All (All categories), Groceries, General Merchandise, Pharmacy.

    What does Flipp Weekly Deals & Grocery Ad Scraper return?

    Output dataset items provide structured product pricing, merchant metadata, promotional text, category labels, and flyer expiration dates. They do not contain past historical price archives or internal store inventory counts.

    • productId: Flipp deal item ID
    • name: Product name
    • merchantName: Store/retailer name
    • merchantId: Flipp numeric merchant ID (region-specific)
    • currentPrice: Current sale price (USD)
    • originalPrice: Original price before discount (if available)
    • discount: Savings amount in USD
    • discountPercent: Percentage saved
    • pricePrefix: Price prefix text (e.g., "From")
    • priceSuffix: Price suffix text (e.g., "ea.", "/lb")
    • saleBadge: Sale badge text (e.g., "Buy 1 Get 1 Free", "Save 25%")
    • category: L1 product category
    • subcategory: L2 product subcategory
    • validFrom: Deal start date (ISO 8601)
    • validTo: Deal end date (ISO 8601)
    • flyerId: Flipp flyer ID
    • flyerName: Name of the flyer the deal belongs to (flyer-based modes)
    • flyerValidFrom: Flyer start date, ISO 8601 (flyer-based modes)
    • flyerValidTo: Flyer end date, ISO 8601 (flyer-based modes)
    • imageUrl: Product image URL
    • merchantLogoUrl: Store logo URL
    • isPremium: Whether this is a premium/sponsored placement
    • sourceUrl: Direct link to deal on Flipp
    • recordType: Always "deal"
    • scrapedAt: ISO timestamp of scrape

    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 Weekly Deals & Grocery Ad 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.

    1. Select mode equal to weeklyDeals to scrape items from a specific circular, or choose search to query across all local ads.
    2. Set postalCode to a valid 5-digit US ZIP code to fetch region-specific pricing and store flyers.
    3. Select a retailer string in merchant when mode is set to weeklyDeals or byMerchant.
    4. Set maxItems to 20 for a initial validation run to keep result charges at or below $0.10.
    5. Execute the run and verify that returned records contain non-null currentPrice and merchantName values.
    6. Confirm that recordType returns 'deal' for deal items or 'flyer' when running byMerchant mode.
    7. Adjust maxItems up to the allowed maximum of 500 for full production extractions.

    How do you apply it? Three worked playbooks

    These are Flipp Weekly Deals & Grocery Ad Scraper's own documented use cases, each worked through as an operating pattern rather than a description.

    Use case 1: Multi-store price tracking

    Outcome: Track grocery prices and deals across multiple stores

    Configure: Set mode to 'weeklyDeals', merchant to 'Walmart', postalCode to '10001', and maxItems to 100.

    Working method: Run sequential extractions across your list of target retailers using weeklyDeals mode. Store the returned items and index them by productId and merchantName. Compare currentPrice, discountPercent, and validity windows across weekly updates.

    Deliverable: A cross-store dataset of weekly flyer items detailing current sale prices, discounts, and expiration dates.

    Stop condition: Stop if currentPrice is missing on more than 10% of returned deal records.

    Use case 2: Shopper price comparison tool

    Outcome: Build price comparison tools for budget shoppers

    Configure: Set mode to 'search', searchQuery to 'milk', category to 'Groceries', postalCode to '10001', and maxItems to 50.

    Working method: Execute keyword queries for key grocery staples across all local circulars. Parse currentPrice alongside priceSuffix (such as '/lb' or 'ea.') to calculate comparable unit costs, then rank items across competing stores.

    Deliverable: A normalized comparison dataset mapping staple products to store locations and effective sale prices.

    Stop condition: Stop if recordType does not equal 'deal' or merchantName is empty.

    Use case 3: Local deal search

    Outcome: Find the best deals on specific products in your area

    Configure: Set mode to 'search', searchQuery to 'chicken breast', postalCode to '90210', category to 'Groceries', and maxItems to 30.

    Working method: Query specific item keywords using target residential postalCode values. Filter output records by checking validTo against the current date, then rank remaining items by discountPercent to highlight local savings.

    Deliverable: A localized list of active product promotions sorted by highest percentage discount in a targeted ZIP code.

    Stop condition: Stop if validTo specifies a date that has already passed.

    What breaks, and how do you design around it?

    • Over the last 30 days, 0.0% of public runs failed and 0.0% timed out. Build retries and alerting around those rates rather than assuming every run completes.

    Input validation limits maxItems to 500 items per execution. To gather broader market coverage, break your collection into multiple runs across distinct postalCode inputs or merchant selections. Ensure date logic properly handles ISO 8601 formatting on validFrom and validTo timestamps.

    When should you not use Flipp Weekly Deals & Grocery Ad Scraper?

    Do not use this Actor if you need regional store coverage in Canada or need to monitor UK grocery markets. For Canadian circulars and regional store pricing, use Flipp Grocery Deals Scraper. For tracking UK supermarkets like Tesco or Sainsbury's, use Trolley Grocery Price Comparison Scraper instead.

    What should you check before trusting the output?

    • Alert if currentPrice is null while discount or saleBadge is present on a deal record.
    • Check that validFrom and validTo strings parse as valid ISO 8601 timestamps.
    • Confirm merchantName matches the requested merchant parameter in weeklyDeals mode.
    • Stop processing if recordType is anything other than 'deal' or 'flyer'.
    • Monitor postalCode in output records to verify local regional circular assignment.

    None of this proves a record is correct. It gives a scheduled Flipp Weekly Deals & Grocery Ad 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 Flipp deals?

    Results cost $0.005 each, which equals $5.00 per 1,000 results on Apify's free plan. Platform usage is billed separately per run.

    Is login or an API key required to run this scraper?

    No login or external API key is required. All flyer and deal records are collected from publicly accessible circular data on Flipp.

    Why do I need to specify a postal code?

    Weekly circulars, store participation, and item prices vary by region. Providing a valid postalCode ensures the scraper returns local flyer pricing.

    What if a retailer is not listed in the merchant input list?

    You can set mode to search and enter your product query in searchQuery to find deals across all active store flyers in that ZIP code, even if the retailer is not listed in the merchant dropdown.

    What schema is returned for deal records?

    Each deal record carries 25 fields, including productId, name, merchantName, currentPrice, originalPrice, discount, discountPercent, validFrom, validTo, and sourceUrl.

    Where to go next

    When you are ready to run it, open Flipp Weekly Deals & Grocery Ad Scraper on Apify; the free plan covers up to 1,000 results a month.

    Start with the Flipp Weekly Deals & Grocery Ad Scraper Actor page for the current input schema, pricing tier, and run history.

    Other Actors we maintain for related data:

    Related guides:

    Resources

    • Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-26.

    • Actor last updated by its maintainers on 2026-07-02.

    • Run outcome figures cover the 30 day public window ending 2026-09-26.

    • Flipp Weekly Deals & Grocery Ad Scraper on Apify

    Featured actors

    Flipp Weekly Deals & Grocery Ad Scraper

    Scrape Flipp - the #1 grocery deals platform used by Walmart, Lidl, Costco, Target, Kroger, and 2000+ US retailers. Get current weekly flyer items with prices, discounts, and validity dates. Search by keyword or browse specific store weekly ads.

    Run on Apify ↗