Flipp Flyer Deals Scraper — Weekly Flyers & Prices, CA + US avatar

Flipp Flyer Deals Scraper — Weekly Flyers & Prices, CA + US

Pricing

from $1.50 / 1,000 deals

Go to Apify Store
Flipp Flyer Deals Scraper — Weekly Flyers & Prices, CA + US

Flipp Flyer Deals Scraper — Weekly Flyers & Prices, CA + US

Weekly flyer deals from 2,500+ Canadian and US retailers by postal code or ZIP: search every flyer for a product, or pull every item in every flyer near you. Prices, sale text, unit prices ($/kg), multi-buys, discounts, categories, in-store and online deals, and week-over-week price changes.

Pricing

from $1.50 / 1,000 deals

Rating

0.0

(0)

Developer

Yugenox Corp

Yugenox Corp

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Flipp Flyer Deals Scraper — Weekly Flyers, Prices & Sales (Canada + US)

Get weekly flyer deals from Flipp for 2,500+ Canadian and US retailers by postal code or ZIP. Search every flyer near you for a product, or pull every item in every flyer. Grocery, pharmacy, hardware, electronics, pets, home and more: Walmart, Costco, No Frills, Loblaws, Metro, Sobeys, Shoppers Drug Mart, Canadian Tire, Home Depot, Best Buy, Target, CVS, Walgreens, ALDI, Lowe's and hundreds of independents.

  • 🔑 No login, no API key, no cookies. Enter a postal code and run.
  • 🧩 Complete results, not the first 200. A Flipp search stops at 200 results. When a search hits that cap, this actor re-runs it store by store automatically. Example: "chicken" in downtown Toronto gives 197 → 715 deals in about 30 seconds.
  • 📰 Every item in every flyer. Full-flyer mode reads whole flyers: about 18,000 items from 108 flyers in 12 seconds for one Vancouver postal code. Add the region presets for a near-national flyer dataset (46 Canadian cities cover about 1,200 flyers).
  • 🧮 Prices you can compare. Multi-buys ("2 for $5" → $2.50 each), /lb and /100 g prices converted to $/kg, discount % and $ off, and a priceRank (1 = cheapest) within each search.
  • 🏬 Three kinds of deals. Printed flyer deals, in-store sale prices at the nearest branch (with address, SKU and product link), and online deals (with SKU, rating and reviews).
  • 📈 Week-over-week tracking. Each row gets new / price_drop / price_up / unchanged and the previous price. Deals that ended are listed too. Schedule it weekly for a deal-alert feed.
  • ♻️ Many postal codes, no duplicates. Neighbouring postal codes share flyers. Each flyer is read once, and each deal appears once (optional).
  • 🇫🇷 English or French (Quebec and bilingual chains). US ZIP codes work too.

Three ways to use it

ModeYou giveYou get
🔍 Search (default)Postal codes + search terms (milk, chicken breast, tv)Every matching flyer deal, in-store price and (optionally) online deal near each postal code
📰 Full flyersPostal codes (+ optional stores, categories, keywords)Every item printed in every flyer near each postal code
🆔 Specific flyersFlyer ids or flipp.com flyer linksEvery item in those flyers

Quick start

Compare milk and eggs prices across all stores near a Toronto postal code:

{
"postalCodes": ["M5V 2T6"],
"searchTerms": ["milk", "eggs"]
}

Every grocery and pharmacy flyer deal in two cities, valid today, with full item details:

{
"mode": "flyers",
"postalCodes": ["V6B 1A1", "T2P 1J9"],
"categories": ["Groceries", "Pharmacy"],
"onlyValidNow": true,
"includeItemDetails": true
}

A weekly price-drop alert for one chain across Canada (schedule it every Thursday):

{
"mode": "flyers",
"regionPresets": ["ca-major-cities"],
"merchants": ["No Frills"],
"trackChanges": true
}

Output

One row per deal. Here is a real row from a "chicken" search with item details on:

{
"itemId": "1039620999",
"itemType": "flyer",
"name": "Maple Leaf Prime raised without antibiotics boneless skinless chicken breasts 3-piece",
"brand": "Maple Leaf",
"merchant": "Walmart",
"merchantId": 234,
"flyerId": 8129937,
"flyerName": "Flyer",
"flyerCategories": ["Groceries", "General Merchandise"],
"categoryL1": "Food, Beverages & Tobacco",
"categoryL2": "Food Items",
"currentPrice": 6.34,
"originalPrice": 7.43,
"currency": "CAD",
"effectivePrice": 6.34,
"priceText": "6.34",
"postPriceText": "lb",
"saleStory": "Rollback",
"priceUnit": "lb",
"pricePerKg": 13.98,
"multiBuy": null,
"discountPct": 15,
"dollarsOff": 1.09,
"validFrom": "2026-09-17T04:00:00+00:00",
"validTo": "2026-09-24T03:59:59+00:00",
"imageUrl": "https://f.wishabi.net/page_items/433472261/1789053555/extra_large.jpg",
"productUrl": "https://www.walmart.ca/en/ip/3VLCAVLWS55J?...",
"sku": "3VLCAVLWS55J",
"description": "#51053321. $16.38/kg, $13.98/kg.",
"inStoreOnly": false,
"priceRank": 73,
"detailsIncluded": true,
"searchTerm": "chicken",
"postalCode": "M5V2T6",
"locale": "en-ca",
"scrapedAt": "2026-09-24T02:46:06.597Z"
}

A multi-buy deal is parsed into a per-item price:

{ "name": "Longo's Chicken Wings, Chicken Tenders or Bites", "merchant": "Longos", "currentPrice": 23, "prePriceText": "2 FOR",
"multiBuy": { "quantity": 2, "totalPrice": 23, "pricePerItem": 11.5 }, "effectivePrice": 11.5 }

