Ask HN: Are there any apps to track grocery prices in local stores?
19 cantrobot 10 4/30/2025, 1:05:54 AM
With tariffs kicking in and imports slowing, I want to track the local impact at my grocery stores. Does anyone have any suggestions? Would scraping websites of local grocers be sufficient? Any prior art?
Autoscraping the price tags, as the sibling suggested, would be nice. However, in real retail the codes on the tags are regularly as small as possible and sometimes do not even correspond with the one on the product (don't know how this works). Means you need to scan them really close, individually. You also can't rely on placement for augmenting missing/trimmed textual data on tags with identifying the actual item on the shelf as in many places it's consistently messed up (as if on purpose).
You could probably solve some of the data integrity problems with some data science.
Tools are better now than they were back then so perhaps you could vibe code this in a couple of hours?
I did some research towards this end and found some existing tools that could be useful:
- https://github.com/Forceu/barcodebuddy/ (Barcode system for Grocy)
- https://world.openfoodfacts.org/ (Open Food Facts is a food products database made by everyone, for everyone. You can use it to make better food choices, and as it is open data, anyone can re-use it for any purpose.)
We tend to think that our only power is at the voting both and there it often feels negligible. I believe that we actually hold a lot of economic power through our consumption choices, especially those of us in first world economies or with higher income. Not only could this be more influential that casting a vote every four or five years, but it actually gives you the opportunity to express a much more nuanced view rather than picking one of two (or a handful of) politicians who represent a portfolio of policies that might not be that different from each other (thus offering no real choice) or where you have to pick the lesser of two evils (thus implicitly endorsing policies you disagree with). Currently this economic power is largely squandered (except for extreme cases like boycotts), like misaligned magnetic dipoles in a ferromagnet cancelling each other out in the absence of an external magnetic field. If instead we could get all the individuals to align, consumers in the economic force case or atomic or molecular magnetic dipoles in the magnetism case, then the same collection of individuals is able to produce a powerful force field with real effects.
Incentivize the behavior... somehow... and hope for the best.
The computer in the store that drives the POS scanners then can print out the shelf label stickers and a poor sod goes and replaces the stickers on the shelves.
This is all a big secret of course, so asking a grocery store for their prices is going to get you nowhere.
You could try scraping the websites, but often the price for online shopping is different to what is in store.
Best bet would be to offer an incentive for people to scan their receipts into your app. I don't know what kind of incentive you could build to do that, maybe for every 5 receipts you could offer a coupon or something. Not much of an idea and a massive PITA, it would also only give prices on those things that people bought.
edit: also gets complicated for multi-item discounts or combination discounts
These are typically used to mass-import your competitors prices just by walking through the shop with a camera mounted on your shoulder. Or phone in a shirt pocket with the camera facing forward.
There’s a few white-label companies that offer these apps. Many of the barcode companies offer their own version of this app. They’re not usually available on the AppStores.
The reason for this is that each competitor requires slight customisation (font, price location relative to each barcode, etc) to get the best results.
How does it actually work?
Your grocery store would have significant data that it feeds its e-ink displays with. Capturing those updates could be fun if you’re looking for a project…