Canadian Grocery
Price Data API
Compare grocery prices across six Canadian banners from a single call — or pull structured data from any one retailer. Delivered as JSON, CSV, or Excel through Apify.
Canadian Grocery Price Comparison API
One basket in, a normalised comparison out. Enter a grocery list and a location — get every supported banner matched, scored, and ranked in a single call, instead of stitching together the per-retailer APIs yourself.
loblawssuperstorenofrillssaveonfoodspricesmarttnt| Item | Retailer | Matched product | Price | Unit price | Sale | Confidence |
|---|---|---|---|---|---|---|
| eggs | loblaws | No Name Large Eggs 12-pack | $4.49 | $0.37/each | — | high |
| eggs | saveon | Western Family Large Eggs 12-pack | $5.29 | $0.44/each | — | high |
| eggs | tnt | Large White Eggs 12-pack | $4.99 | $0.42/each | SALE | medium |
“eggs” compared across three retailers — one ranked row per match. Cheapest here: loblaws at $4.49.
Each row, in full — the complete comparison record
{ "type": "comparison", "query": "ground beef", "retailer": "loblaws", "banner": "Loblaws", "store": "Robson Street", "store_id": "1050", "matched_product": "PC Lean Ground Beef", "price": 7.99, "unit_price": "$1.76/100g", "comparable_unit_price": 1.76, // normalized $/100g "is_on_sale": false, "availability": "in_stock", "match_confidence": "high", // high / medium / low "match_score": 0.86, // 0–1 similarity "source_url": "https://www.loblaws.ca/...", "package_size": "454 g", "selling_type": "by_weight", "region": "BC", "currency": "CAD", "scraped_at": "2026-05-15T14:32:11Z" }
Who is this for?
- Developers building grocery price comparison apps
- Retail analysts monitoring Canadian grocery prices
- CPG brands tracking competitor pricing and promotions
- Researchers studying food inflation and grocery affordability
- Data teams building product price databases
- Indie hackers building shopping, deal, or price alert tools
Or pull a single retailer
Only need one source? Each per-retailer API returns the same enriched fields. Pick one to see a real query and the exact JSON it returns.
Loblaws, Superstore & No Frills API
Real Canadian Superstore, No Frills, and Loblaws — powered by the internal Loblaws BFF API. The richest feed: PC Optimum offers, multi-buy deals, and structured unit pricing.
superstorenofrillsloblaw{ "banner": "superstore", "search_terms": [ "bananas" ], "postal_code": "V5X 0C4" }
{ "store": "Real Canadian Superstore", "name": "Bananas", "price": "0.69", "unit_price": "454 g, $0.15/100g", "image_url": "https://assets.shop.loblaws.ca/products/...", "product_url": "https://www.realcanadiansuperstore.ca/bananas/p/...", "product_id": "21023456", "location": "1517", "category": "fresh-fruits", "selling_type": "by_weight", "package_size": "454g", "parsed_unit_price": { "value": 0.15, "quantity": 100, "unit": "g", "unit_type": "weight" }, "comparable_unit_price": 0.15, "was_price": 0.89, "is_on_sale": true, // live sale flag "multi_buy_deal": "2 for $1.00", // promo text "pc_optimum_offer": "1000 points" // loyalty points}
pc_optimum_offerPC Optimum loyalty points offers — unique to Loblaws banners.multi_buy_dealMulti-buy promotions like "2 for $1.00", parsed from the listing.parsed_unit_priceStructured { value, quantity, unit, unit_type } object, not just a string.was_price + is_on_saleSale tracking with the original pre-sale price.