I’m working on Popgot (https://popgot.com), a tool that tracks unit prices (cost per ounce, sheet, pound) across Costco, Walmart, Target, and Amazon. It normalizes confusing listings (“family size”, “mega pack”, etc.) to surface the actual cheapest option for daily essentials.
On top of that, it uses a lightweight AI model to read product descriptions and filter based on things like ingredients (e.g., flagging peanut butter with BPA by checking every photograph of the plastic or avoiding palm oil by reading the nutrition facts) or brand lists (e.g., only showing WSAVA-compliant dog foods). Still reviewing results manually to catch bad extractions.
Started this to replace a spreadsheet I was keeping for bulk purchases. Slowly adding more automation like alerting on price drops or restocking when under a threshold.
I don't think I have the time to go to different stores to buy different things based on what is cheap. I have one fixed one.
However, what I would like is a product where I upload my shopping receipt for a few weeks/months from the one store I go to. The application figures out what I typically buy and then compares the 4-5 big stores and tells me which one I should go to for least price.
Yeah, I agree. It is a pain to search product by product instead of sticking to one store. Also popgot.com can only do what's online & shipped to you -- so really just the non-perishables / daily essentials that are not fresh groceries. But even when limited to consumables I save ~$100/mo by basically buying by unit price.
Uploading a receipt to see how much you can save... that's a good idea. I think I can find your email via your personal site. Can I email you when we have a prototype ready?
However, I am in Canada. So can only test it once you expand there. Thanks.
I don't know how things are in the US, but it does seem like the grocery store oligopoly is squeezing consumers a lot, so tools like this are valuable for injecting competition into the system.
Shameless plug for my own project (https://grocerytracker.ca/) since you're in Canada. Eventually I'd love for it to do what you're suggesting, but for now the closest thing you can do is create a basket for each store with the same items and then check each week to see which is the cheapest.
Have you looked at receipts? They’re narrow, only do one line per item, and every store prints something different for the same product. It usually includes a store specific sku, the price and some truncated text on that single line. Good luck figuring out exactly what someone purchased from a random receipt.
Awesome site. You've probably come across it, but just in case you haven't. In the UK we have trolley.co.uk (plus app) which is handy. The barcode scanner I use a lot when I want to check if the branded product is a good price in the shop i'm standing in or if i'm getting ripped off. They have all products (I assume because online grocery shopping is bigger here?). Personally, I'm looking to start online shopping (new dad so time poor), it'd be great if I could build a shopping list and a site tell me which online grocer to order from for the best value, with basket price breakdown for each.
Note: I searched "Protein bars", and it treated all protein bars equally. The 1st-20th cheapest had <15g of protein per bar. I had to scroll down to the 50th-60th to find protein bars with 20g of protein, which surprised me for being cheaper than Kirkland Signature's protein bars.
I like this idea a lot -- feels like there's a lot of room to grow here. Do you have any sort of historical price tracking/alerting?
And/or also curious if there is a way to enter in a list of items I want and for it to calculate which store - in aggregate - is the cheapest.
For instance, people often tell me Costco is much cheaper than alternatives, and for me to compare I have to compile my shopping cart in multiple stores to compare.
> For instance, people often tell me Costco is much cheaper than alternatives, and for me to compare I have to compile my shopping cart in multiple stores to compare.
A few years ago, I was very diligently tracking _all_ my family's grocery purchases. I kept every receipt, entered it into a spreadsheet, added categories (eg, dairy, meat), and calculated a normalized cost per unit (eg, $/gallon for milk, $/dozen eggs).
I learned a lot from that, and I think I saved our family a decent amount of money, but man it was a lot of work.
Glad you guys mentioned Costco -- I happen to have written a blog post on exactly that: https://popgot.com/blog/retailer-comparison Surprisingly, Costco does not win most of the time, and especially if you are not brand loyal. Costco has famously low-margins, but it turns out that when you sort by price-per-unit they're ok, but not great.
@mynameisash I'm curious what you learned... maybe I can help more people learn that using Popgot data.
One thing to call out is that costco.com and in-person have different offerings (& prices) -- but you probably know that already.
I just dusted off my spreadsheet, and it's not as complete as I'd like it to be. I didn't normalize everything but did have many of the staples like milk and eggs normalized; some products had multiple units (eg, "bananas - each" vs "bananas - pound"); and a lot of my comparisons were done based on the store (eg, I was often comparing "Potatoes - 20#" at Costco but "Potatoes - 5#" at Target over time).
Anyway, Costco didn't always win, but in my experience, they frequently did -- $5 peanut butter @ Costco vs $7.74 @ Target based on whatever size and brand I got, which is interesting because Costco doesn't have "generic" PB, whereas Target has much cheaper Market Pantry, and I tried to opt for that.
My family’s favorite experience has been that Costco usually doesn’t have the cheapest option but it has a good value option.
Our main example is something like pasta. Our local grocery stores all carry their own brand of dirt cheap pasta but it’s not as good as the more expensive pasta at Costco. Comparable pasta at the local grocer would be more expensive.
For items that are carried at both stores, Costco is usually no cheaper than the regular retail price and rarely much more expensive.
I run tech for a reverse logistics business buying overstock from Costco/Target/Walmart and we’re building a similar system for recognizing and pricing incoming inventory. I sent an email a few days ago to see if you might be open to chatting.
It would be great to compare notes or explore ways to collaborate. Totally understand if things are busy!
There is a project linked to the Open Food Facts nonprofit of collecting prices of any products (food or other) with bar codes https://prices.openfoodfacts.org/about. They have a system for automatic price detection from labels and working on one from receipts.
I like that you have the ability to exclude on some dimension (eg, I don't use Amazon.com). Do you have or are you considering adding more retailers beyond the four you mentioned? For example, I buy a lot of unroasted coffee from sweetmarias.com, and excluding Amazon from Popgot results eliminates all but one listing (from Walmart).
Ah, hell yeah! My buddy on this project has been itching to add sweetmarias.com ... he just needed this as an excuse.
So yeah, we'll add it. If you shoot me an email (or post it here?) to chris @ <our site>.com I'll send you a link when it's done. Should take a day or two.
God tier filtering. Do you mind sharing how you integrated AI into the filter system? Your "flagging peanut butter" example also makes me wonder if the LLM is tagging the product with a large number of attributes on each run so it's not prohibitively expensive.
On top of that, it uses a lightweight AI model to read product descriptions and filter based on things like ingredients (e.g., flagging peanut butter with BPA by checking every photograph of the plastic or avoiding palm oil by reading the nutrition facts) or brand lists (e.g., only showing WSAVA-compliant dog foods). Still reviewing results manually to catch bad extractions.
Started this to replace a spreadsheet I was keeping for bulk purchases. Slowly adding more automation like alerting on price drops or restocking when under a threshold.