Fields

FieldDescription
itemId, itemTypeDeal id; flyer (printed flyer), store (in-store price at the nearest branch) or online
name, brand, description, skuWhat's on sale. description usually has the size and varieties ("2 L, selected varieties")
merchant, merchantIdThe retailer. storeAddress and storeId are filled for in-store prices
flyerId, flyerName, flyerCategoriesThe flyer it came from and its categories (Groceries, Pharmacy, Home & Garden…)
categoryL1, categoryL2Product category (search mode), e.g. "Food, Beverages & Tobacco" › "Beverages"
currentPrice, originalPriceSale price and regular price, as numbers
currencyCAD or USD (from the flyer's own locale, so a US flyer read from a Canadian postal code is still USD)
priceText, prePriceText, postPriceText, saleStoryThe flyer's own text: "2/", "Member Price", "/lb", "ea.", "SAVE $3", "Rollback"
effectivePricePrice for one item (multi-buys divided out)
priceUnit, pricePerKgWhat the price is per (each, lb, kg, 100g, pack), and $/kg for weight-priced items
multiBuy{ quantity, totalPrice, pricePerItem } for "2 for $5"-style deals
discountPct, dollarsOffDiscount vs the regular price (or as stated by the retailer)
validFrom, validToWhen the deal runs
imageUrl, productUrlItem image; the retailer's product page (with item details, and for in-store prices)
inStoreOnly, disclaimer, rating, reviewCountExtra detail where the retailer provides it
priceRank1 = cheapest in that search (by $/kg for weight-priced items, by item price otherwise)
searchTerm, postalCode, localeWhich search and postal code found the deal
changeType, previousPriceWith change tracking on: new, price_drop, price_up or unchanged, and last run's price

detailsIncluded tells you whether the row got the item details add-on.

Input

FieldDescription
modesearch (default), flyers or flyerIds
postalCodesCanadian postal codes (M5V 2T6) or US ZIP codes (10001). Must be the full code
searchTermsProducts to search for. In full-flyer modes they filter the items
flyerIdsFlyer ids or flipp.com flyer links (for flyerIds mode)
regionPresetsca-major-cities (46 cities, every province and territory) and/or us-major-cities (50 metros)
maxItemsMaximum deals for the whole run (empty = no limit)
merchantsOnly these stores, by name or merchantId
categoriesOnly these flyer or product categories (partial names work)
itemTypesSearch mode: flyer, store, online (default flyer + store)
onlyValidNowSkip deals from flyers that haven't started yet or have ended
sortBySearch mode: relevancy, price_low_to_high, price_high_to_low
includeItemDetailsAdd description, SKU, product link, sale and unit text, in-store-only flag and ratings to flyer deals
trackChangesWeek-over-week changes against the previous run of the same input
completeCoverageSearch mode: get past the 200-result cap by splitting per store (default on)
dedupeAcrossPostalCodesEach deal once across postal codes (default on)
languageen or fr (Canada)
maxItemsPerPostalCode, maxPostalCodes, maxConcurrency, proxyConfigurationLimits and tuning

Use cases

  • Grocery price comparison and "cheapest near me" apps. Search a basket of products across every store near a postal code, sorted by $/kg or item price.
  • CPG and retail analytics. Track which brands are promoted, at what discount, by which chains and in which regions, week after week.
  • Deal alerts and newsletters. Schedule a weekly run with change tracking and send only the new deals and price drops.
  • Competitive pricing. Watch competitors' flyer prices and promotions by city.
  • Flyer archives and datasets. Near-national weekly snapshots of every flyer item with categories, prices and validity dates.

FAQ

How fresh is the data? Live at run time. Most retailers publish new flyers weekly, often a day or two before they start. Use onlyValidNow to keep only what's valid today.

Why do I get more than 200 results for a search? Flipp stops each search at 200 results. When a search hits that cap, the actor re-runs it for each store that has matches and merges the results, so you get the long tail too. Turn completeCoverage off for a quick top-200 sample.

Why are some prices empty? Some flyer items have no single price ("20% off all toys", "Buy 1 get 1"). discountPct or saleStory then carries the deal. In full-flyer mode, includeItemDetails fills the sale text and units for most items.

Which postal codes work? Any full Canadian postal code or US ZIP code. The first three characters alone (e.g. "M5V") are not enough.

How many postal codes should I use for a whole city or country? One downtown postal code covers the flyers for most of a metro area. For national coverage, use regionPresets: flyers shared between cities are read only once.

What does "in-store price" mean? Some chains publish their own current sale prices per store. These rows (itemType: "store") include the store address, SKU and a link to the product page.

How does change tracking work? The actor keeps a small snapshot of the last run for each distinct input in your Apify account. Run the same input again, for example on a weekly schedule, and each deal is compared with the last run. The run's CHANGES record lists totals and the deals that expired.

How am I charged? You pay per deal saved. The optional item details are a small add-on per enriched deal. Deals removed by your filters or as duplicates are not charged.

Is it legal to scrape Flipp? This Actor only collects publicly available data: weekly flyer deals, prices, product details and store locations that anyone can see on Flipp without an account. Collecting publicly available data is generally legal, but you're responsible for how you use it. You must follow privacy laws such as GDPR, PIPEDA and CCPA, as well as Flipp's terms. If you're unsure, check with a lawyer. More on this: Is web scraping legal?

Does it access any private data? No. Everything comes from pages Flipp shows to any visitor without logging in. It never uses a login, never touches private or restricted accounts, and never reaches password-protected areas.