You're standing in the grocery store aisle, staring at two granola bars. Both look healthy. Both have long ingredient lists. One of them could send you to the ER. The other is perfectly safe.
Before OxalateGuard, your options were: memorize every high-oxalate ingredient, spend 20 minutes Googling each one, or just guess and hope for the best. None of those are great strategies when kidney stones are on the line.
Now you scan the barcode. Five seconds later, you know.
What Happens When You Scan
Step 1: Product Identification
When you scan a barcode, we query the OpenFoodFacts database — the world's largest open-source food database with over 3 million products. Within milliseconds, we retrieve the product name, brand, and full ingredient list.
Step 2: Ingredient Parsing
This is where it gets interesting. Product ingredient lists aren't simple comma-separated lists — they're nested, hierarchical documents with parenthetical sub-ingredients, allergen formatting, and percentage declarations.
This is where it gets interesting. Product ingredient lists aren't simple comma-separated lists
Consider this real ingredient list:
"WHOLE GRAIN ROLLED OATS, SUGAR, CANOLA OIL, RICE FLOUR, HONEY, SALT, BROWN SUGAR SYRUP, SOY LECITHIN, BAKING SODA, NATURAL FLAVOR. VITAMINS AND MINERALS: CALCIUM CARBONATE..."
Our parser handles the hierarchy: it knows that "CALCIUM CARBONATE" is a vitamin/mineral addition, not a primary ingredient. It weights ingredients by their likely proportion using FDA labeling rules (ingredients are listed in descending order by weight).
Step 3: Fuzzy Matching Against Our Database
Each parsed ingredient gets matched against our database of 2,400+ foods with known oxalate values. This isn't a simple text lookup — we use fuzzy matching to handle:
- Naming variations: "rolled oats" matches "oatmeal," "canola oil" matches "rapeseed oil"
- Processed forms: "soy lecithin" maps to soy-derived oxalate data
- Compound ingredients: "brown sugar syrup" breaks down into its component parts
Step 4: Weighted Oxalate Estimation
Using the ingredient order (first = most prevalent) and our oxalate values, we calculate an estimated total oxalate per serving. Primary ingredients get heavier weight than trace ingredients near the bottom of the list.
The result: a per-serving estimate with matched ingredients highlighted by risk level (green/amber/red).
What You See: The Scan Result
Your scan result shows:
- Overall risk level with color coding (Low/Moderate/High/Very High)
- Estimated oxalate per serving in mg
- Matched ingredients with individual risk levels
- Unmatched ingredients so you know what we couldn't verify
- Data source — whether the result came from OpenFoodFacts, community contributions, or both
The Community Multiplier: Scout Mode
Here's where OxalateGuard gets really powerful.
When OpenFoodFacts doesn't have a product's ingredient list, the scan returns "Unknown." But instead of stopping there, we ask: "Can you help?"
Through Scout Mode, any user can:
- Photograph the ingredient label on the package
- Review the OCR-extracted text (our system reads the photo automatically)
- Submit it — and the ingredient data becomes available to everyone
Every contribution goes through quality control. Non-restricted users' data goes live immediately and is submitted to OpenFoodFacts, expanding the global database. Admin review catches quality issues.
The Impact Is Real
When someone contributes ingredient data for a product, every future user who scans that barcode gets instant results instead of "Unknown." We track this impact — contributors can see exactly how many people their data has helped.
contributors can see exactly how many people their data has helped.
Some contributors have helped hundreds of other kidney stone formers. Their 30-second photo saves someone else from standing in a grocery aisle, anxious and unsure.
Why Not Just Read the Label?
Fair question. Here's why scanning is better:
1. Ingredient Lists Don't Tell You Oxalate Levels
A label says "contains spinach powder." It doesn't tell you that spinach is the #1 highest-oxalate food at 750+ mg per 100g. Without a reference database, ingredient lists are just words.
2. Relative Proportion Matters
"Almonds" listed 8th out of 15 ingredients contributes much less oxalate than "Almonds" listed 2nd out of 5. Our weighted calculation accounts for position and hierarchy.
3. Hidden High-Oxalate Ingredients
Cocoa, soy, wheat bran, and beet powder appear in products where you wouldn't expect them — protein bars, "green" juice blends, baked goods, and instant soups. A scan catches them all.
4. It Takes 5 Seconds vs. 5 Minutes
Even if you could mentally calculate oxalate from an ingredient list (you can't — nobody can), scanning is instant. In a grocery run with 30 products, that's the difference between confidence and chaos.
Even if you could mentally calculate oxalate from an ingredient list (you can't — nobody can), scanning is instant.
Getting Started
The barcode scanner is available from the moment you sign up. Free users get 5 scans per day and 20 per week. Premium users get unlimited scans plus instant ingredient analysis.
Next time you're at the store, scan before you buy. Your kidneys will thank you.